- Destinations
- App Conversions
Meta App Conversions API
Overview
Section titled “Overview”Signals sends mobile app event data from your servers to Meta, so app conversions are attributed and campaigns optimized even where client-side tracking is incomplete.
It complements the Meta SDK rather than replacing it. The SDK reports from inside the app; this connector reports from your own backend, which keeps data flowing when client-side tracking is limited by network problems, app restrictions or a user opting out.
If the conversion happened in a browser rather than an app, use Meta Conversions API instead.
Supported sources
Section titled “Supported sources”Sources supported by Meta App Conversions API
| Category | Supported |
|---|---|
| App |
Prerequisites
Section titled “Prerequisites”- A Meta Ads account.
- A Meta Business Manager account with access to the dataset you intend to send to.
- Server-side API permission on that dataset.
- The Meta SDK deployed in your app, and the app registered against your Meta business.
- A Dataset ID and an Access Token generated in Events Manager. See Authentication for where to find both.
- A Datahash Studio account with the target project selected.
Authentication
Section titled “Authentication”Manual setup
Section titled “Manual setup”- In Studio, open Destinations, find Meta, and click the App Conversions API tile.
- Enter your Dataset ID and Access Token.
- Click Validate Credentials.
- Click Finish.
| Field | What it is | Where to find it |
|---|---|---|
| Dataset ID | The unique identifier Meta assigns to a dataset created in Events Manager. | business.facebook.com, then All tools, Events Manager, Data Sources, select your dataset, Settings. |
| Access Token | A credential authorizing Datahash to send events to that dataset on your behalf. | The same Settings screen, scroll to the Conversions API section, choose Set up manually, then Generate Access Token. |
Configuration
Section titled “Configuration”Dataset
Section titled “Dataset”The dataset whose ID you entered during authentication is where events are written. It must be the dataset registered against your app rather than a website dataset.
Events and mapping
Section titled “Events and mapping”The events themselves come from the connected source. Event names, the identifiers used for matching and the deduplication key are all set by the source mapping, not here.
Manage instance
Section titled “Manage instance”To change the instance, open it from the Manage existing instance table, click the edit option in the menu to the top right, update the fields and click Finish.
Deduplication
Section titled “Deduplication”The event ID is what deduplicates. Send the same event ID from the SDK and from your server for any action reported on both paths, and the conversion is counted once.
The match window is 48 hours against the same dataset.
Data & identifiers
Section titled “Data & identifiers”Send identifiers already hashed where you can. Plain text also works: they are normalized and SHA-256 hashed before they reach Meta.
Alongside the usual match keys, app events can carry mobile advertising identifiers: the Android Advertising ID and the Apple IDFA.
Best practices
Section titled “Best practices”- Send mobile advertising identifiers where you have them. On app events they match more reliably than personal identifiers alone.
Troubleshooting & FAQ
Section titled “Troubleshooting & FAQ”Validate Credentials fails. Re-check the Dataset ID. Confirm the token was generated for that dataset and that the account has server-side API permission.
No events appearing in Events Manager. Confirm a source is connected in the same project and sending, and that you selected the dataset registered against your app.
Events double counted against the SDK. Both paths are reporting the same action with different event IDs. See Deduplication.
iOS events missing or unmatched. Users who declined tracking do not provide an advertising identifier, so those events match on personal identifiers alone or not at all.
Delivery stopped. The access token may have expired or been revoked. Generate a new one in Events Manager and re-validate.

