Saazora
Sales Prospecting & CRM
Oct 25, 2026 26 mins read 49 views

Call Tracking for Facebook and Meta Ads (2026)

A research guide to tracking phone calls from Facebook and Instagram ads. It explains what Meta Ads Manager reports natively for call ads, call add-ons and Website and calls campaigns (Calls placed, 20- and 60-second calls, partly modeled), why many calls from Meta ads go unattributed, how to give each ad set its own CallRail tracking number and swap numbers on the landing page with UTM parameters, how to send calls back to Meta through CallRail's Facebook (Meta) integration or the Conversions API, a nine-step setup order, and the monthly cost at $1,500, $5,000 and $15,000 of Meta spend next to WhatConverts and CallTrackingMetrics. Prices checked October 23, 2026.

Quan Le
Quan Le
AI Tools Reviewer
Call Tracking for Facebook and Meta Ads (2026)

Meta and CallRail help pages read, and prices on callrail.com, whatconverts.com and ctm.com checked, October 23, 2026 · Research guide based on the Meta Business Help Center, Meta's Conversions API developer documentation and CallRail's help center, not hands-on testing · US list prices

Saazora may earn a commission if you sign up for CallRail through links on this page, at no extra cost to you. Links to Meta, WhatConverts and CallTrackingMetrics pages are plain links with no affiliate tag.

Facebook ads call tracking means giving every Meta ad that can produce a phone call its own tracking number, then sending each tracked call back to Meta so Ads Manager can count it. Meta does count some calls by itself: a call ad reports Calls placed, 20-second calls and 60-second calls. But Meta's help center says those figures are "partially derived through modeling, rather than a straight count," and they only cover people who tapped the call button inside the ad. Someone who clicks through to your site and dials the number on the page, or who sees the ad and calls you two days later, never shows up. A call tracking tool closes most of that gap. CallRail lists Facebook among the integrations included in every Lead Tracking plan, which start at $55 a month on monthly billing (callrail.com/pricing, October 23, 2026).

This guide is the Meta version of our breakdown of how Google Ads counts calls. The two platforms work very differently: Google matches a call to a click ID, while Meta tries to match the caller to a Facebook or Instagram profile, which changes how you set the numbers up and why the totals never quite agree.

What Meta Ads Manager reports about calls on its own

Meta calls this family of ads "lead ads with calling." There are three versions, and each reports calls in a different way:

  • Call ads. A single image, video or carousel with a Call now button. Tapping it opens the phone's keypad with your number already filled in. You can run them under the Awareness, Traffic, Engagement, Leads or Sales objective; with all but Awareness, Meta says the ad "optimizes for 60-second calls."
  • Call add-ons. The ad sends people to your website in Facebook's in-app browser, with a Call now bar at the bottom of the page. Meta says call add-ons "optimize for website conversion events only."
  • Website and calls. A conversion location that optimizes for both at once, with value rules to tell Meta which outcome you prefer.

Call ads only run on mobile placements: Facebook Feed, Marketplace, Reels and Stories, plus Instagram feed and Stories. The phone number can be a mobile, a landline or a toll-free 1-800 number, so a tracking number works as the destination like any other.

Native call metricMeta's definitionWhere to find itWhat it leaves out
Calls placed"The number of times a call was made to your business by selecting an ad"Ads Manager: Columns, Customize columns, Engagement, CallingCalls dialled any other way than from the ad
20-second callsCalls placed that connected for at least 20 secondsSame column set; default Results metric for "Maximize number of calls" campaigns targeting only the USWhether the caller booked, bought or was a wrong number
60-second callsCalls placed that connected for at least 60 secondsSame column setSame as above
Callback requests submittedPeople who used Send message on a call ad to ask you to call backSame column set (needs Messenger)Whether you actually called back
Caller number, answered or missed, cost per quality callPer-call list with your own "quality call" lengthCall Insights in Meta Business SuiteCaller numbers appear only with Meta call forwarding on (US only); Messenger and WhatsApp calls are not included

