What ttclid does
When someone taps your TikTok ad and lands on your page, TikTok adds ttclid to the URL. That value is TikTok's handle on the specific click. When your conversion later fires — a signup, lead, or sale — sending ttclid back to TikTok lets it match the conversion to the ad click, even when browser cookies have been limited or stripped.
ttclid is used across TikTok's measurement stack: attribution, audience building, delivery optimization, and reporting. It rides alongside the TikTok Pixel (browser-side) and the Events API (server-side); the server path is what keeps match rates healthy as browser signals decay.
The "7 days" myth — what the attribution window really is
You'll see a lot of guides claim ttclid "lasts 7 days." TikTok's own documentation doesn't say that. It states that each Click ID is unique and follows the click-through (CTA) attribution window you configure in Attribution Manager — so the effective window is whatever your account is set to, not a fixed number TikTok bakes into the parameter.
Takeaway: don't hard-code "7 days." Check your Attribution Manager settings and store ttclid with a lifetime that matches your configured window.
Preserving ttclid through your funnel
- On landing. Read
ttclidfrom the URL query string and store it first-party (cookie or localStorage). Tag managers can automate this. - Through the flow. If traffic passes through a bridge page or a redirect, make sure
ttclidsurvives — some affiliate-network redirects strip unknown parameters, which silently breaks matching. - At conversion. Include
ttclidin the payload you send to the TikTok Events API. Without it, TikTok falls back to weaker signals (hashed email, IP) and your reported conversions match at a lower rate.
Common ttclid failure modes
- Stripped by a redirect. The single most common cause of "TikTok says zero conversions." Capture
ttclidbefore any redirect and forward it deliberately. - Stored too short. If your storage TTL is shorter than your attribution window, late conversions lose the click ID. Match the TTL to Attribution Manager.
- Only firing the Pixel. Browser-only tracking leaks events to ad blockers and privacy browsers. Pair the Pixel with the Events API and pass
ttclidserver-side.
For how ttclid sits in the wider click-ID landscape, see the click ID explainer; for the full capture-and-forward flow, the tracking-setup playbook.