What is Facebook Pixel tracking?
Facebook Pixel tracking is the Meta Pixel: a JavaScript snippet that records what visitors do on your site and sends those events to Meta. Install the base code, send the standard event you pay for and confirm it in Events Manager. Closed revenue still needs UTMs on the deal. Tools like Trakt record each form submission's UTM source.
Quick start: Start free with Trakt to record each form submission from your Meta ads with its UTM source, alongside the Pixel data in Events Manager. Or follow the manual steps below.
Meta's developer docs call it the Meta Pixel. The snippet Meta publishes is still commented as Facebook Pixel code. Same ID, same fbq calls. You copy the base code from Ads Manager, then Events Manager.
Ad click → Meta Pixel event in Events Manager → UTMs on the form → CRM contact, then the deal → closed revenue by campaign.
Events Manager can show the first two. The amount you invoice sits on the deal.
Is the Facebook Pixel the same as the Meta Pixel?
The Facebook Pixel and the Meta Pixel are the same install. Meta's get-started guide says the base code lives in Ads Manager, then Events Manager. If you have not created one, Meta's setup article is the path: name the pixel, and Events Manager shows the new ID.
The base code calls two functions. Leave both in place. fbq('init', ...) loads your pixel ID. fbq('track', 'PageView') sends a PageView on every load. Meta's guide asks you to keep that PageView call.
By default, Meta says the pixel records URLs visited, domains visited, and the device. Standard events, covered below, add the actions you choose, such as a lead or a purchase. Those events show up in Events Manager and in Ads Manager, where Meta uses them to read the conversion path and to optimize campaigns.
Meta Pixel setup checklist
Meta's help splits the job in two. First, create the pixel in Events Manager and put the base code on the site, with a partner integration or by adding the code yourself. Second, set up events for the actions you want to measure, with a partner, the point-and-click event setup tool, or code. During setup, Events Manager walks through the options it can offer for your site.
Meta's help also says this: if you share events with the pixel, use the Conversions API alongside it. The API is the server-side stream. The pixel is the browser stream.
Before you start, Meta's requirements are a business website or app, and someone who can edit the site code or the tag manager.
-
Create the pixel in Events Manager and name it. That step creates the ID. If you have a website, enter the URL so Events Manager can check for a partner integration. When a partner is available, follow that partner's on-screen steps for the pixel and the events. When it is not, continue with the manual install below.
-
Choose Conversions API and Meta Pixel together when Events Manager offers that pair. Meta's labels on that path are Set up with partner integration and Set up with Meta-enabled, web-only Conversions API. When you install the pixel on its own, the screen includes Install code manually, and you can email the instructions to a developer.
-
Paste the base code between the opening and closing
<head>tags on every page you measure, including a separate mobile site. Meta recommends the head so the snippet runs sooner, before the visitor leaves. A tag manager works for most sites. Meta's guide says to follow that tag manager's own docs. The full snippet, including the pixel ID in two places, is on the get-started page. The calls you are checking for arefbq('init', 'YOUR_PIXEL_ID')andfbq('track', 'PageView'). -
Load a page that contains the pixel. That load should send PageView. In Events Manager, open the pixel. A new PageView means the base code is in. If the event is missing, wait a few minutes and refresh. Meta points you to the Meta Ads Data Advisor Chrome extension when an event looks wrong.
-
Send the standard event that matches the action you pay for. Every standard event is
fbq('track', 'EventName'), with an optional object of parameters. Put the call in the page body, on load of the confirmation page, or on the button click. The rules are in Meta's conversion tracking guide. -
Share one event ID when the Conversions API sends the same action. Meta's pixel reference says to pass
eventIDas the fourth argument offbq('track')so Events Manager can deduplicate the browser event and the server event. Use the same ID on both sides. The reference is the spec for that argument.
If you want each lead from a Meta click recorded with its campaign once the Pixel is in, pre-register for Trakt.
Which Meta Pixel events should a lead-gen site send?
Send the standard event that names the action. Meta's reference is the full list. These are the ones a lead-gen site usually needs, in Meta's own words:
| Event | What Meta says it measures |
|---|---|
| PageView | Fired by the base code on each load. Leave that call in place. |
| Lead | A sign-up is completed. Meta's example is a person clicking pricing. currency and value are optional. |
| CompleteRegistration | A registration or signup form is submitted. |
| Contact | Someone contacts the business, such as a question about a product. |
| Schedule | Someone books an appointment. |
| Purchase | Checkout is finished and the visitor lands on the confirmation page. currency and value are required. |
A Purchase without currency and value is incomplete by Meta's reference. A lead form that never checks out should send Lead, on the thank-you page, and skip Purchase.
Custom events are names you invent. Since 2 September 2025, Meta has been flagging custom conversions that suggest a health condition or a financial status, and those flagged conversions cannot be used on new campaigns. A standard Lead avoids that restriction. Details are on the conversion tracking page.
Where Facebook Pixel data stops
The pixel records the event and sends it to Meta. Ads Manager then shows campaigns, ad sets, and ads against those events. The CRM holds the name, the company, and the closed amount.
| What you want | Where it lives |
|---|---|
| Page views and standard events | Events Manager |
| Campaign, ad set, and ad results | Ads Manager |
| Name, email, company | The CRM contact |
| Closed amount | The CRM deal |
The pixel's ROAS uses the value on the events you send. A Lead with no value counts as a lead. Two ads can produce the same lead count and very different invoices. The figures below are made up so that split is easy to see.
| Ad | Leads | Closed revenue |
|---|---|---|
| webinar-signup | 20 | $4,000 |
| demo-offer | 8 | $31,000 |
Illustrative numbers, not Trakt customer data.
Events Manager ranks webinar-signup first when the campaign optimizes for Lead. A closed-won report ranks demo-offer first. Facebook ad tracking, from the campaign to the pipeline, is the same gap at campaign level.
How do you connect Meta Pixel tracking to closed revenue?
Keep the campaign name on the deal, then sum closed-won value by that field. The pixel does its job in Events Manager. The revenue report is a CRM report.
-
Put UTMs on every Meta ad URL. Use one spelling for the whole account:
utm_source=facebook,utm_medium=paid-social,utm_campaignfor the campaign,utm_contentfor the ad. Lowercase, hyphens, no spaces.facebookandFacebookbecome two sources in analytics. The field-by-field setup is in how to set up UTM parameters for Facebook ads. -
Write those values onto the submission. Hidden fields that read the query string are the manual version. A redirect that drops the query string, or a form that only posts name and email, leaves the lead with a blank source. Why UTM data disappears at form submission and why leads show up as Direct cover those two breaks.
-
Copy the source fields from the contact to the deal. Sales often creates the deal later, and most CRMs leave the contact fields where they are. Closed-loop attribution is the contact-to-deal copy, end to end.
-
Report closed-won revenue by the campaign field. Give the report a full sales cycle. A lead created this week may close next quarter. Meta's ROAS will still show the value on the pixel events. The two numbers answer different questions, and they will disagree. That disagreement is expected.
A deal that closes weeks later can also be sent to Meta through the Conversions API, with currency and value, from your server. That upload is configured in Events Manager. It is a separate project from storing the campaign on the deal.
What Trakt stores on a Meta click
Trakt stores the UTMs from the latest tagged visit in a first-party cookie for 90 days. A return in the same browser, with no new tags, keeps that campaign. A later ad click that brings its own UTMs replaces them, because the stored value follows the latest tagged visit.
On submit, Trakt records the submission with that source attached, including when the form has no hidden fields. Won deal value is credited to utm_source on Trakt's dashboard. A revenue-by-campaign report inside your own CRM still needs the hidden field and the contact-to-deal copy above.
The pixel install stays in Events Manager. The upload of closed deals back to Meta stays in the Conversions API. HubSpot, Salesforce, and Pipedrive stay your CRM's own mapping.
Pre-register for Trakt when you want the 90-day cookie and the submission record without adding the fields by hand.
Frequently asked questions
Is the Facebook Pixel the same as the Meta Pixel?
Yes. Facebook Pixel tracking and Meta Pixel tracking are the same snippet. Meta's developer docs call it the Meta Pixel, and the base code you copy from Events Manager is still the Facebook Pixel code, with your pixel ID inside fbq('init') and a PageView on each load. Create it in Events Manager, put the base code in the head of every page you measure, and confirm a PageView event before you add Lead or Purchase.
Do I need the Conversions API as well as the Meta Pixel?
Meta's setup guide says to use the Conversions API alongside the pixel when you share events with Meta. The pixel runs in the browser. The Conversions API sends events from your server. If both send the same action, pass the same eventID on the browser call, as the fourth argument of fbq('track'), so Events Manager can deduplicate them. Meta's pixel reference is the spec for that argument.
Which Meta Pixel event should a lead form send?
Send Lead when a sign-up is completed. Meta's reference describes Lead that way, and lists currency and value as optional. Send Purchase only when checkout finishes, and include currency and value, because Meta requires both on Purchase. Put the fbq('track') call on the confirmation page or on the button click. Then open Events Manager and confirm the event arrived.
Will the Facebook Pixel show which campaign closed revenue?
The pixel shows the events you send, in Events Manager and Ads Manager. The closed amount lives on the CRM deal. Put utm_source, utm_medium, utm_campaign, and utm_content on the ad URL, store them on the form submission, and copy them from the contact to the deal. A closed-won report grouped by that campaign field is the revenue number. Meta's ROAS uses the value on the events you send, so the two reports will differ.
How do I check that the Meta Pixel is firing?
Load a page that contains the base code, then open the pixel in Events Manager and look for PageView. Meta says to wait a few minutes and refresh if the event is missing. The Meta Ads Data Advisor Chrome extension is what Meta's get-started guide recommends when an event looks wrong, especially once you add conversion events. A PageView with no Lead, after a real form submit, means the base code is in and the Lead call is missing.
