Skip to main content

Tracking Pixel Detector API

Written by Kadri - RichAPI Support Team

POST /web_pixels • Credits: 1 credit per call

Tracking Pixel Detector scans one public web page and returns the advertising and analytics pixels on that page. The response groups the pixel IDs by platform, such as Meta Pixel, LinkedIn Insight Tag, TikTok Pixel, Google Tag Manager and Google Analytics 4. Each call costs 1 credit.

What is a tracking pixel?

A tracking pixel is a small block of JavaScript that a website loads on every page view. The pixel sends the visit back to an advertising platform or an analytics platform. Each pixel carries an account ID, and that ID sits in the page HTML. Tracking Pixel Detector reads the page HTML and extracts those IDs. The presence of a Meta Pixel ID means that the company connected the site to a Meta advertising account.

What does Tracking Pixel Detector do?

A company web page does not state the advertising budget of the company. The page HTML still names every ad platform that the company connected to the site. Tracking Pixel Detector solves that problem. The endpoint fetches the raw HTML of one URL and matches it against a fixed set of pixel patterns. It returns each pixel ID that it finds, grouped by platform, plus a total count. One call covers one URL. Tracking Pixel Detector is a specialized endpoint of the RichAPI web scraper family.

Which endpoint does Tracking Pixel Detector use?

  • Method:POST

  • URL:https://api.richapi.ai/api/v1/web_pixels

  • Authentication:x-api-key header

  • Response: Synchronous JSON

  • Credits: 1 credit per call

How to send a Tracking Pixel Detector request

  1. Copy your API key from the RichAPI dashboard.

  2. Set the url parameter to the full page URL.

  3. To accept a cached result, set the cache parameter to true.

  4. Send a POST request to https://api.richapi.ai/api/v1/web_pixels.

  5. Send the API key in the x-api-key header.

  6. Read the data.pixels object from the response.

cURL

curl -X POST https://api.richapi.ai/api/v1/web_pixels   
-H "x-api-key: YOUR_API_KEY"
-H "Content-Type: application/json"
-d '{
"url": "https://hubspot.com",
"cache": true
}'

Python

import requests

response = requests.post(
"https://api.richapi.ai/api/v1/web_pixels",
headers={"x-api-key": "YOUR_API_KEY"},
json={
"url": "https://hubspot.com",
"cache": True,
},
timeout=60,
)
response.raise_for_status()
print(response.json())

Node.js

const response = await fetch("https://api.richapi.ai/api/v1/web_pixels", {
method: "POST",
headers: {
"x-api-key": "YOUR_API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({
url: "https://hubspot.com",
cache: true,
}),
});

const data = await response.json();
console.log(data);

Which parameters does Tracking Pixel Detector accept?

Parameter

Type

Required

Default

Description

url

string

Yes

None

The full HTTP or HTTPS URL of the page to scan for tracking pixels.

cache

boolean

No

false

Set to true to accept a cached result for the same URL.

The parameter names in the request body match the names in the RichAPI dashboard, the MCP tool web_pixels and the n8n operation web_pixels.

Which pixels does Tracking Pixel Detector find?

Tracking Pixel Detector matches 11 pixel patterns. The key in the data.pixels object names the platform. The value is an array of the account IDs found for that platform.

Key in data.pixels

Platform

Kind

ID format

facebook_pixel

Meta Pixel (Facebook Pixel)

Advertising

Digits, for example 1017371921696996

linkedin_insight

LinkedIn Insight Tag

Advertising

Digits, for example 63628

tiktok_pixel

TikTok Pixel

Advertising

Letters and digits, for example C4B9RQJ3K7UVN2A0LSDG

twitter_pixel

X Pixel (Twitter Pixel)

Advertising

Letters and digits, for example o8a2b

pinterest_tag

Pinterest Tag

Advertising

Digits, for example 2613188441947

snapchat_pixel

Snapchat Pixel

Advertising

Hexadecimal with hyphens, for example f4c1a0b2-7d3e-4a51-9c60-2b8e5d17a903

google_tag_manager

