Location: Integrations → Meta Ads; Integrations → Snippets; Reporting → Call Tracking
Use case: Upload eligible Moja call conversions to Meta Ads through Meta Conversions API.
Overview
Moja can upload eligible call conversions to Meta Ads when the call can be tied back to a Meta-attributed website visitor session.
For website call attribution, Moja needs two things:
Meta attribution data from the landing-page visit — such as
fbclid,_fbp, or_fbc.A way to connect that website visit to the inbound phone call — typically through the Moja snippet and Dynamic Number Insertion (DNI).
In practice, customers should use Moja Snippets + DNI for Meta Ads call conversion uploads. The snippet captures visitor-session attribution, and DNI connects that session to the Moja tracking number the visitor calls.
Related guide: DNI, Tracking Tags/Snippets, and Number Pools
Why this matters
Meta Ads conversion postbacks help you optimize campaigns based on real call outcomes instead of clicks alone.
With the Meta Ads integration, you can:
Send eligible Moja call conversions to Meta Conversions API
Attribute website calls to Meta visitor-session identifiers
Optimize Meta campaigns using real call conversion outcomes
Route conversions to the correct Meta pixel or dataset
Monitor upload health and troubleshoot missing conversions
The key requirement is attribution: Moja must have supported Meta attribution data on the call before it can upload the conversion.
What’s included
Feature | What it does |
Meta Conversions API uploads | Sends eligible Moja call conversions to Meta Ads |
Meta attribution support | Uses supported identifiers such as |
Moja snippet support | Captures landing-page visitor-session data |
DNI attribution | Connects the visitor session to a dynamically inserted Moja tracking number |
Linked Meta Ad Accounts | Connects Meta Ad Accounts and pixels/datasets |
Default pixel routing | Sends unmapped snippet conversions to a selected default pixel |
Snippet → pixel routing | Maps specific Moja snippets to specific Meta pixels |
Upload settings | Lets you choose Lead or Purchase, and Conversion or Payout value source |
Token health | Shows whether Meta authorization is active or needs refresh |
Upload statistics | Helps monitor successful and failed uploads |
Meta Ads page layout
The Meta Ads integration page has two main tabs:
Overview — use this to monitor token health, linked Meta Ad Accounts, and conversion upload statistics.
Configuration — use this to configure upload settings, upload delays, default pixel routing, and snippet mappings.
Top-level actions include:
Refresh — reloads the latest integration state.
Remove Integration — disconnects the Meta Ads integration.
How it works
A visitor clicks a Meta ad. Meta sends the visitor to your landing page and may include attribution identifiers such as
fbclid,_fbp, or_fbc.The Moja snippet loads. The snippet captures the visitor session and available Meta attribution data.
DNI replaces the phone number. The visitor sees a dynamically inserted Moja tracking number from the configured number pool.
The visitor calls. Moja associates the call with the snippet session and captured attribution data.
Moja evaluates the conversion. If the call meets the selected upload setting, Moja queues it for upload.
Moja sends the event to Meta. Moja uploads the event to the configured Meta pixel/dataset through Meta Conversions API.
Meta receives the event. Meta can use the conversion for attribution, reporting, and campaign optimization.
Meta attribution identifiers
Meta attribution identifiers help Meta connect a website visit or browser session back to Meta advertising activity.
Moja uses supported identifiers when available, including:
fbclid— Meta click identifier from the landing-page URL_fbp— Meta browser identifier cookie_fbc— Meta click identifier cookie
If none of these identifiers are present, the call generally cannot be uploaded as a Meta-attributed conversion.
A phone call by itself does not contain Meta ad-click attribution. Moja needs the landing-page session data captured by the snippet and tied to the call through DNI.
Snippets and DNI
What the Moja snippet does
The Moja snippet runs on your website and captures visitor-session data from the landing page. This allows Moja to preserve Meta attribution before the visitor places a call.
Without the snippet, Moja usually cannot see the website session or Meta attribution identifiers. The call may still appear in Moja, but it may be ineligible for Meta upload.
What DNI does
Dynamic Number Insertion replaces website phone numbers with Moja tracking numbers from a configured number pool.
This lets Moja connect the visitor session captured by the snippet to the actual inbound call.
Static-number calls usually do not carry the website visitor session or Meta attribution identifiers needed for Conversions API uploads. Use Moja Snippets + DNI when you want website calls attributed and uploaded to Meta Ads.
Meta Ad Accounts and pixels
After Meta is connected, Moja shows linked Meta accounts and Meta Ad Accounts in the Meta Ads integration page.
Linked account details can include:
Meta account name and ID
Account status
Linked Meta Ad Accounts
Meta Ad Account name and ID
Business, when available
Pixel or dataset name and ID
Currency
Default pixel indicator
Default pixel
The default pixel is used when a snippet does not have a specific pixel mapping.
If no snippet mappings are configured, eligible conversions are sent to the default pixel.
Snippet → pixel routing
Snippet → pixel routing lets you control which Meta pixel receives conversions from specific Moja snippets.
This is useful when you have multiple campaigns, websites, brands, ad accounts, or pixels.
A snippet can be mapped to a specific pixel. If a snippet is not mapped, conversions from that snippet use the default pixel.
Upload settings
Event name
Moja supports two Meta event names:
Event name | When to use it |
Lead | Use when the call represents a lead, inquiry, qualified prospect, or other lead-generation event |
Purchase | Use when the call represents a completed sale or revenue event |
Conversion value source
Moja supports two upload triggers and value sources:
Setting | Upload trigger | Value sent to Meta |
Conversion | Uploads calls when the call is marked converted |
|
Payout | Uploads calls when a publisher payout exists |
|
For Conversion mode, the call must be marked converted.
For Payout mode, the call must have a publisher payout greater than zero.
What Moja sends to Meta
Moja builds a Meta Conversions API event for each eligible attributed call.
The event can include:
Event name: Lead or Purchase
Event time: inbound call time
Action source:
phone_callEvent ID: Moja-generated event ID based on the call log ID
User data:
- Hashed caller phone number, when available
- fbc, when available
- fbp, when available
- fbc derived from fbclid when _fbc is not available
- External ID from the Moja visitor ID, when available
Custom data:
- Currency
- Conversion value
- Order ID using the call log ID
Moja hashes phone numbers before sending them to Meta.
How to set it up
1. Connect Meta Ads
In Moja, go to Integrations → Meta Ads.
Complete the Meta OAuth connection flow if Meta Ads is not connected yet.
On the Overview tab, confirm token health and linked Meta Ad Accounts.
Use + Link Additional Account if another Meta Ad Account should receive conversion events.
Confirm the account has the intended pixel/dataset selected.
Use Refresh to reload the integration state after making changes.
2. Create or update the Moja snippet
Go to Integrations → Snippets.
Create or edit the snippet for the landing page.
Copy the snippet code and paste it into the
<head>section of the landing page.Configure the snippet fields, including:
- Snippet Name
- Campaign / default number
- Number to Replace
- Number Pool
Confirm Enable Number Replacement is turned on.
3. Configure phone number replacement
In the snippet table and edit screen, confirm:
Snippet Name — the label used to identify the snippet
Number to Replace — the static website number that should be replaced
Number Pool — the pool of Moja tracking numbers used for DNI
Enable Number Replacement — whether DNI replacement is active
If you use multiple domains, review Linked Domains in the snippet configuration to help maintain visitor IDs across sites.
4. Configure snippet → pixel routing, if needed
In the Meta Ads integration Configuration tab:
Select the Default Pixel for unmapped snippets.
Use + Add Mapping to map a specific snippet to a specific Meta pixel when needed.
Leave snippets unmapped if they should use the default pixel.
Confirm the mapping matches the intended campaign, website, or brand.
Snippet mappings are useful when different snippets, campaigns, brands, or websites should send conversions to different Meta pixels.
5. Test attribution
After setup, place a test call from a Meta-attributed visitor path when available.
Then confirm the call has attribution data in Moja and meets the selected upload condition.
Where to find this in Moja
Area | Path |
Meta Ads integration | Integrations → Meta Ads |
Overview tab | Meta Ads → Overview → Token Health, Linked Meta Ad Accounts, Conversion Upload Statistics |
Configuration tab | Meta Ads → Configuration → Upload Settings, Upload Delay, Default Pixel, Snippet Mappings |
Snippets / DNI | Integrations → Snippets |
Snippet code | Edit Snippet → copy code into landing page |
Number pool assignment | Edit Snippet → Number Pool |
Attribution reporting | Reporting → Call Tracking |
Verify attribution in reporting
After calls begin flowing, use Reporting → Call Tracking to confirm whether Meta attribution is being captured and uploaded.
Useful signals include:
Calls with
fbclid,_fbp, or_fbcCalls attributed through a current or historical DNI session
Calls marked converted, if using Conversion mode
Calls with publisher payout, if using Payout mode
Upload status and upload attempts
Meta upload errors, when present
Which calls are eligible for upload?
A call generally needs all of the following:
A Moja call attribution record
Attribution method of current or history
Sufficient attribution confidence
Meta attribution data:
fbclid,_fbp, or_fbcNo previous successful Meta upload
A qualifying conversion or payout, depending on the selected upload setting
A valid linked Meta pixel/dataset
An active Meta access token
Customers should not expect every call to upload. Only calls with the required attribution data and configured conversion condition are eligible.
Troubleshooting
Calls are showing in Moja but not uploading to Meta Ads
Check whether the call has captured Meta attribution data:
fbclid_fbp_fbc
If none are present, the call generally cannot be uploaded as a Meta-attributed conversion.
Also confirm:
The Meta token is active
At least one Meta Ad Account is linked
A default pixel is selected
The relevant Moja snippet is installed
DNI / number pool attribution is working
Calls meet the selected upload trigger: Conversion or Payout
The selected timezone matches the expected reporting window
Calls have no Meta attribution data
Common causes include:
The Moja snippet is not installed on the landing page
The landing-page URL or browser session is not preserving Meta attribution identifiers
The snippet loads after the visitor has already called
The phone number was not replaced through DNI
The visitor called a static number instead of the dynamically inserted number
The visitor session could not be matched confidently to the inbound call
Token expired
On the Meta Ads Overview tab, check Token Health. This area shows token status, expiration, and last refresh timing.
If Token Health shows the token has expired, click Refresh Token from the Meta Ads integration page.
Moja cannot continue syncing conversions with an expired Meta access token.
Static numbers are not uploading
This is expected in most cases. Static-number calls usually do not carry the website visitor session and Meta attribution identifiers needed for Conversions API uploads.
Use Moja Snippets + DNI if those calls should be attributed and uploaded.
The wrong pixel is receiving conversions
Review snippet → pixel routing.
If no mapping exists, conversions go to the default pixel. Add a snippet mapping if a campaign or snippet should send conversions to a different pixel.
Upload counts are zero
On the Meta Ads Overview tab, review Conversion Upload Statistics. Moja shows upload totals for Today, This Week, and All Time, including total uploads, successful uploads, failed uploads, and success rate.
If counts are zero, check that:
The Meta token is active
A Meta Ad Account is linked
A default pixel is selected
The relevant Moja snippet is installed on the landing page
DNI / number pool attribution is working
Calls have
fbclid,_fbp, or_fbcCalls meet the selected upload trigger: Conversion or Payout
Upload timing, delays, and retries
Moja does not upload conversions instantly.
Eligible conversions are uploaded automatically every 60 minutes. Meta Conversions API allows event_time to be up to 7 days before the event is sent to Meta. Moja should upload eligible phone-call conversions within that 7-day window.
If you need time for call quality review, fraud checks, or payout confirmation, use the Configure delays option in the Meta Ads configuration.
If Meta is temporarily unavailable or an upload fails, Moja retries when possible.
Safety and compatibility
Existing call tracking continues to work unchanged.
Static numbers can still receive and track calls in Moja. Meta Ads uploads only apply when the call has the required attribution data and meets the configured upload condition.
Snippet and DNI configuration should be tested before relying on uploads for campaign optimization.
Key takeaway
For automatic Meta Ads call conversion uploads from website visitors, use Moja Snippets + DNI, make sure the call has supported Meta attribution data, and confirm the call meets the selected upload trigger.