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.
- In Meta Events Manager, open your dataset and copy its ID.
- In the dataset’s settings, generate a Conversions API access token. Keep it safe.
- 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.