Google Tag Manager

Tag manager

GTM- prefix, for example GTM-NZBM4G

google_analytics_ga4

Google Analytics 4

Analytics

G- prefix, for example G-8XKJ2M1Q4P

google_analytics_ua

Google Analytics (Universal Analytics)

Analytics

UA- prefix, for example UA-24631482-1

microsoft_clarity

Microsoft Clarity

Analytics

Letters and digits, for example q7fk2mzp1x

hotjar

Hotjar

Analytics

Digits, for example 1387381

Tracking Pixel Detector finds no pixel outside this list. The response holds a key only for a platform with at least one pixel ID. A page with no Pinterest Tag holds no pinterest_tag key.

How do you qualify a company by its ad spend signals?

The six advertising pixels in the table above are the buy signals. A company installs a Meta Pixel, a LinkedIn Insight Tag or a TikTok Pixel to measure paid campaigns on that platform. The pixel is evidence that the company holds an account there and sends traffic to the site.

Use the result to sort a target list:

  1. Send one Tracking Pixel Detector call for the homepage of each company domain.

  2. Read the data.pixels object from each response.

  3. Count the advertising keys, such as facebook_pixel, linkedin_insight and tiktok_pixel.

  4. Rank a domain with three or more advertising pixels above a domain with none.

  5. Match the platform to your offer. A linkedin_insight key marks a B2B advertiser.

A domain with a LinkedIn Insight Tag and a Meta Pixel runs paid acquisition on two channels. That company is a fit for an ad agency, an attribution tool or a conversion rate product. A domain with only google_analytics_ga4 measures traffic but shows no paid social signal.

What are the limits of pixel detection?

Tracking Pixel Detector matches text patterns against the HTML that the page delivers. That mechanism sets four limits.

Limit

What happens

One URL per call

Tracking Pixel Detector scans the URL that you send and no other page. A pixel that loads only on a checkout page or a pricing page is absent from a homepage scan.

Consent gates

If a consent banner loads a pixel only after the visitor accepts cookies, the pixel ID is not in the delivered HTML. Tracking Pixel Detector does not find it.

Server-side tags

If a company fires a tag from its own server, the account ID never reaches the browser. Tracking Pixel Detector does not find it.

ID only, no spend

Tracking Pixel Detector returns the account ID. It returns no budget, no campaign and no spend figure.

Tracking Pixel Detector runs two passes. The first pass reads the raw HTML over HTTP. If the first pass finds zero pixels, the second pass loads the page in a browser and reads the HTML after the JavaScript runs. The second pass catches a pixel that a tag manager injects at run time.

CAUTION: An empty data.pixels object is not proof that the company buys no ads. The scan still costs 1 credit. Confirm a negative result against a second page of the same site.

What does Tracking Pixel Detector return?

Tracking Pixel Detector returns a synchronous JSON response. The following block is an example response for https://hubspot.com. The pixel IDs are illustrative.

{
"data": {
"pixels": {
"facebook_pixel": ["1017371921696996"],
"google_tag_manager": ["GTM-NZBM4G"],
"google_analytics_ga4": ["G-8XKJ2M1Q4P"],
"linkedin_insight": ["63628"],
"tiktok_pixel": ["C4B9RQJ3K7UVN2A0LSDG"],
"hotjar": ["1387381"]
},
"total_pixels_found": 6
},
"meta": {
"cache_hit": false,
"execution_time_ms": 612,
"quality_warning": null
}
}

Which fields does the Tracking Pixel Detector response hold?

Field

Type

Description

data.pixels

object

The pixels grouped by platform. Each key is a platform name from the pixel table. Each value is an array of account ID strings. An empty object means that the scan found no pixel.

data.total_pixels_found

integer

The total count of pixel IDs across every platform. The value is the sum of the array lengths in data.pixels.

meta.cache_hit

boolean

The cache status of the response. true marks a cached result. false marks a live scan.

meta.execution_time_ms

integer

The time that the call took, in milliseconds.

meta.quality_warning

string or null

