Open Tracked/Guides/Conversions API explained

Conversions API explained

A conversions API is the way your server tells an ad platform what happened. Every major platform has one, with the same basic shape.

5 min read · Updated October 26, 2026

In this guide
Key takeaways
  • A conversions API is an endpoint where your server sends events to an ad platform, in addition to or instead of a browser pixel.
  • Each platform has one (Meta Conversions API, TikTok Events API, Pinterest API for Conversions, Snapchat CAPI, and Google's offline and enhanced conversions).
  • There are three routes: platform integration, your own code and a server container.
Your serverCConversions APIMeta, Google, TikTokBBetter delivery

A pixel sits in the visitor's browser and reports what it sees. A conversions API sits on your server and reports what your system knows. The second is more reliable because it does not depend on the browser. This page explains what they do, what an event contains and the options for sending them. The Meta-specific version is in Meta Conversions API vs Pixel.

What every conversions API has in common

  • An endpoint you send HTTPS requests to.
  • An access token or key that proves the request is yours.
  • An event: a name, a time and parameters.
  • User data: identifiers the platform can match, mostly hashed.
  • A way to deduplicate against the browser pixel.
Ask AI

Ask Ari instead of digging through reports

Ari reads your tracking and ad data and answers in plain words.

The main APIs

PlatformNameDedupe keyMatches on
MetaConversions APIevent_id + event nameHashed e-mail and phone, fbp, fbc, IP, user agent
Google AdsEnhanced conversions and offline importstransaction_idHashed e-mail and phone, gclid
TikTokEvents APIevent_idHashed e-mail and phone, ttp, ttclid
PinterestAPI for Conversionsevent_idHashed e-mail, click ID
SnapchatConversions APIclient_dedup_idHashed e-mail and phone, click ID

What a request looks like

POST /v21.0/{DATASET_ID}/events
{
  "data": [{
    "event_name": "Purchase",
    "event_time": 1735689600,
    "event_id": "ord_10293",
    "action_source": "website",
    "event_source_url": "https://yourstore.com/thank-you",
    "user_data": { "em": ["<sha256>"], "ph": ["<sha256>"], "client_ip_address": "203.0.113.7", "client_user_agent": "...", "fbp": "fb.1....", "fbc": "fb.1...." },
    "custom_data": { "currency": "USD", "value": 59.9 }
  }]
}

That is the Meta format, shown as an example. Other platforms use the same ideas with different field names. The v21.0 in the path is the API version, which Meta updates regularly.

Set up in minutes

Connected in minutes

Add your domain, install the pixel, connect your ad platforms and watch the first events land.

Three ways to send events

01

Platform integration

Shopify, WooCommerce and others have built-in integrations. Quick, little control, often only one platform.

02

Your own code

Your backend calls each API. Full control, and you maintain it.

03

A server container

One container sends to every platform with ready tags and shared data. This is what Open Tracked hosts, with power-ups on every plan for matching data and cookies.

How to choose

Choose A platform integration if
  • you use one platform and a standard shop
  • you want the quickest set-up
Choose Your own code if
  • you have developers and unusual needs
Choose A server container if
  • you advertise on several platforms
  • you want one place for consent and data rules
  • you want stored data and cookies handled for you

Common mistakes

  • Skipping deduplication and double counting. See event deduplication.
  • Sending only e-mail and no cookies or IP. See event match quality.
  • Sending without consent.
  • Leaving a test event code in production.
  • Using an old API version that the platform retires.
0 of 5 done

What to do next

Pick the platform that gets most of your ad budget and set up its API first. Add a shared event ID, send hashed e-mail and phone from checkout, and compare the platform's purchases with your store for a week. Then repeat for the next platform. Doing one well teaches you the pattern for the rest, and a server container lets you reuse the same data for all of them. For the first steps in Tag Manager see how to set up the Facebook Conversions API and event deduplication.

Terms you will see

Endpoint
The web address your server sends events to.
Access token
A secret that proves the request comes from you.
Dataset
Meta's name for the place events are collected, once called a pixel.
Hashing
Turning an e-mail or phone number into a fixed code so the plain value is not sent.
Event time
When the action happened, as a Unix timestamp in seconds.
Action source
Where the event took place: website, app, phone call, store.

A short worked example

A visitor clicks a Meta ad on Monday, adds a product to the cart and buys on Wednesday from an iPhone. The pixel loses its cookie in Safari, so the browser event has no match. Your server sends the same purchase with the hashed e-mail the visitor typed at checkout, their IP address, user agent and the order number as the event ID. Meta matches the e-mail, recognises the ad click and counts the purchase once. The visitor never saw anything different.

For online stores

Orders from your store, back to the ad that earned them

Your store sends the order once. Open Tracked passes it on to each ad platform, cleaned and deduplicated.

Frequently asked questions

What is a conversions API?

An endpoint that lets your server send events to an ad platform, to make up for browser pixel losses.

Do I need one for every platform?

For platforms you advertise on, it is recommended. A server container lets you set up several at once.

Is it the same as a pixel?

No. A pixel runs in the browser. The API runs on a server. Most advertisers use both with a shared event ID.

Is the API free?

The platforms do not charge for the API. You pay for the server or host that sends the events.

Which is the easiest way to start?

A platform integration for one platform, or a managed server container if you advertise on several.

Do I need spreadsheets to read my results?

No. Once tracking is live, the Open Tracked analytics shows spend, revenue, ROAS and profit, and you can ask Ari, the built-in AI assistant, questions about your own numbers in plain words. Ari's allowance depends on your analytics plan.

Is Open Tracked different from Open Track or Open Space Track?

No. Open Tracked is the official name of our server-side tracking platform, and the website is opentracked.io. Many people search for it as Open Track, OpenTrack or Open Space Track. All of them lead to the same product: server-side Google Tag Manager hosting, first-party analytics and a CRM pipeline.

Fix your tracking at the source

Open Tracked hosts your server-side Tag Manager, keeps first-party cookies alive and shows what each ad is really worth.

Open Tracked
Written by

The Open Tracked team

We build Open Tracked: server-side tracking hosting, analytics and the tools around them, for stores that spend on ads. Questions about this guide, or an idea for the next one?

Write to us Read the docs

Was this article helpful?

Comments

Loading comments...

Turn better tracking into better marketing performance

Start free