# IsPixelWorking > Independent checker for ad tracking. Paste a landing page URL; a browser in the EU visits it twice (before cookie consent, and arriving from a Meta ad with consent accepted and clicks on the main buttons; monitoring plans add a phone visit) and reports whether the Meta Pixel works: consent handling, duplicate events, event IDs, click ID (fbclid -> _fbc) storage and signs of server-side tracking. Free, no sign-up. It never sends tracking data to ad platforms and never submits forms. Every page listed here has a Markdown version: send `Accept: text/markdown` or append `.md` to the path (`https://ispixelworking.com/index.md` for the home page). ## Docs - [How the check works](https://ispixelworking.com/methodology): the visits, scoring, limitations - [About](https://ispixelworking.com/about): who makes it and why it is independent - [Contact](https://ispixelworking.com/contact): report questions, corrections, opt-outs, security, press - [Agent guide](https://ispixelworking.com/AGENTS.md): what agents can do here and what they cannot - [For AI agents](https://ispixelworking.com/ai-agents): how to connect assistants to the MCP server, tools, limits, API keys - [MCP server](https://ispixelworking.com/mcp): remote MCP server (Streamable HTTP, no sign-in) with check_page, get_report, get_fix_guide and list_findings; card at https://ispixelworking.com/mcp/server-card - [Our checker, for site owners](https://ispixelworking.com/bot): user agent, behaviour, opt-out ## Fix guides - [How to set up the Meta Conversions API (with or without a developer)](https://ispixelworking.com/guides/general.server_side_not_detected/generic): How to set up the Meta Conversions API: what you need, what it costs, options with or without a developer, and how to test and fix missing or duplicate events. - [Duplicate Meta Pixel events on Framer](https://ispixelworking.com/guides/meta.duplicate_pixel/framer): Your Framer site sends the same Meta event twice. Here is where to look in Framer, GTM and plugins to find the second installation. - [Duplicate Meta Pixel events: how to find and remove them](https://ispixelworking.com/guides/meta.duplicate_pixel/generic): Events counted twice? Find the second Meta Pixel installation (theme setting, plugin, Tag Manager or a pasted snippet) and remove it, in about 20 minutes. - [Duplicate Meta Pixel events on Shopify](https://ispixelworking.com/guides/meta.duplicate_pixel/shopify): Your Shopify store sends the same Meta Pixel event twice. Find the second copy in the Facebook & Instagram app, custom pixels, theme code, app embeds or GTM. - [Duplicate Meta Pixel events on Webflow](https://ispixelworking.com/guides/meta.duplicate_pixel/webflow): Your Webflow site sends the same Meta Pixel event twice. Find the second copy in the integrations tab, custom code, Code Embeds, GTM or form events. - [Duplicate Meta Pixel events on WordPress](https://ispixelworking.com/guides/meta.duplicate_pixel/wordpress): Your WordPress or WooCommerce site sends the same Meta Pixel event twice. Find the second copy in plugins, theme settings, code snippets or GTM. - [Facebook click ID (fbclid) lost on Framer](https://ispixelworking.com/guides/meta.fbc_not_set/framer): On your Framer site the fbclid from Meta ad clicks is not saved in the _fbc cookie. Here is how to check redirects, consent and the pixel setup. - [Facebook click ID (fbclid) lost after an ad click](https://ispixelworking.com/guides/meta.fbc_not_set/generic): The fbclid from Meta ads never reaches the _fbc cookie, so Meta cannot tie the sale to the ad. Find where it gets lost: redirects, consent or the pixel. - [Facebook click ID (fbclid) lost on Shopify](https://ispixelworking.com/guides/meta.fbc_not_set/shopify): The fbclid from Meta ad clicks is not saved in the _fbc cookie on your Shopify store. Check domain and market redirects, consent and the Meta Pixel setup. - [Facebook click ID (fbclid) lost on Webflow](https://ispixelworking.com/guides/meta.fbc_not_set/webflow): The fbclid from Meta ad clicks is not saved in the _fbc cookie on your Webflow site. Check Webflow 301 redirects, consent and the Meta Pixel setup. - [Facebook click ID (fbclid) lost on WordPress](https://ispixelworking.com/guides/meta.fbc_not_set/wordpress): The fbclid from Meta ad clicks is not saved in the _fbc cookie on your WordPress site. Check redirects, SEO and language plugins, consent and the Meta Pixel. - [Meta Pixel fires before consent on Framer: how to fix](https://ispixelworking.com/guides/meta.fires_before_consent/framer): Your Framer site's Meta Pixel fires before visitors answer the cookie banner? Route it through Framer's cookie banner or Tag Manager to wait for consent. - [Meta Pixel fires before cookie consent: how to fix it](https://ispixelworking.com/guides/meta.fires_before_consent/generic): Meta Pixel sends PageView before visitors answer the cookie banner? Confirm it, then hold the pixel until consent: in GTM, your consent tool or site code. - [Meta Pixel fires before cookie consent on Shopify](https://ispixelworking.com/guides/meta.fires_before_consent/shopify): Your Shopify store's Meta Pixel sends data before visitors answer the cookie banner. Find the copy that skips Shopify's customer privacy settings and fix it. - [Meta Pixel fires before cookie consent on Webflow](https://ispixelworking.com/guides/meta.fires_before_consent/webflow): Your Webflow site's Meta Pixel sends data before visitors answer the cookie banner. Find every copy in site settings and custom code and gate it behind consent. - [Meta Pixel fires before cookie consent on WordPress](https://ispixelworking.com/guides/meta.fires_before_consent/wordpress): Your WordPress site's Meta Pixel sends data before visitors answer the cookie banner. Find the plugin or snippet that loads it and gate it behind consent. - [Meta Pixel events have no event ID on Framer: how to fix](https://ispixelworking.com/guides/meta.missing_event_id/framer): Without an event ID, Meta cannot deduplicate your Framer site's pixel and Conversions API events. When it matters, and how to send the same ID from both. - [Meta Pixel events have no event ID](https://ispixelworking.com/guides/meta.missing_event_id/generic): Your Meta Pixel events carry no event ID, so Meta cannot match them with Conversions API events. Here is when that matters and how to add one. - [Meta Pixel events have no event ID on Shopify](https://ispixelworking.com/guides/meta.missing_event_id/shopify): Your Shopify store sends Meta Pixel events without an event ID, so Meta cannot deduplicate them with Conversions API events. When it matters and how to fix it. - [Meta Pixel events have no event ID on Webflow](https://ispixelworking.com/guides/meta.missing_event_id/webflow): Your Webflow site sends Meta Pixel events without an event ID, so Meta cannot deduplicate them with Conversions API events. When it matters and how to add one. - [Meta Pixel events have no event ID on WordPress](https://ispixelworking.com/guides/meta.missing_event_id/wordpress): WordPress and WooCommerce Meta Pixel events without an event ID cannot be deduplicated with Conversions API events. Here is how to fix it with a plugin or GTM. - [Meta Pixel not firing after consent on Framer: how to fix](https://ispixelworking.com/guides/meta.not_firing_after_consent/framer): Visitors accept the cookie banner on your Framer site, but the Meta Pixel sends nothing? Check the banner settings, Tag Manager consent and your tags. - [Meta Pixel not firing after cookie consent: how to fix it](https://ispixelworking.com/guides/meta.not_firing_after_consent/generic): Visitors accept cookies but Events Manager stays empty? Find where the consent signal gets lost: the banner, Consent Mode, GTM triggers or the pixel code. - [Meta Pixel not firing after cookie consent on Shopify](https://ispixelworking.com/guides/meta.not_firing_after_consent/shopify): The Meta Pixel is on your Shopify store but sends nothing after visitors accept cookies. Check the banner, Shopify's Customer Privacy API and the pixel itself. - [Meta Pixel not firing after cookie consent on Webflow](https://ispixelworking.com/guides/meta.not_firing_after_consent/webflow): The Meta Pixel is on your Webflow site but sends nothing after visitors accept cookies. Check the built-in integration, your consent tool, custom code and GTM. - [Meta Pixel not firing after cookie consent on WordPress](https://ispixelworking.com/guides/meta.not_firing_after_consent/wordpress): The Meta Pixel is on your WordPress site but sends nothing after visitors accept cookies. Check the consent plugin, caching and optimization plugins, and GTM. - [Meta Pixel and Complianz: fire only after cookie consent](https://ispixelworking.com/guides/consent/complianz): Make the Meta Pixel wait for Complianz marketing consent on WordPress and fire on the same page, via Google Tag Manager, the Script Center or a pixel plugin. - [Meta Pixel and Cookiebot: fire only after cookie consent](https://ispixelworking.com/guides/consent/cookiebot): Make the Meta Pixel wait for Cookiebot consent and fire on the same page once visitors accept marketing cookies, via Google Tag Manager, code or auto-blocking. - [Meta Pixel and CookieYes: fire only after cookie consent](https://ispixelworking.com/guides/consent/cookieyes): Make the Meta Pixel wait for CookieYes Advertisement consent and fire on the same page, with Google Tag Manager, script blocking or Meta's consent API. - [Meta Pixel and OneTrust: fire only after cookie consent](https://ispixelworking.com/guides/consent/onetrust): Make the Meta Pixel wait for OneTrust targeting consent and fire on the same page, with Google Tag Manager, script type rewriting or auto-blocking. - [Meta Pixel and Usercentrics: fire only after cookie consent](https://ispixelworking.com/guides/consent/usercentrics): Link the Meta Pixel to its Usercentrics service so it waits for consent and fires on the same page, with Google Tag Manager, script markup or auto-blocking. ## Blog - [How to check if your Meta Pixel is working](https://ispixelworking.com/blog/check-meta-pixel-working): A green icon in Meta's extension is not proof. How to check your Meta Pixel with Events Manager, Data Advisor and your browser, and fix what you find. - [Facebook Pixel not tracking all purchases? Why Meta shows fewer sales than your shop](https://ispixelworking.com/blog/events-manager-fewer-events): Your shop shows 200 orders, Meta shows 140 purchases. Which part of the gap is normal, which is a tracking problem, and how to find and fix it. - [What is fbclid? The Facebook click ID and the _fbc cookie, explained](https://ispixelworking.com/blog/fbclid-fbc-cookie-explained): fbclid is the click ID Meta adds to links from Facebook and Instagram. What it means, how it differs from UTM tags, whether to remove it, and how to keep it. - [Meta Pixel event deduplication: why every event needs an event ID](https://ispixelworking.com/blog/pixel-and-conversions-api-event-ids): How Meta deduplicates Pixel and Conversions API events, how to set up matching event IDs on Shopify, GTM or custom code, and how to test it in Events Manager. ## What the report can contain - No Meta Pixel found (meta.pixel_missing, info) - Meta Pixel fires before cookie consent (meta.fires_before_consent, critical) - Meta Pixel does not fire after consent (meta.not_firing_after_consent, critical) - Meta blocks this pixel on this website (meta.pixel_blocked, critical) - Meta event IDs repeat across visits (meta.event_id_reused, high) - Duplicate Meta events (meta.duplicate_pixel, high) - Meta events have no event ID (meta.missing_event_id, high) - TikTok events have no event ID (tiktok.missing_event_id, high) - Click ID from Meta ads is not stored (meta.fbc_not_set, high) - Mobile buttons are tracked differently from desktop (meta.mobile_cta_tracking_mismatch, medium) - Click ID saved by your site code in a non-standard format (meta.custom_fbc_format, medium) - Two different browser IDs (_fbp) (meta.conflicting_fbp, medium) - More than one Meta Pixel (meta.multiple_pixels, low) - No advanced matching (meta.no_advanced_matching, low) - No server-side tracking detected (general.server_side_not_detected, info) - Server-side tracking detected (general.server_side_detected, info) - The site blocked our checker (general.blocked_by_site, n/a) - Cookie banner could not be operated automatically (general.cmp_not_operable, info) - Purchase events were not tested (general.purchase_events_not_tested, info) - Button testing stopped early (general.cta_coverage_partial, info) - Tracking through the site's own domain (general.first_party_tracking_detected, info)