Source: Meta Business Help Center, "View metrics for call ads in Meta Ads Manager," "About Call Insights in Meta Business Suite," "About lead ads with calling" and "Supported objectives and placement options for call ads and call add-ons." Read October 23, 2026. Meta notes the call metrics are not available for campaigns created before June 20, 2025 outside the US, Australia, Brazil, Canada, Mexico and Israel.

Meta's own call forwarding is worth knowing about before you buy anything. When you switch it on (ad set level: Conversion section, Calls, then the Call Insights toggle), callers who tap the ad dial a Meta-managed number that forwards to yours. Meta says this is what lets Call Insights show the caller's phone number and whether the call was answered, that the forwarding number "may not have the same area code" as your business, and that a person who calls the same Meta number again within 60 days still reaches you. It is US-only and does nothing for calls that start on your website.

Why calls from Meta ads often go unattributed

On Google, a phone call can be tied to the exact click that preceded it. On Meta, most of the signal is lost somewhere between the ad and the dial tone. The common breaks are these:

Matrix of four ways a Facebook or Instagram ad leads to a phone call, what Meta Ads Manager reports natively for each, and which CallRail tracking number ties the call back to the ad
Only the first path is counted natively, and even that count is partly modeled. Saazora matrix from Meta and CallRail help pages, October 23, 2026.
  1. The caller never taps the ad. Meta's Calls placed metric needs someone to select the ad. A person who sees a Reel for your clinic, then searches your name and calls from your Google listing, is invisible to Ads Manager and lands in your books as a Google or direct call.
  2. The number on the landing page is static. With a call add-on or a plain Traffic ad, many people read the number on your page and dial it, often from a desk phone. Meta has no tap to record, and without a swapped number your call log cannot say which ad sent them.
  3. The URL parameters disappear. Meta's URL parameter page warns that a parameter "is only applicable to the first product page." If the visitor leaves and comes back later on their own, the parameter is gone, and a landing-page number keyed only to that parameter has nothing to react to on the return visit. A visitor-level website pool is the safer choice when people tend to come back before calling.
  4. Meta could not match the caller to a profile. CallRail's attribution article explains that Meta credits a call to an ad only after it finds a matching Facebook profile (by phone number, email or Facebook click ID) and then confirms that person saw or clicked an ad within the attribution window. Calls that fail either step are sent but never appear in campaign reports.
  5. The call fell outside the attribution window. Meta's standard settings for website and in-store conversions count events within 1 or 7 days of a link click and 1 day of an impression. A homeowner who calls three weeks after first seeing the ad will not be credited, however good the tracking.

The first and last breaks cannot be fully fixed by any tool. The middle three can, and that is where tracking numbers earn their cost.

Facebook ads call tracking with one number per ad set

The practical rule is one tracking number for every place a caller can dial from. For call ads that means a separate number per campaign or, better, per ad set, typed straight into the ad's phone field. The number itself then tells you which audience, radius or offer produced the call, no profile matching needed.

Example tracking number plan for one Meta Leads campaign: two offline CallRail numbers typed into call ads for two ad sets, and a landing page number swapped by dynamic number insertion for a retargeting ad set
One number per ad set for call ads, and a swapped number for anything that lands on your site. Saazora diagram from CallRail and Meta help pages, October 23, 2026.

CallRail's help center describes two different number types for Meta, and mixing them up is the most common setup mistake:

Ad typeCallRail number to createChoices in the new-number wizardWhere the number goes
Call ad (Call now button, no website)Offline tracking number"Where do you want to use this tracking number?" → I'll use it offlineTyped into the phone number field of the ad in Ads Manager
Call add-on, Website and calls, Traffic or Leads ad that lands on your siteWebsite number tracking a landing page parameterOn my website → Calls only → Landing page or URL parameter, then enter the parameterNowhere by hand: CallRail's script swaps it onto the page when the parameter is in the URL
Several Meta campaigns, or visitor-level detailWebsite pool (visitor tracking)A pool sized from your busiest hour of trafficSwapped per visitor, which also keeps the session for later calls

