Guides / Meta Conversions API for calls

Meta Conversions API for calls

Send calls, qualified calls and booked calls to Meta as phone-call events through the Conversions API — dataset and token, which events Saylia sends, matching, Meta's 7-day rule and deduplication.

Last updated Meta

Saylia sends calls to Meta as server events through the Conversions API, marked as phone-call events. Meta can then connect a call to the ad that led to it, and optimize your campaigns toward the calls that became customers.

Before you start

  • Your Meta dataset (pixel) in Events Manager, and its dataset ID.
  • A Conversions API access token for that dataset. You generate it in Events Manager, under the dataset’s settings.
  • The Saylia tracking tag on your site, so calls from people who clicked a Meta ad carry the click ID. See Install the tracking tag.
  1. In Meta Events Manager, open your dataset and copy its ID.
  2. In the dataset’s settings, generate a Conversions API access token. Keep it safe.
  3. In Saylia, connect Meta with the dataset ID and token, and choose which stages to send.

The events Saylia sends

Each stage is sent as its own event, so Meta can optimize toward the one you choose:

Stage in Saylia Meta event Type
Call Lead Standard event
Qualified call QualifiedLead Custom event
Booked call Schedule Standard event

Qualified calls use their own custom event rather than a second Lead. That way, a dataset that already receives every call as Lead doesn’t count a qualified call twice. See Meta’s standard events.

What Saylia sends

Field Value
action_source phone_call
event_time The call’s start time
event_id A stable ID for this conversion, used for deduplication
user_data.ph The caller’s phone number, normalized to digits with country code, as Meta requires, then hashed with SHA-256
user_data.fbc The Meta click ID, built from the fbclid the tracking tag saved, as fb.1.<timestamp>.<fbclid>. The fbclid is case-sensitive and isn’t hashed.
user_data.client_ip_address, client_user_agent and fbp The visitor’s IP address, browser and Meta browser ID, when captured. Meta requires IP address and user agent unhashed.
custom_data.value and currency The value set for that stage

Meta documents these fields in its server event parameters and fbc format references.

Uploads are deduplicated, retried automatically on a scheduled pass when Meta doesn’t accept them, and recorded in a send log.

Meta’s 7-day rule

Meta rejects events more than 7 days old. Saylia uses the call’s time as event_time, so a stage reached more than 7 days after the call — for example a booking confirmed ten days on — can’t be sent to Meta. It stays in Saylia’s reports.

Deduplication

If another system also reports these calls to Meta, such as your CRM, Meta may count each copy separately. Send call events to a dataset from one system only.

Check it’s working

In Events Manager, open the dataset and look for events arriving with Phone call as their action source. The Event Match Quality score shows how well Meta can match them to people. Calls with a captured click ID match best.

Troubleshooting

No events in Events Manager. Check that the dataset ID and access token in Saylia belong to the same dataset, and that the token hasn’t been revoked.

Events arrive but few are attributed. Calls from people who never clicked a Meta ad have only a hashed phone number to match on, and Meta matches only some of them. Calls from Meta ad clicks, with the tracking tag on the landing page, match best.

A booked call never reached Meta. It was booked more than 7 days after the call, which is outside Meta’s window.