Skip to main content
TikTok Events APIReference

TikTok Events API reference

TikTok's Events API follows the same shape as the other server-side conversion APIs: an event name, a timestamp, an event ID for deduplication against the browser pixel, hashed user identifiers for matching, and event properties carrying value and currency. The failure modes are the same too — an event ID that isn't shared with the pixel, identifiers hashed before they were normalized, and a click identifier that was never captured on landing so the strongest matching signal is simply absent.

Free30 minutesNo obligation

TikTok Events API · what breaks

Where teams get this wrong — TikTok Events API

  1. 01

    No shared event ID with the pixel

    Both paths count independently, exactly as with Meta.

  2. 02

    Hashing identifiers without normalizing

    A valid hash of a malformed value matches nothing and errors nowhere.

  3. 03

    ttclid never captured

    TikTok's click identifier has to be captured on landing and persisted, or the strongest matching signal is missing.

TikTok Events API · the fix

What a correct implementation looks like — TikTok Events API

  • A shared event ID on both paths

    The order ID works, as everywhere else.

  • Identifiers normalized then hashed

    Lowercase, trimmed, phone in E.164.

  • ttclid captured on landing and forwarded

    Persisted like any other click identifier.

  • value and currency on monetary events

    From the order record.

TikTok Events API · architecture

How the payload is structured — TikTok Events API

The structural elements common to every server-side conversion API. TikTok publishes the current field names and they change — verify before building.

  1. 1

    Event name

    TikTok's standard event set. Use the standard names rather than custom ones where a standard fits.

  2. 2

    Event timestamp

    When the event happened, not when it was sent. A delayed send with a stale timestamp is correct.

  3. 3

    Event ID

    Shared with the browser pixel. This is what deduplicates, and it's the most common omission.

  4. 4

    User identifiers

    Hashed email, hashed phone, external ID, plus the click identifier where captured.

  5. 5

    Click identifier (ttclid)

    Captured on landing from the URL and forwarded. The strongest matching signal available.

  6. 6

    Event properties

    value, currency and content details for monetary events.

TikTok Events API · diagnose

Common mistakes and how to validate each — TikTok Events API

Ordered by how often we find them. Each one has a specific check rather than a general instruction to be careful.

  1. 01

    Pixel and API each generating their own event ID

    Capture both payloads from one conversion and compare.

  2. 02

    Values hashed with case or whitespace intact

    Read the raw value before hashing on a live conversion.

  3. 03

    ttclid missing

    Click one of your own TikTok ads and check whether the parameter is captured on landing.

  4. 04

    Sent timestamp instead of event timestamp

    Check what a delayed send reports. It should be the original event time.

  5. 05

    Custom event names where standard ones exist

    List your active events and compare against TikTok's standard set.

TikTok Events API · prove

How to prove your implementation is right — TikTok Events API

Against your own records and a live payload, not against a preview screen.

Source of truth

your backend order records, matched on order ID

  • Identical event ID confirmed on pixel and API for one real conversion.
  • ttclid confirmed captured on landing and present in the payload.
  • Identifiers confirmed normalized before hashing.
  • Conversion count within a few percent of backend orders for a closed week.
  • Checked on a live conversion, not in preview mode.
  • Reconciled over a fully closed window, matched per record.
  • Re-checked 30 days later.

TikTok Events API · free audit

What we check in the free audit

  • Pixel and API each generating their own event ID
  • Values hashed with case or whitespace intact
  • ttclid missing
  • Sent timestamp instead of event timestamp
  • Custom event names where standard ones exist

Checked against

your backend order records, matched on order ID

Get my free conversion tracking audit

Free30 minutesNo obligation

TikTok Events API · when not to buy

What this reference deliberately leaves out — TikTok Events API

Stated openly, because a reference that's silent about its own gaps is the dangerous kind.

  • TikTok's exact current field names and standard event list are in their documentation and change more often than the other major platforms'. We've described the structure rather than reproducing a field table that would go stale.
  • TikTok's deduplication window isn't a figure we'll guess at. Keep send latency low and verify against your own records.
  • Advanced matching options beyond the core identifier set are omitted.
  • Vendor documentation is the authority, not this page. Where the two disagree, the vendor is right and we'd like to know so we can correct it.
  • Parameter names and behaviour change. Anything here is accurate as we last verified it; verify against the current documentation before you rely on it for a build.

TikTok Events API · what we deliver

The checklist — TikTok Events API

  • Event ID shared between pixel and Events API

    Byte-identical on one real conversion.

  • User identifiers normalized before hashing

    The most common matching failure on every platform.

  • ttclid captured on landing

    And persisted through your forms.

  • value and currency present

    On every monetary event.

  • Event names matching TikTok's standard set

    Verify against current documentation.

Pricing

Pick the package that fits your ad spend

Browser-side starter

$400One-time fee · lifetime ownership

Repairs and verifies your existing browser-side setup against this reference, on a live conversion.

  • Implementation checked against the spec
  • Verified on a live conversion
  • Reconciled against your own records
  • Written handover
Have mine checked

1st-party server-side

Recommended

$800One-time fee · most popular

Money events sent from your own records through a first-party container on your subdomain, built to this specification.

  • First-party server container on your own subdomain
  • Events from your records, not the browser
  • Deduplicated on a shared event ID at every destination
  • First-party cookies beyond Safari's 7-day cap
  • 95%+ accuracy and 8+ Meta EMQ, guaranteed in writing
Have it built properly

Full 1st-party stack

$1,800One-time fee · lifetime ownership

Every paid channel server-side plus the offline loop, documented to this standard.

  • Everything in 1st-party server-side
  • Pinterest, Snapchat, Reddit and LinkedIn CAPI
  • CRM and offline conversion loop
  • Refunds and cancellations corrected wherever each platform allows it
  • Monitoring so the next break surfaces in days
Get the full stack

FAQ

TikTok Events API questions, answered

The principle is the same: a shared event ID between the pixel and the server events. Verify the exact behaviour in TikTok's current documentation before building.

Free · 30 min

Get TikTok server-side events built correctly

Free30 minutesNo obligation