The Meta Pixel (formerly Facebook Pixel) is a JavaScript snippet that tracks visitor actions on a website — page views, clicks, form submissions, purchases. According to W3Techs' July 24, 2026 survey, the Meta Pixel is installed on 8.8% of all websites globally, rising to 20.3% among the top one million sites by traffic. WMTips reports it holds a 56.1% ad-tracking market share across 3.6 million analyzed sites — the most widely deployed tracking pixel on the web. For an agency evaluating whether a prospect spends on ads without measuring results, checking takes under 30 seconds and needs no paid tools. This guide covers three free detection methods, what the pixel code looks like, and why a missing pixel on a business already running Facebook ads is a top prospecting signal.
Method 1: View page source and search for the fingerprint strings
The fastest method needs nothing but a browser. Open the target website, right-click anywhere on the page, and select View Page Source (or press Ctrl+U / Cmd+Option+U). This opens the raw HTML the server delivered. Press Ctrl+F and search for any of these strings:
| Search string | What it means |
|---|---|
fbevents.js |
The pixel's JavaScript library URL — always present if the pixel is hardcoded |
fbq( |
The pixel's main tracking function — appears in fbq('init', ...) and fbq('track', ...) |
connect.facebook.net |
The domain the pixel script loads from |
facebook.com/tr?id= |
The <noscript> fallback image URL, contains the pixel ID |
If any of these appear, the Meta Pixel is installed on that page. The pixel ID itself shows up inside the fbq('init', '{your-pixel-id-goes-here}') call — a 15-16 digit number that uniquely identifies the advertiser's pixel. The official base code, as documented in Meta's developer documentation (updated June 30, 2026), looks like this:
<script>
!function(f,b,e,v,n,t,s)
{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(t,s)}(window, document,'script',
'https://connect.facebook.net/en_US/fbevents.js');
fbq('init', '{your-pixel-id-goes-here}');
fbq('track', 'PageView');
</script>
<noscript>
<img height="1" width="1" style="display:none"
src="https://www.facebook.com/tr?id={your-pixel-id-goes-here}&ev=PageView&noscript=1"/>
</noscript>
The code loads a library from connect.facebook.net/en_US/fbevents.js, initializes it with the pixel ID, and fires a PageView event. Meta recommends placing it within the <head> tags on every page.
Method 2: Use Meta's free Chrome extension (Meta Ads Data Advisor)
Meta's own developer documentation describes a free Chrome extension that automates the detection. Formerly called the Pixel Helper, it was renamed Meta Ads Data Advisor in 2026 — Meta's docs were updated June 30, 2026 to reflect the new name. Install it from the Chrome Web Store and log in with a Facebook account.
Once installed, the extension runs in the background. Navigate to any website and the extension icon shows a numbered badge indicating how many pixel events fired on the current page. No badge means no pixel detected. Click the icon to open a side panel listing every pixel found, whether each loaded successfully, and any errors or optimization suggestions.
| Feature | What it shows |
|---|---|
| Badge count | Number of pixel events fired on the current page |
| Pixel list | Every Meta Pixel detected, with its ID |
| Load status | Whether each pixel loaded successfully or errored |
| Error details | Formatting errors, missing events, duplicate fires |
| Optimization tips | Meta's suggestions for improving pixel performance |
This method is faster than source-searching for checking individual sites and catches pixels loaded dynamically via tag managers. The limitation: it requires Chrome and a Facebook login, and is not a tool for bulk-checking hundreds of sites at once.
Method 3: Browser DevTools Network tab (catches tag-manager-loaded pixels)
When a pixel is deployed through Google Tag Manager or another tag management system, the fbq calls may not appear in the page source HTML at all — they get injected when the container script executes. In that case, searching the source for fbevents.js returns nothing, even though the pixel is firing.
Open Chrome DevTools (F12 or Ctrl+Shift+I / Cmd+Option+I), switch to the Network tab, and reload the page. Filter by fbevents or facebook — if the pixel is active, you will see a request to connect.facebook.net/en_US/fbevents.js and subsequent requests to www.facebook.com/tr/ with parameters like ?id=<pixel-id>&ev=PageView. The tr endpoint (tracking) is what the pixel calls to send event data back to Meta's servers.
| What to look for in the Network tab | What it tells you |
|---|---|
Request to connect.facebook.net/.../fbevents.js |
The pixel library loaded — pixel is installed |
Request to facebook.com/tr?id=...&ev=PageView |
A PageView event fired — pixel is working |
Request to facebook.com/tr?id=...&ev=... |
A specific conversion event (Purchase, Lead, etc.) fired |
| No requests to either domain | No Meta Pixel on this page, or it was blocked |
This method is the most technically thorough for a single site but impractical for checking more than a handful of prospects. For a quick pre-call check, Method 1 or 2 suffices. For a technical audit of a client's setup, Method 3 catches edge cases.
Why a missing pixel on an ad-running business is a pitch signal
A business running Facebook or Instagram ads without a Meta Pixel is spending budget blind — Meta cannot optimize for conversions, build retargeting audiences from site visitors, or measure return on ad spend. The ads run, clicks happen, and whatever occurs after the click is invisible to the ad platform's optimization engine.
According to W3Techs' July 2026 survey, the Meta Pixel is installed on 8.8% of all websites globally and 20.3% of the top one million sites by traffic — making it the most widely deployed ad-tracking pixel on the web. A business running Facebook ads without it is in the minority of ad spenders who cannot measure what their ads actually produce.
This is where checking for a pixel crosses over from a technical audit into a prospecting signal. If you have already used Meta's Ad Library to confirm a business is actively running Facebook ads, and then find no pixel on their website, you have a concrete, specific pitch: "You are running ads but have no conversion tracking — here is what that costs you and here is how to fix it." That opening is materially stronger than a generic "we can help with your marketing."
The same logic applies across platforms — we covered the broader ad-visibility landscape in How to See What Ads a Company Is Running, which walks through checking both Meta and Google ad activity. Finding an active ad spender with a tracking gap is the qualification signal that separates a warm prospect from a cold one.
The pixel vs. Conversions API
Meta now recommends deploying the Conversions API alongside the pixel — a server-side event-sharing path that does not rely on browser cookies. From a detection standpoint, the Conversions API is invisible to all three methods above because it sends data from the server, not the browser. A site with only Conversions API (no pixel) shows no fbevents.js, no fbq calls, and no facebook.com/tr requests in the Network tab.
This matters for accuracy: a business might have tracking via Conversions API even if no pixel is detectable. In practice, most businesses that use Conversions API also keep the pixel installed for redundancy — Meta's setup flow defaults to "Conversions API and Meta Pixel" over "Meta Pixel only." A missing pixel is therefore a strong signal of no tracking, but not a guaranteed one. For a pitch, it is still the right opening — the audit finding becomes "your pixel is missing, here is why that matters for browser-side retargeting" rather than "you have no tracking at all."
Checking at scale: where manual methods stop being enough
The three methods above work well for checking five or ten prospects before a discovery call. They do not scale to screening a city's worth of businesses before deciding who is worth an outreach sequence — manual source-viewing at that volume eats hours for a list that goes stale within a week.
That is the gap CloseFast (closefa.st) is built for. It pulls a defined universe of local businesses from Google Maps for a given city and niche, checks their live ad activity and tracking setup across the whole list, and surfaces the ones spending on ads without tracking. Our breakdown of CloseFast vs Clay covers how a flat monthly fee changes the economics versus paying per credit when you are checking hundreds of businesses instead of a handful.
The bottom line
Checking for a Meta Pixel takes under 30 seconds per site. View page source and search for fbevents.js or fbq( for the fastest check. Install Meta's free Ads Data Advisor extension for a badge-count view that catches tag-manager pixels. Use the DevTools Network tab for a technical audit. A business running Facebook ads without a detectable pixel is spending without conversion tracking — a stronger prospecting signal than almost any other free data point.