Skip to main content

How to Track TikTok Ads Conversions: TTCLID, Events API & Postbacks

Our write-up of a story first reported by Voluum Blog

How to Track TikTok Ads Conversions: TTCLID, Events API & Postbacks

Voluum Blog published a guide on tracking TikTok Ads conversions, covering the ttclid parameter, the Events API and postback setup for affiliate campaigns.

Keeping the click ID intact

TikTok tags every ad click with a ttclid parameter and uses it to decide which creative and audience get credit for a conversion. The affiliate has to carry that ttclid through the whole redirect chain — from the ad to the landing page, from the landing page to the offer, and back to TikTok in the postback. If a redirect drops the query string at any point, the conversion happens but TikTok never hears about it. A tracker needs to pick up ttclid from the incoming click URL and store it with the other click parameters (sub ID, GEO) until the conversion postback arrives.

Browser pixels only catch client-side events such as a page view or a purchase on the landing page. In affiliate traffic, the actual conversion often happens further down the funnel, on the offer or network side, where a browser pixel cannot reach. TikTok's Events API sends conversion events straight to TikTok's servers, server-to-server, bypassing the user's browser. It needs an access token and the ttclid of the click tied to the conversion. Because it does not rely on a JS script on the page, server-side tracking through the Events API holds up better against ad blockers and browser cookie restrictions.

Postbacks, deduplication and missing conversions

A postback is the notification a tracker sends to TikTok once a conversion is logged. The sequence: the user clicks the ad, the tracker stores the ttclid, the user reaches the offer and completes the target action, the offer or network sends a postback to the tracker, and the tracker calls the Events API with the matching ttclid. For this to work, TikTok needs the Events API configured with an access token, and the tracker needs its event types (registration, purchase) mapped correctly to what TikTok expects.

Running a browser pixel and server-side postbacks at the same time can send the same conversion to TikTok twice, through the pixel and through the API. That inflates the numbers, skews CPA, and lets TikTok's delivery optimization run on bad data. The fix is an event ID: assign the same event ID to the pixel call and the server call for one conversion, and TikTok will count it once even though it arrived from two sources.

Missing or undercounted conversions in TikTok Ads usually trace back to one of a few points in the chain: the ttclid lost in a redirect that dropped the query parameters, an Events API access token that expired or is tied to the wrong pixel, a postback pointed at the wrong URL or event type, a lag between click and conversion that exceeds TikTok's attribution window, or a conversion fired without a ttclid at all, for instance when an organic visit gets attributed to a campaign. Running a test click through the whole setup usually shows which step drops the parameter or event: the landing page, the tracker, or the Events API call.

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor