git-royal

What TikTok's Events API actually does

Last updated: July 27, 2026

The music-marketing internet has written Meta's Conversions API to death and has written almost nothing about TikTok's equivalent. That is odd, because TikTok is where a lot of artists are actually discovered — and because TikTok's rules are stricter in the one place it matters most to a small artist.

The short version

The TikTok pixel runs in someone else's browser. The Events API runs on a server you control. TikTok describes it as a server-to-server interface for sharing website, app and offline actions directly with TikTok.

The usual pitch is that it recovers conversions ad blockers hide. True, and incomplete. The real change is authorship: a server event is emitted by your own code, at a moment you define, from a machine you own. A pixel event is a request you hope a browser makes on your behalf. Not the same kind of fact.

This page is about what the events do once they arrive. For the click-path — the setup guide covers that.

Why server-side matters more on TikTok than on Meta

Every platform loses browser events. What differs is the consequence, and on TikTok the consequence has a number attached. TikTok's About Custom Audiences page states that a Custom Audience needs 1,000 total matched users before you can use it in an ad group, and that only the matched ones count. Meta publishes no minimum at all — see how small is too small.

So the failure modes diverge. On Meta, a thin audience is a bad audience: expensive, repetitive, slow to learn. On TikTok, a thin audience is not an audience. It sits in your assets list and will not attach to an ad group. Every event a browser silently drops is a step away from the only threshold that decides whether you have a retargeting campaign at all. That is a stronger argument for server-side than the one usually made for Meta.

How it differs from Meta's Conversions API

The concepts rhyme. The implementations do not, and the differences produce silent, plausible-looking wrong numbers rather than errors.

Collision handling is reversed

Both platforms match a duplicate on an event ID plus the event name, and both use a 48-hour window. Then they diverge. Meta's server-event reference says that when a server and a browser event arrive within about five minutes of each other, Meta favours the browser event. TikTok's deduplication page says it keeps and enriches the first event received, and describes the pixel-to-API merge as applying to matching events arriving after five minutes and within 48 hours.

Same window, opposite tie-break. A mental model built on Meta does not transfer.

Meta enforces event freshness; TikTok's limit is unverified

Meta is explicit: event_time may be up to seven days old, and if any event in a request exceeds that, Meta rejects the entire request and processes none of it. We could not verify TikTok's equivalent — its developer portal at business-api.tiktok.com is a JavaScript application that returns nothing to an automated request. If you send backdated events to TikTok, treat the limit as unknown and confirm it in the developer docs yourself.

The identifiers are TikTok's own

Nothing carries across. TikTok's match-key documentation lists its own click ID, hashed email and phone, an external ID, IP address and user agent, and the first-party ttp cookie. One detail catches people: IP address and user agent are sent automatically by the pixel but require manual configuration on the Events API. A server integration nobody configured for those is quietly matching worse than the pixel it was meant to rescue.

What TikTok's optimiser does with the events

TikTok states the purpose plainly: standard events exist for reporting, optimising conversions, and building audiences. Two structural details follow, and neither has a Meta equivalent worth assuming.

Events are tied to objectives. TikTok's standard events table gives every event a supported web objective — Sales, Lead, or both. Purchase is Sales. Complete Registration is Lead. Subscribe and View Content are both. Pixel or Events API setup is also a stated prerequisite for the Web Conversions objective. Choosing an event is partly choosing which objective you can run.

The learning bar is published. TikTok's Learning Phase page says volatility typically starts to decline after about 25 campaign results or seven days, and lists what re-triggers it: new ad groups, large budget changes, bid changes, targeting edits. Twenty-five results is a real bar at indie budgets, and it is why event volume matters more than event sophistication. Meta publishes its own figure for the equivalent; we are not quoting it, because Meta's business help centre blocks automated fetching and we did not re-verify it the day this was written.

Two naming notes, since stale guides get them wrong. The April 2026 event list contains Purchase, not CompletePayment. And it contains Subscribe, which TikTok defines as covering follows and content subscriptions as well as paid ones — the closest thing to a native fan-signal event either platform offers. TikTok's own description of View Content recommends it for “product comparison, announcement, or release pages”. Release pages. Their word, not ours.

Building a Website Traffic audience from the events

A Website Traffic audience is TikTok's equivalent of a website custom audience: people who fired a chosen event, within a chosen period, on a chosen pixel. Broaden with OR rules, narrow with AND rules, exclude. An account holds up to 400 custom audiences. Three constraints matter before you build one, and one is a hole in TikTok's own docs.

The 1,000 floor is a floor

One thousand matched users — not events, not sessions. Matching is what the Events API match keys are for, which is why an integration missing IP and user agent costs you audience size rather than just reporting accuracy.

The retention window is undocumented

TikTok's Website Traffic article tells you to select a time period and then says only that “we provide various lookback windows”. It does not list them. That is inconsistent with TikTok's own behaviour elsewhere: for engagement audiences it publishes the windows in a table — 7, 14 and 30 days for organic video and LIVE, and 7, 14, 30, 60, 90 and 180 days for engagement with your ads. So TikTok can document this. For website traffic it has not. The values are in the dropdown in your account and nowhere in the docs, and we are not going to write down numbers we read off a screenshot.

Auto-refresh is a one-way door

TikTok custom audiences have an auto-refresh setting, on by default, which updates the audience daily against a rolling window. It cannot be changed after creation — switching it means building a new audience. And TikTok notes it may not be available for audiences under 1,000 people: the same threshold again, arriving from a second direction.

Lookalikes, and how TikTok's compare

TikTok's lookalike audiences offer three sizes — Narrow, Balanced, Broad — rather than Meta's percentage scale, and the minimum source-audience size for creation is stated: 1,000. TikTok is explicit that the resulting size depends on the market you target and the scale you pick.

The warning is the familiar one. A lookalike is a model of your source audience projected onto strangers — a cold audience with a good starting guess, not a bigger warm one — and it inherits whatever is wrong with the seed. Contaminate the source and you do not get a slightly worse audience; you get a large, confident, precisely wrong one. See bot traffic in retargeting audiences.

The TikTok-specific difference is that the 1,000 gate applies twice: once to use a custom audience, once to seed a lookalike from it.

Why a musician might weight TikTok differently

Not because TikTok is bigger or cheaper. Because the behaviour it captures is different in kind.

  • The audio is the creative. TikTok plays with sound on by default. On most feeds a video's first job is to survive being muted; here your song does the work rather than fighting the format. You will find a widely quoted sound-off percentage elsewhere in this vertical — it traces to a claim about a different platform from around 2016, and we are not repeating it.
  • Discovery is not social-graph-shaped. Reach does not depend on who already follows you, so a warm audience here is more likely to be people who found the music than people who already knew you.
  • Engagement retargeting is unusually strong for music. You can build audiences from views of and engagement with your organic videos and LIVE streams, at documented lookback windows — though TikTok notes an engagement audience can take 24 to 48 hours to generate. If your reach is organic and your spend is small, that is often a better seed than site traffic.
  • Creative expectations are stricter. A polished asset that reads as an advert is a liability in a feed built on unpolished video. This is the one place we would rather say nothing than quote somebody's unsourced performance multiple.

None of that makes TikTok the right primary channel for every artist. It makes the case that if TikTok is where your discovery happens, the 1,000-match gate means retargeting it properly means server-side.

Deduplication if you run both

TikTok recommends running the Events API alongside the pixel rather than instead of it. That means duplicate copies of the same conversion, and deduplication is not automatic — TikTok states you must share event_id through both channels for it to happen at all. Its rules:

  • Matching is on identical event name and identical event ID. Change either and TikTok sees two conversions.
  • Pixel to pixel and API to API duplicates collapse within 48 hours of the first event. Pixel to API duplicates merge when the second copy arrives after five minutes and within 48 hours.
  • The first event received is the one kept, enriched with what the duplicate carried.
  • Deduplication is not required if the two channels carry different events. TikTok's own example: AddToCart by pixel, Purchase by Events API.

That last point is the practical one. If your event IDs are unreliable, sending distinct events down each channel is safer than sending the same event down both and hoping.