Source: CallRail help center, "Create a number for Facebook's 'Call Now' button" (updated December 2, 2025), "Create a number to track Facebook ads" (updated July 12, 2026) and "How to calculate the size of your website pool." Read October 23, 2026.

One instruction in CallRail's Call Now article is out of date: it says to choose "Local Awareness" as the objective. Meta's current help pages list Awareness, Traffic, Engagement, Leads and Sales for call ads, so pick whichever fits the campaign and paste the CallRail number as the destination. The tracking still works, because the attribution comes from the number, not the objective.

If you also turn on Meta's call forwarding, the caller dials Meta's number, which then forwards to the number in the ad, which in this setup is your CallRail number. Neither Meta nor CallRail documents what caller ID CallRail receives after that double hop, so place a test call from a phone you can recognise before relying on caller numbers in CallRail for those ad sets. The source attribution itself does not depend on it, since it comes from which CallRail number rang.

How many numbers you buy is a budget question. Each extra local number on CallRail's entry tier costs $3.00 a month, so ten ad sets with their own numbers add up quickly. A sensible middle ground is one number per ad set that has its own audience or offer, and one shared number for small test ad sets you will switch off within a week.

Putting the right number on the landing page: DNI and UTM parameters

For every Meta ad that sends people to your website, the landing page has to show a tracking number instead of your office line. CallRail does this with dynamic number insertion: its JavaScript detects your business number on the page and replaces it when the visitor arrived with the parameter you set on the tracking number. For the parameter to arrive, it has to be on the ad.

Meta gives you a URL parameters field under Tracking at the ad level, plus a Build a URL parameter helper. Its dynamic values fill themselves in from the campaign. A template that works for both CallRail and Google Analytics looks like this:

utm_source=facebook&utm_medium=paid&utm_campaign={{campaign.name}}&utm_content={{ad.name}}&utm_term={{adset.name}}&fb_ad_id={{ad.id}}

  • utm_source=facebook is the static value you tell CallRail to look for when you create the landing-page number. CallRail's list of common marketing sources gives utm_campaign=facebook as an example; any parameter works as long as the ad and the number use the same one.
  • utm_medium=paid matches the medium Meta says it may add automatically. Since January 1, 2024, Meta may append campaign source (Facebook or Instagram), medium "paid," and the ad, ad set, campaign and campaign tracking group IDs to your ad traffic.
  • fb_ad_id={{ad.id}} is the exact parameter CallRail asks for in "Set up Facebook Ads for lead reporting." It lets CallRail's Multi-Touch Cost per Lead report join each call to the ad's spend, which CallRail pulls in automatically once the Facebook integration is active.
  • {{site_source_name}} and {{placement}} are also available if you want to split Facebook from Instagram or Feed from Reels.

Three Meta rules decide whether this template survives contact with a live campaign. Parameters in the URL parameters field override duplicates in the Website URL field, so keep UTMs in one place only. Name-based values such as {{campaign.name}} are frozen at the name used when the ad was first published, so renaming a campaign later will not change the UTM; name things properly before launch. And Meta says editing URL parameters on a running campaign "may cause your ad set to re-enter the learning phase," which is a good reason to get the template right on day one. Meta also warns against empty values: every key needs a value or should be removed.

Then size the swap. If several Meta ad sets share one landing page, a single landing-page number tells you "Facebook" but not which ad set. A website pool fixes that by giving each visitor their own number. CallRail's rule is to take your busiest hour of sessions over the last two weeks, divide by four, and never go below four numbers, because a pool that is too small merges two visitors who saw the same number. If calls from Meta keep appearing as Direct in CallRail, a small pool is the first thing to check.

Sending call conversions back to Meta

Tracking numbers tell you which ad produced a call. Meta's delivery system only learns from calls you send back to it. There are two documented routes.

Five-step flow of a tracked call going from a CallRail tracking number through an integration trigger and the Meta Pixel to profile matching and Ads Reporting, with Meta's attribution windows and the Conversions API seven-day limit
A call reaches Meta's campaign reports only after Meta matches the caller to a profile that saw or clicked an ad. Saazora diagram from CallRail and Meta documentation, October 23, 2026.

