End-to-end analytics and B2B E-Commerce

The article describes the technology created for the webstore of medical equipment and furniture. End-to-end analytics enabled tracking of offline purchases, increased ad effectiveness, and removed barriers to further growth. The concept of this solution will be outlined below.

What’s the problem?

The store sells massage tables, cosmetology equipment, tattoo chairs and much more. The cost of goods varies from $ 100 to $ 5000 dollars.

If the customer has chosen complex equipment for $ 5000, then he very often doesn’t pay immediately on the site. The customer needs detailed advice on the characteristics of the equipment, he wants to discuss the delivery of bulky goods, he wants to receive an invoice, etc.

Moreover, it is B2B. The medical clinic can order 10 massage tables for $ 15,000 and ask for an invoice.

In short, 50% of purchases are NOT made on the site. And these are the biggest purchases! Customers leave the site for a phone call.

And we lose tracking of such orders in Google Analytics and other analytics systems.

We don’t have offline order tracking. Why is this a problem?

Ad campaigns should be optimized for conversion. Advertising system algorithms collect conversion statistics and build a portrait of the ideal customer for each product. This allows the advertising system to better match potential customers for your product. Conversion tracking can sometimes increase the effectiveness of advertising campaigns many times over!

Significant loss of conversion tracking reduces ad performance and ROAS (return-on-ad-spend). The business is becoming less competitive and this hinders its growth.

How to ensure delivery of information about offline orders to advertising systems?

This is the main and only task that the end-to-end analytics system must solve. But this system needs to be built.

What we exactly need to create an end-to-end analytics system:

  • e-commerce site,
  • dynamic call tracking system,
  • CRM,
  • API for analytics & advertising systems,
  • the program code to integrate all these components.

There will not be a step-by-step technical guide for building a complete solution below. We will try to explain the basic scheme for solving the problem. Using this scheme, you can, if necessary, assign a task to the developers.

The essence of the solution is to drag the initial information about the last advertising click along the chain:

  • advertising click
  • visit to the site
  • fork: order on the website or a phone call
  • a phone call to the spoofed number
  • call accounting in the call tracking system
  • call transfer to CRM
  • order processing in CRM
  • order transfer to analytics systems
  • conversion transfer to advertising systems

And yet, further along the steps 😁.

Step 1. Marking up ad clicks

Our project uses three main advertising systems — Google Ads, Facebook Ads, Yandex Direct.

Each visit to the site from ad should be marked as follows:

Google Ads:
<landing page URL>?gclid=XXXXX&utm_source=google&utm_medium=cpc&utm_campaign=XXXXX

Facebook Ads:
<landing page URL>?fbclid=XXXXX&utm_source=fbinsta&utm_medium=cpc&utm_campaign=XXXXX

Yandex Direct:
<landing page URL>?yclid=XXXXX&utm_source=yandex&utm_medium=cpc&utm_campaign=XXXXX

These four parameters of the click URL will need to be dragged through all integrations in order to correctly transfer information about the offline order back to the advertising systems.

Step 2. Dynamic call tracking

Our project uses the CoMagic system as a dynamic call tracking solution.

The system allocates a phone number from its pool for each advertising campaign. When a user navigates to the site from an ad, the system replaces the phone number displayed on the site with a spoofed number. This allows the system to associate the customer’s phone call with their visit to the site from the ad.

Step 3. Order processing in CRM

Our project uses the RetailCRM system to process all orders. A deal in the CRM system is created after each incoming call.

Calls from substitute numbers are transmitted to CRM from the call tracking system with all click parameters. To implement this integration, it was required to write program code.

If after a call to a substitute number an order appears, then CRM must transfer information about this order further to the analytics systems.

Step 4. Exporting an offline order to analytics systems

Transferring information about offline orders from CRM to analytics systems required writing program code. This is the hardest part of the integration.

CRM-analytics integration:

  • the program code for exporting an offline order to Google Analytics via Google Measurement Protocol
  • the program code for exporting an offline order to Facebook via Facebook Marketing API
  • the program code for exporting an offline order to Yandex Metrika via Yandex Metrika API

Step 5. Transferring offline conversions to advertising systems

Each of the analytics systems listed above automatically transfers received offline conversions to its «native» advertising system.

If the ad system received an offline conversion with the correct parameters, then it will be able to correctly associate the conversion with an ad click. Our ad campaign will be able to use conversion for optimization.


  1. End-to-end analytics provided major ad platforms with offline order information to better optimize campaigns. Today, we see 100% of offline purchases in analytics, 75% of them are tied to advertising campaigns.
  2. In addition, we can see in analytics all purchases with attribution to the channel / campaign. This will allow us to correctly assess the effectiveness of the channel / campaign and properly manage advertising budgets.
multi channel google analytics

After implementing end-to-end analytics in the project described above, the store’s revenue increased by 25% over the next three months.

Добавить комментарий