How we checked this — and where TikTok's docs run out

Every figure above was read from TikTok's or Meta's own documentation on 27 July 2026. TikTok's Business Help Center carries a “Last updated” date on each article, so these citations have revision dates rather than the accessed dates Meta's help pages force on us: Custom Audiences November 2025, standard events April 2026, deduplication May 2025, lookalikes June 2025, website traffic July 2025. Where it runs out, worst first:

  • The developer portal is unreadable to anything but a browser. business-api.tiktok.com returns “You need to enable JavaScript to run this app” to an automated request. Meta's render server-side and can be read, diffed and cited. That asymmetry is the biggest single reason there is more good third-party writing about Meta's Conversions API than TikTok's Events API.
  • Website-traffic lookback windows are not published, while engagement-audience windows are. Same help centre, same feature family.
  • No event-freshness limit we could verify, where Meta's seven-day rule is stated plainly along with its failure mode.
  • Nothing about invalid traffic reaching audiences. TikTok publishes no guarantee about what gets filtered out of a custom audience. Neither does Meta. Assume neither is protecting your seed for you.

None of that makes TikTok a worse channel. It makes it one where more of the knowledge lives in people's accounts than in public writing — which is why nobody in music has written this page, and why the parts we could not verify are labelled rather than guessed.

Common questions

What is the TikTok Events API?

It is TikTok's server-to-server interface for conversion events — the same actions the browser pixel reports, sent instead from a server you control. TikTok describes it as a secure server-to-server connection for sharing web, app and offline events. The important difference from the pixel is not speed or accuracy in the abstract: it is that a server event is emitted by your own code at a moment you define, so nothing in the visitor's browser can decline to send it.

Is the TikTok Events API the same as Meta's Conversions API?

The idea is the same and the implementation is not. Both deduplicate on an event ID plus an event name, and both use a 48-hour matching window. But they resolve a collision differently: Meta's documentation says that when a browser and server event arrive within about five minutes of each other, Meta favours the browser event, while TikTok says it keeps and enriches the first event it received. Meta also refuses any request containing an event_time more than seven days old. Assume nothing carries over.

What is the minimum size for a TikTok custom audience?

TikTok publishes one, which is worth noting because Meta does not. TikTok's help centre states that a Custom Audience needs 1,000 total matched users before it can be used in an ad group, and that only matched users count toward that figure. The same 1,000 applies as the minimum source-audience size for building a lookalike. TikTok also caps an ad account at 400 custom audiences.

How long does a TikTok website custom audience keep people?

TikTok does not publish the answer. Its Website Traffic help article says only that you select a time period and that "we provide various lookback windows", without listing them. That is inconsistent within TikTok's own documentation: for engagement audiences it publishes the windows explicitly — 7, 14 and 30 days for organic video, extending to 60, 90 and 180 days for engagement with your ads. For website traffic the values are visible in Ads Manager and nowhere in the docs, so check the dropdown in your own account.

Will running the pixel and the Events API double-count my conversions?

Not if both copies carry the same event ID and the same event name. TikTok requires event_id on both sides for deduplication to happen at all, and describes three overlap cases — pixel-to-pixel, API-to-API and pixel-to-API — all matched within 48 hours of the first event. If you send genuinely different events down each channel, deduplication is not required. If you send the same event both ways without a shared ID, TikTok has nothing to match on and you will count it twice.

Should a musician bother with TikTok server-side tracking, or just use Meta?

It depends on where your discovery actually happens, and for a lot of artists that is now TikTok. The relevant asymmetry is that TikTok's warm audiences are gated behind a published 1,000-match floor, so weak signal does not just make your audience worse — it can leave you with no usable audience at all. On Meta a small audience is expensive. On TikTok a small audience is unusable. That makes recovering blocked events more valuable on TikTok, not less.

Where this fits

This is part of our guide to retargeting for musicians. To actually connect the Events API — Pixel Code, access token, where to paste them — use the TikTok Events API setup guide. If you have not linked an ad account yet, start with connecting TikTok retargeting. And if you want the general case rather than the TikTok one, server-side tracking explains why any of this is worth doing.