Route 1: CallRail's Facebook (Meta) integration. CallRail's help article describes a "Pixel Setup" that posts each call, text and form submission to the Pixel you choose. You need to be an administrator of the Business Manager account, have Manage-level access to the ad account and the Pixel, and the Pixel must be connected to that ad account. In CallRail: Integrations, Facebook, choose the company, Log in with Facebook, pick the Business Manager and ad account, leave the setting on Pixel Setup, choose the Pixel and the events, then Activate. Afterwards, open Meta Events Manager and verify the new custom events; CallRail says they should register "within 30 minutes" of each call. To see them by campaign, open Ads Reporting and add "Custom Events" in the pivot table, which shows the events but not whether each one was a call, form or text.

Three details in CallRail's documentation matter for call quality. You can add an integration trigger so only calls over a minimum duration, or calls with a certain tag, are sent, which keeps wrong numbers out of Meta's optimization. Leads that CallRail determines are from California are posted with Meta's Limited Data Use setting, which CallRail says may affect retargeting and measurement for those leads. And the older Offline Events method of the integration was sunset in January 2024; accounts still on it see an alert on the integration page and should reconnect with the Pixel method, which CallRail says gives better matching "if used alongside visitor tracking."

Route 2: the Conversions API, directly. Meta's developer documentation calls the Conversions API its "recommended integration method" for offline and physical-store events, and its server event parameters include an action_source value of phone_call ("Conversion was made over the phone"). This is the route for a business that keeps call outcomes in its own CRM and has a developer. The rules to plan around:

Conversions API ruleWhat Meta's documentation saysEffect on call conversions
Event ageevent_time can be up to 7 days before you send it; if any event in a request is older, the whole request is rejectedSend calls daily, not in a monthly batch
Store and offline uploadsEvents with physical_store as action source should be uploaded within 62 daysOnly for in-store sales, not for the call itself
Matching dataPhone, email, name, city, state, zip and country must be hashed; external_id is "highly recommended"Send the caller's number, hashed, with every call event
DeduplicationOffline events deduplicate only against other offline events, by order_id or user data, within a 7-day windowUse a call ID as order_id if two systems might send the same call
Legacy APIMeta's Offline Conversions API was scheduled for discontinuation in May 2025; Meta recommends datasets plus the Conversions APIOld offline event set uploads need migrating

Source: Meta for Developers, "Sending Offline Events Using the Conversions API" (updated January 5, 2026) and "Server Event Parameters"; Meta Business Help Center, "About Conversions API." Read October 23, 2026.

CallRail's help pages describe its integration as the Pixel method and do not say which Meta endpoint it uses behind the scenes, so do not run both routes for the same calls unless you have checked how they deduplicate. For most small advertisers Route 1 is the whole job.

Finally, expect the numbers to disagree. CallRail's attribution article states that only interactions Meta manages to attribute appear in Facebook's ad reporting, so you "will likely see a difference" between the two. Its suggested check is to filter CallRail to Facebook calls and compare with Meta's events for the same dates. One caution: that article (last updated January 2025) describes Meta's default as a 1-day impression and 28-day click window, while Meta's current help page lists 1-day or 7-day click and 1-day view for standard attribution. Go by the setting on your own ad set.

Setup steps, in the order that avoids rework

  1. Install CallRail's swap script on every page. Dynamic number insertion needs the JavaScript snippet before any website number will swap.
  2. List every place a Meta ad can produce a call. Call ads per ad set, call add-ons, and each landing page. This list decides how many numbers you buy.
  3. Create one offline number per call-ad ad set. Name it after the ad set so it reads clearly in reports, set routing to your main line, and decide on a whisper message and recording.
  4. Create the landing-page number or website pool. Tracking source "Landing page or URL parameter" with your static parameter, or a pool sized at peak hourly sessions divided by four.
  5. Build the URL parameter template and name campaigns before publishing. Name-based parameters lock at first publish, and later edits can restart learning.
  6. Paste the offline numbers into each call ad and schedule call ads to business hours. Meta reports that, in an experiment, call ads scheduled this way delivered 25.4% more call conversions.
  7. Connect the Facebook integration with the Pixel method and add a minimum-duration trigger. A 60-second minimum mirrors what Meta's call ads optimize for, so CallRail and Meta judge a call by the same length.
  8. Verify the custom events in Events Manager, then make one test call through a call ad and one through the landing page, and check both arrive in CallRail with the right source.
  9. After a week, compare totals in three places: CallRail filtered to Facebook, Meta's Calls placed and 60-second calls, and the Custom Events column. Large gaps usually point to a pool that is too small or a missing parameter.