A note about a degraded result. The value is null on a normal scan.

How long does Tracking Pixel Detector cache a result?

Tracking Pixel Detector caches a scanned URL for 12 hours. With cache set to true, a second call for the same URL inside that window returns the cached result, and meta.cache_hit is true. The cache parameter defaults to false, so a call scans the live page. To accept a cached result, set cache to true. A cached call and a live call both cost 1 credit.

How much does Tracking Pixel Detector cost?

Tracking Pixel Detector costs 1 credit per call. 1 credit costs $0.02 on the 1,000 and 5,000 credit packs, and less on larger packs. The table uses $0.02. The credit count does not change with the number of pixels found. A page with 11 pixels and a page with zero pixels both cost 1 credit.

Calls

Credits

Cost

1

1

$0.02

100

100

$2.00

1,000

1,000

$20.00

10,000

10,000

$200.00

To qualify 5,000 domains by ad spend signal, send 5,000 calls. That costs 5,000 credits, or $100.00.

Which errors can Tracking Pixel Detector return?

Status

Meaning

What to do

400

The request body failed validation.

Correct the parameter that the message names. Send a full HTTP or HTTPS URL.

401

The API key is missing, wrong or revoked.

Send a valid key in the x-api-key header.

402

The organization has no credits left, or the team reached its monthly spend limit.

Buy credits in the RichAPI dashboard.

403

Endpoint not available on your plan: this API key has no access to this endpoint.

Call GET /api/v1/my-endpoints to list the endpoints this key can use. For access, write to [email protected].

404

The endpoint name is wrong.

Send the request to /web_pixels.

405

The request used a method other than POST.

Send the request again with the POST method.

422

The service could not process a value, for example a URL that does not start with http:// or https://, a URL longer than 2048 characters, or a private network address.

Send a full public HTTP or HTTPS URL.

429

The request rate is over the limit.

Wait, then send the request again. For a higher limit, write to [email protected].

500

The API failed.

Send the request again. If the failure repeats, write to [email protected].

502

The target page did not load.

Check that the URL opens in a browser. Wait a few seconds, then send the request again.

504

The target page took too long.

Send the request again.

RichAPI charges no credit for a 400, 401, 402, 403, 404, 405, 422, 429, 500, 502 or 504 response.

Frequently asked questions

Does Tracking Pixel Detector find a Google Ads conversion tag?

Tracking Pixel Detector holds no pattern for a Google Ads conversion tag, so it reports no google_ads key. It detects the Google Tag Manager container ID and the Google Analytics 4 measurement ID on the same page. A google_tag_manager key shows that the company manages tags in a container, but the container contents are not in the page HTML.

Why does the response hold no facebook_pixel key?

Tracking Pixel Detector adds a key to data.pixels only for a platform with at least one pixel ID. A missing facebook_pixel key means that the scanned page carries no Meta Pixel ID in its HTML. Scan a second page of the same site before you record the company as a non-advertiser.

Does a page with no pixels cost a credit?

Yes. Tracking Pixel Detector costs 1 credit for every 200 response, and an empty data.pixels object is a 200 response. RichAPI charges the credit for the scan, not for the number of pixels found.

Can Tracking Pixel Detector read a page behind a login?

No. Tracking Pixel Detector fetches a public URL and sends no session cookie and no credential. To scan a page behind a login, use the public equivalent of that page.

What is the difference between Tracking Pixel Detector and Tech Stack Detector?

Tracking Pixel Detector returns advertising and analytics pixel IDs, such as a Meta Pixel ID and a Google Tag Manager container ID. Tech Stack Detector returns the technology categories of the site, such as the CMS, the CDN, the framework and the payment tools. Use Tracking Pixel Detector for a paid media signal. Use Tech Stack Detector for a build and hosting signal.

How do you scan many domains at once?

Tracking Pixel Detector accepts one URL per call. Send one call per domain, and run the calls in parallel from your own code. One website_intelligence call returns pixels, meta tags, tech stack, social links and emails for one domain. That call costs 5 credits.

Related articles

Did this answer your question?