Blogger advertising and offline conversions are connected through a visitor identifier and confirmed action uploads; without linkage to the visit, measurement will be incomplete.
Blogger advertising and offline conversions
When a subscriber clicks a link from a blogger's Stories or post to a brand's website, the browser registers the visit and assigns the visitor a ClientID — a unique identifier in Yandex Metrica. If the person places an order immediately on the site, the chain closes automatically: the system sees the traffic source, items in the cart, and payment confirmation. But if the customer chooses pickup with cash payment at the delivery point or calls a manager three days later, the browser session has already ended, and the purchase remains outside web analytics.
For such scenarios, Yandex Metrica offers an offline conversions mechanism: the brand collects purchase data from its CRM or POS system, generates a CSV file with required fields, and uploads it to the counter interface. The system attempts to match each row to a visit using one of four identifiers: ClientID (browser-based), UserID (from the brand's database), Yclid (Yandex Direct click parameter), or PurchaseID (order number).
Conversion tracking chain: what happens at each stage
The process begins with identifier preparation. If a brand uses its own customer database (for example, a loyalty program), the UserID must be sent to Yandex.Metrica at the authorization stage on the website so the system can link the internal ID with the browser ClientID. Without this connection, the file with UserID from the CRM won't find the corresponding session, and the conversion will remain unattributed.
The next step is creating a goal of type "Target event" in the Yandex.Metrica interface. The event name is entered in the identifier field, and it then appears in the Target column of the CSV file — for example, order_confirmed or offline_purchase. This name is not sent automatically by the browser; it serves as a marker that allows Yandex.Metrica to recognize the conversion type in the uploaded data.
Yandex.Metrica attributes an offline conversion to a session only within 21 days before the file is uploaded; events older than this window are not counted in source attribution.
The CSV file must contain required fields: at least one visitor identifier, Target, DateTime (conversion time in Unix Time Stamp format in seconds, in the counter's time zone). The Price and Currency fields are optional but necessary if the brand wants to see revenue in reports; currency is specified by a three-letter ISO 4217 code (RUB, USD, EUR). If the code does not match the standard, Yandex.Metrica will zero out the amounts in that row.
After uploading a file through Settings → Data Upload → Offline Conversions Upload, the system begins processing. Data appears in reports within 3 hours. Key point: successful file upload does not guarantee that every row will be matched to a visit. The attribution status of each conversion is displayed in the Offline Conversions report, which shows the date, identifier, goal, revenue, visit attribution, and—if attribution failed—the reason for rejection.
Three common reasons why a conversion isn't attributed to the creator
First: the specified visitor identifier is not found in Yandex Metrica. This occurs when a CSV contains the customer's UserID from your CRM, but that person hasn't logged in to the website since their last visit, so the system hasn't yet linked the UserID to a ClientID. Another scenario is that the ClientID was entered with a typo or comes from a different counter.
Second: more than 21 day has passed between the last visit and the start of file processing. Metrica doesn't retain infinite history for matching purposes; the attribution window is fixed. If a customer arrived from a blogger's referral on 25 January and the brand uploaded the file with their offline purchase on 20 February, the event won't be linked to the visit, even if all identifiers are correct.
Third: the file contains a goal identifier that doesn't exist in the counter settings, or it's been entered with an error. The metric compares the Target field value with the goals actually created; a mismatch results in a binding failure.
How ETC sets up offline results measurement for influencer campaigns
When planning blogger advertising for clients with offline locations or long sales cycles, the agency builds in technical preparation before launching integrations. The first stage is auditing current analytics: we verify whether ClientID and UserID are being transmitted, whether goals are configured correctly, and whether there is access to data export from CRM or POS systems. If UserID isn't being used, we recommend implementing identifier transmission during authorization or checkout.
The second stage is creating a separate offline goal for the campaign. This makes it possible to distinguish purchases from blogs and the general conversion stream. In the identifier field, we set a unique event—for example, influencer_offline_sale—and communicate it to the client's team, which forms the CSV. This approach simplifies subsequent segmentation in reports and CPO calculation by channel.
The third stage is setting up regular data export and upload. If the client can automate CSV generation through CRM API, we recommend uploading files weekly to stay within the 21-day window and not lose conversions. If the export is manual, we create an upload schedule taking into account the average sales cycle: for goods with 3–5 days delivery—weekly, for services with longer decision-making—once every 10 days.
The fourth step is to verify the matching in the "Offline Conversions" report immediately after the first upload. Filter rows by matching status and analyze the reasons for rejection. If more than 20 % rows failed to match due to missing identifiers, adjust the UserID transmission settings or switch to Yclid for Yandex Direct campaigns. If the reason is exceeding the 21-day window, reconsider the upload frequency.
Marketer's Checklist: How to Set Up Tracking for Offline Purchases from Integrations
- Ensure that the Yandex Metrica counter is properly installed on all website pages, including checkout forms and user accounts.
- Verify that UserID is being transmitted during authorization or purchase completion; if not, arrange for developers to implement parameter transmission.
- Create a goal in Metrica of type "Event goal" with a unique identifier for offline conversions (for example, offline_order).
- Set up data export from your CRM or point-of-sale system in CSV format with mandatory fields: identifier (ClientID, UserID, Yclid or PurchaseID), Target, DateTime.
- Add Price and Currency fields to the CSV if you need to track revenue; use the three-letter currency code per ISO 4217.
- Upload a test file via "Settings → Data Upload → Offline Conversions Upload" and wait for processing (up to 3 hours).
- Open the "Offline Conversions" report, filter rows by attribution status, and review the reasons for unattributed events.
- Configure regular data uploads with a frequency that fits within the 21-day attribution window, taking into account your sales cycle.
- Check in the "Sources → Sources, summary" report that offline conversions are correctly attributed to channels; when using the "Last click" model, some visits may not be displayed.
Data Limitations and What Cannot Be Measured Using This Method
The offline conversion mechanism only works for customers who have visited the brand's website at least once and received an identifier. If a customer sees a blogger integration, remembers the store name, and visits an offline location directly a month later without accessing the website, it's impossible to connect that purchase to the campaign. Such conversions remain outside web analytics and require alternative evaluation methods—surveys, promo codes, or utm tags on offline materials.
The second limitation is the 21-day window. For categories with long decision-making cycles (real estate, automobiles, B2B services), a portion of transactions are completed outside this timeframe. The metric does not allow you to extend the attribution period; if a visit from the integration occurred in January and the purchase happened in March, attribution won't work even if the identifiers match.
The third limitation concerns attribution accuracy when using the "Last Click" model. If after a visit from a blogger integration a customer returns to the site through direct traffic or search, the offline conversion may be attributed to the last source rather than the influencer. For an accurate assessment of influencer contribution, ETC recommends analyzing data using the "Last Non-Direct Click" model or comparing the "Offline Conversions" report with the "Traffic Sources" report, filtering visits by campaign utm tags.
Frequently Asked Questions
Can I record an offline store purchase if the customer didn't visit the website?
No, Yandex Metrica's offline conversion mechanism requires that the customer visit the website at least once and receive an identifier (ClientID, UserID, or Yclid). Without a visit, the system cannot attribute the event to a traffic source. For such cases, use promo codes, unique SKUs, or surveys during checkout.
Why doesn't my uploaded offline conversion appear in the traffic sources report?
A conversion will appear in the traffic sources report only if it's successfully linked to a visit. You can check the link status in the "Offline conversions" report: if the "Link to visit" column shows a failure reason (identifier not found, 21 day limit exceeded, goal not found), the event won't be counted in channel attribution and won't affect performance metrics.
Which identifier should I use to track offline purchases from blogger advertising campaigns?
If your brand has user authentication on the website or a customer database in your CRM, UserID is optimal: it persists across devices and isn't lost when cookies are cleared. For campaigns without authentication, ClientID (Metrica's browser identifier) works, but it's tied to a specific browser. Yclid is used for traffic from Yandex Direct; it doesn't apply to organic blogger integrations.
In brief
- Offline conversions in Yandex Metrica are attributed to visits only within 21 days before the file upload; events outside this window are not counted in source attribution.
- The CSV file must contain at least one identifier (ClientID, UserID, Yclid, or PurchaseID), a goal identifier, and conversion time in Unix Time Stamp format; rows without these fields will not be processed.
- Successful data upload does not guarantee automatic attribution to a visit: each conversion status is verified in the "Offline conversions" report, which specifies the reason for rejection.
- Unattributed conversions do not appear in source reports and are not counted when optimizing campaigns in Direct; they cannot be considered the result of the creator's work.
- This method does not work for customers who did not visit the website: if a client saw the integration and went directly to an offline location, linking the purchase to the source through web analytics is impossible.
- With the "Last click" attribution model, an offline conversion may be credited not to the blogger's integration but to a later visit via search or direct traffic; to accurately assess the channel's contribution, use the "Last significant interaction" model and filter by the campaign's utm tags.
ETC builds measurement strategy for influencer integrations: we select tracking IDs, configure offline event transmission, and verify attribution in reports so you see each creator's true impact on sales.
CEO comment
Leonid Naumtsev CEO, ETC AGENCY