If you advertise on Google as well, the same CallRail account handles both; the Google side has its own steps for call conversions and forwarding numbers, and if you report in Google Analytics, our guide to sending tracked calls into GA4 covers the event setup. Businesses that send call data on to field-service software should also read our call tracking setup for HVAC and plumbing companies, which covers what reaches ServiceTitan, Housecall Pro and Jobber.

What the tracking costs at three Meta ad budgets

CallRail's Lead Tracking plans all include the Facebook integration, so what changes the bill is the number count and the minutes. The tiers below were read from the "See all Lead Tracking plans" table on callrail.com/pricing on October 23, 2026.

CallRail Lead Tracking tierMonthlyBilled yearlyLocal numbers includedLocal minutes includedEach extra numberEach extra minute
Tier 1$55$50/mo5250$3.00$0.06
Tier 2$75$68/mo5750$3.00$0.06
Tier 3$95$85/mo101,000$2.50$0.05
Tier 4$295$265/mo404,000$1.75$0.045

Source: callrail.com/pricing, checked October 23, 2026. Integrations listed for every Lead Tracking tier: Google Analytics, Google Ads, GMB, Facebook, Microsoft Ads, HubSpot, Slack, Zapier. CallRail rounds each call up to the next minute; extra usage is billed on top of the base fee and is not refundable; there is a 14-day trial with no credit card.

To turn ad spend into a bill, Saazora assumed one offline number per ad set running call ads, a landing-page pool sized by CallRail's rule, and a monthly minute total for each budget. These are illustrations, not customer data. The two alternatives are priced on the cheapest plan whose own documentation includes a Facebook integration: WhatConverts says its Facebook integration is available on all plans, and CallTrackingMetrics lists Facebook among the premium integrations of Marketing Pro, not Marketing Lite.

Example advertiserNumbers neededMinutes a monthCallRail, cheapest tierWhatConverts Call TrackingCTM Marketing Pro
$1,500 a month on Meta, 2 call-ad ad sets, peak 16 sessions an hour6 (2 + pool of 4)300$61.00 on Tier 1 ($56.00 billed yearly)$30.00$203.00 ($173.00 yearly)
$5,000 a month, 4 call-ad ad sets, peak 24 sessions an hour10 (4 + pool of 6)1,000$95.00 on Tier 3 ($85.00 billed yearly)$70.00$239.00 ($209.00 yearly)
$15,000 a month, 10 call-ad ad sets, peak 60 sessions an hour25 (10 + pool of 15)3,000$232.50 on Tier 3 ($222.50 billed yearly)$197.50$349.00 ($319.00 yearly)

Saazora arithmetic, US local numbers and minutes, monthly billing unless noted. WhatConverts Call Tracking: $30/mo including a $30 usage credit, $2.50 per extra local number, 4.5¢ per local minute (whatconverts.com/pricing). CallTrackingMetrics Marketing Pro: $179 monthly or $149/mo billed yearly, $2.00 per local number, 4.0¢ per local forwarding minute (ctm.com/plans-pricing). All checked October 23, 2026.

Bar chart of the monthly call tracking bill for Facebook and Instagram advertisers spending 1,500, 5,000 and 15,000 dollars a month, comparing CallRail, WhatConverts and CallTrackingMetrics Marketing Pro
CallRail's bill works out to 1.6% to 4.1% of Meta spend in these examples; CallTrackingMetrics costs more because its Facebook integration starts on Marketing Pro. Saazora arithmetic, October 23, 2026.

