ananas.team
§ 07·ARTICLE
The ananas.team crew··

TikTok Events API via Server-side GTM: Server-side Tracking for E-commerce

Plenty of people still underrate TikTok as a channel, and they shouldn't — for e-commerce it delivers cheap traffic, provided you feed the algorithm the right data. And feeding it right means server-side tracking, not a bare browser pixel that gets cut by blockers and by iOS.

The logic is the same as with Meta CAPI: you duplicate events from the server, recover what was lost, and raise match quality. TikTok is simply a bit less popular, so hands-on guides with actual code are hard to come by.

Why send events server-side at all

The browser pixel loses events. Blockers, ITP, iOS restrictions — all of it eats part of your conversions before they ever reach TikTok. The algorithm gets less data and optimizes worse. Server-side delivery goes around the browser and brings back what was being lost.

Architecture

Client → your server-side GTM container → TikTok Events API. The server container is usually deployed on Stape, pointed at your own subdomain, and events flow through it straight into TikTok, bypassing the browser's whims.

The subdomain is not there for looks — events in a first-party context live longer and get stripped less often. Run them through a third-party domain and you give up part of the advantage.

Event mapping

For the catalog and dynamic ads, content_id, value and currency are mandatory. Plus event_id for deduplication. Skip content_id and you won't get dynamic product remarketing. Skip value and you can't optimize for revenue, only for the fact of a purchase.

This is the part where people get lazy and then wonder why DPA isn't running. The catalog demands precise mapping; a rough job simply won't work.

Deduplication — event_id again

If an event fires both from the browser pixel and from the server API, you need a single event_id so TikTok doesn't count the purchase twice. The same principle as in Meta. Generate one ID and pass it into both channels.

TikTok differs a little from Facebook in the implementation details, but the idea is identical: one event, one ID, in both sources.

Verification

Test event code in TikTok Events Manager. Fire a test event and check whether it arrives with the right parameters. If the parameters are empty or the event doesn't show up, the mapping has broken somewhere in the server container.

The take: TikTok without server-side tracking is TikTok at half power. Their algorithm learns aggressively from data, and the cleaner and fuller you feed it, the cheaper the conversions it gives back. Most advertisers run on a bare pixel and complain about “expensive TikTok.” It is expensive because it is blind.

§ 08·RELATED