INOTrackfast, reliable, unapologetic

Track TikTok ads with inotrack

Evaluate video advertisements using connected clicks, costs and conversions. Start with consistent campaign names, a preserved ttclid and a verified return event.

Separate context from identifiers

A TikTok tracking link needs more than a readable campaign name. Stable ad group and advertisement identifiers distinguish similar videos and preserve context after someone renames a campaign. Create a source and flow, select an offer and document each field before publishing the link. Keep the creative separate from the placement so that poor placement results do not automatically become a verdict on a video. Review TikTok requirements for advertisements, destinations and data processing, together with applicable law. A working tracking link measures a journey; it does not establish that an advertisement meets platform requirements.

Use the TikTok link template

The inotrack source preset uses campaign=__CAMPAIGN_NAME__, adset=__AID_NAME__ and creative=__CID_NAME__. Preserve identifiers separately with sub1=__CAMPAIGN_ID__, sub2=__AID__ and sub3=__CID__. Use sub4=__PLACEMENT__ for the placement and ttclid=__CALLBACK_PARAM__ for the external click identifier. TikTok expands these source macros. The tracker macro {clickid} belongs to the next part of the journey and cannot replace them. Follow a test advertisement and inspect the recorded click. Literal placeholder text means expansion failed. Also check URL encoding for campaign names containing spaces, ampersands or other special characters.

Connect the conversion to its click

inotrack generates its own clickid and substitutes {clickid} in the offer URL. Send it in the advertiser parameter that will be returned with the incoming postback. The ttclid remains a TikTok identifier for the outgoing event; it does not replace the internal matching key. If a landing page sits between the tracker and offer, check its outgoing button separately. Produce a test conversion and confirm its click, flow and offer. Agree the status, value, currency and transaction mapping with the network. A successful HTTP response alone does not prove that the resulting financial event is correct.

Import TikTok costs automatically

TikTok cost import uses the Business API and requires an access_token and advertiser_id. The client fetches daily spend, impressions and clicks with campaign, ad group and advertisement details. Synchronization runs at startup and hourly, reading the previous day again when the day changes. Names matter here: the cost client stores campaign and ad group names, so align them with campaign and adset in the link. IDs in sub fields help analysis but do not repair mismatched names automatically. Check the integration currency and last successful import. Avoid manually entering the same imported spend, and keep API credentials out of advertisements.

Send events through TikTok Events API

The tiktok_events adapter sends web events through Events API. Configure pixel_code and access_token, map tracker goals to events and use test_event_code for verification. The implementation includes ttclid when available and external_id as a hash of the internal clickid. Sending the click User-Agent can be disabled. Configure the incoming network postback and outgoing TikTok event separately. Verify tracker receipt first, then inspect delivery to TikTok. An accepted delivery does not guarantee attribution: platform matching requirements still apply. Observe consent and data transfer requirements, and avoid adding personal information to arbitrary tracking parameters.

Read reports and check protection

Reconcile one campaign over a consistent period, then compare ad groups, creatives and placements. Inspect clicks, unique visits, conversions, costs and financial metrics while allowing for import delay. Bot filtering and antifraud checks support traffic quality investigation; review rejected requests in the blocking report separately from accepted clicks. Record protection changes instead of using current settings to explain older discrepancies. Configure offer caps and a fallback destination. Reaching an offer cap changes its availability in the flow; it does not imply that every TikTok advertisement stops automatically. Test the fallback before launch and check that it also meets platform requirements.

FAQ

Questions

Why are tracker conversions missing from TikTok attribution?

Check ttclid, the separate Events API connection, goal mapping and delivery response. The internal clickid cannot replace ttclid.

Can I rename campaigns after launch?

Yes, but align link labels with imported cost names. Preserve IDs in sub fields and record when the rename happened.

Read next

More in this section

Run inotrack on your own server

One command on a clean VPS, 10–15 minutes. Get your key right after you pay on the site, or a free one for 7 days.

Questions? Message us on Telegram: @SmokeJung.

Support