Read the comparison with its limits in mind. WhatConverts comes out cheapest on paper, but its pricing table also shows "Up to 148" included phone call leads on every plan, and the page does not say what happens above that, which matters for the two larger examples. CallTrackingMetrics' higher price buys more than the Facebook connection: Marketing Pro also includes form tracking, 3,000 transcribed minutes and if/then triggers. CallRail sits between them, and the Tier 3 plan covers the middle and upper example because its 10 included numbers and 1,000 minutes absorb most of the usage. For the full plan list, toll-free rates and add-ons, see our full CallRail price list; for more vendors side by side, the comparison of call tracking tools and the wider roundup of CallRail alternatives go further.

The 14-day trial is long enough to buy two offline numbers, connect the Pixel, run call ads for a week and compare CallRail's count with Meta's. You can open a 14-day CallRail trial (affiliate link), and any current offers are on the CallRail deals page. Vendor pricing pages: WhatConverts pricing and CallTrackingMetrics plans.

Questions about tracking calls from Facebook and Instagram ads

Does Meta Ads Manager track phone calls without extra software?

Partly. Call ads, call add-ons and Website and calls campaigns report Calls placed, 20-second calls and 60-second calls, and Meta says these are partly modeled. Calls that do not start from a tap on the ad, such as someone dialling the number on your landing page, are not counted. Call Insights shows caller numbers only when Meta's US-only call forwarding is switched on.

Can I put a call tracking number in a Facebook call ad?

Yes. Meta accepts mobile, landline and toll-free numbers as the destination, and CallRail recommends an offline tracking number for the Call now button. Use one number per ad set if you want CallRail to tell you which audience or offer drove each call.

Why does Meta show fewer call conversions than CallRail?

Because CallRail sends every call it tracks, while Meta credits only calls it can match to a profile that saw or clicked an ad within your attribution window. Unmatched calls never appear in campaign reports. Compare CallRail's Facebook-filtered calls with Meta's events for the same dates, not with your total call count.

Do I need the Conversions API if I already use CallRail?

Not for the calls CallRail tracks: its Facebook integration posts them to your Pixel for you. A direct Conversions API setup makes sense when the real outcome, such as a booked job or a sale, is recorded later in your own CRM. Keep Meta's 7-day limit on event age in mind, and avoid sending the same call through both routes.

How this guide was put together

This is a research guide. Saazora has no CallRail, WhatConverts or CallTrackingMetrics account for this page and placed no test calls through Meta ads. Meta behaviour comes only from the Meta Business Help Center (call ads, call add-ons, Call Insights, call forwarding, call ad metrics, URL parameters and dynamic parameters, attribution settings, the Conversions API overview) and Meta's developer pages on offline events and server event parameters. CallRail behaviour comes from its help articles on the Facebook (Meta) integration, Facebook attribution, the Offline Events transition, Facebook tracking numbers, lead reporting parameters, cost per lead sources and website pool sizing. All were read on October 23, 2026, as were the three pricing pages. The ad budgets, ad set counts, traffic peaks and minutes in the cost examples are Saazora assumptions; the dollar figures are arithmetic on the published rates.

Sources (plain links): About lead ads with calling · Metrics for call ads · Meta call forwarding · Dynamic URL parameters · Attribution settings · Conversions API offline events · CallRail Facebook (Meta) integration · How attribution works in CallRail's Facebook integration

Tags: #facebook ads call tracking
Quan Le
ABOUT THE AUTHOR

Quan Le

Quan Le is the founder and editor of Saazora, an independent site for news and reviews of SaaS and AI tools. He has worked in affiliate publishing since 2015, writing product reviews, verifying deals and running SEO for review sites. On Saazora he focuses on software for small businesses, creators and marketing teams, and evaluates tools by how well they fit real workflows: onboarding, integrations, pricing and long-term value, not the length of their feature list.

Read Quan's full profile · LinkedIn · contact@saazora.com

KEEP READING

Related Reviews