Tracking

Tracking pixel audit: GDPR & ePrivacy compliance for SMBs

Tracking pixels share visitor data with ad networks the moment they fire. Here is what an audit checks, why pixels are the most-fined item on SMB sites, and how to keep them and stay compliant.

By Veracly Compliance Team8 min read

On most SMB sites, the highest compliance risk is not the cookie banner itself — it is the tracking pixels behind it. Pixels are how your site reports visitor behaviour to advertising networks, and they almost always fire on page load by default. In the EU and UK, that pattern is non-compliant on every visit.

This article covers what a tracking pixel audit looks at, the platform-by-platform behaviour, and the two installation patterns that actually keep pixels working without breaking the law.

What a pixel actually does

When a tracking pixel fires, four things happen in roughly 50 milliseconds:

  1. The browser sends an HTTP request to the platform (e.g. connect.facebook.net).
  2. The request includes the current URL, referrer URL, IP address, user agent, screen size, and any custom parameters the site attached (cart contents, signup intent, etc.).
  3. The platform sets a cookie (_fbp, tt_*, li_*) on the platform’s domain. If the user is logged into Facebook, TikTok, or LinkedIn in the same browser, the platform now ties the visit to that user’s identity.
  4. The pixel loads its supporting JavaScript, which can fire additional events (PageView, ViewContent, AddToCart, Lead, Purchase) on subsequent interactions.

For an EU/UK visitor, every step beyond the first is a personal-data processing activity that needs a legal basis. The only feasible legal basis for advertising tracking is consent (Article 6(1)(a) GDPR), and that consent has to be given before the pixel fires.

What an audit checks, platform by platform

Meta Pixel (Facebook / Instagram)

The default install snippet from Meta’s admin loads fbevents.js immediately and fires PageView on every load. The audit confirms this and reports it as the most common failure on SMB sites in the EU. The Meta-recommended fix is to deploy via Google Tag Manager with consent-mode triggers, or to use the Pixel Helper’s fbq('consent', 'revoke') call before consent and grant after.

TikTok Pixel

The TikTok pixel similarly fires on page load by default. The audit checks that the pixel is gated by the CMP and uses TikTok’s consent API (ttq.consent('granted')) when the user accepts.

LinkedIn Insight Tag

LinkedIn’s Insight Tag fires on every page and stores both a first-party and a third-party cookie. It is particularly common to see it deployed unguarded on B2B SMB sites. The audit reports any first-load fire and any cookie set before consent.

Google Ads conversion tracking

Google Ads tracking integrates tightly with Consent Mode v2. The audit verifies the consent state passed to gtag on first load and on consent change. If Consent Mode v2 is not deployed, advertising signals fire regardless of the user’s choice — non-compliant.

Pinterest, Snap, Twitter/X, Reddit

All similar in pattern: load on page load by default, set cookies, send page metadata to the platform. All require gating behind consent.

Why this is the highest-risk item

The CNIL’s 2024 enforcement priorities specifically called out pixel non-compliance as a focus area. The Italian Garante issued a series of decisions in 2023 sanctioning small e-commerce sites for unguarded Meta Pixels, with fines in the €5,000–€50,000 range — small enough to not make headlines, large enough to threaten an SMB’s viability. The Spanish AEPD has issued similar decisions. The pattern is consistent: regulators look at the network tab, see a pixel fire before consent, and issue.

The two patterns that work

Pattern 1: CMP-gated script load

The cleanest approach. Your CMP exposes an event when the user has consented to a specific category. Listen for the event and load the pixel script only when it fires.

// Cookiebot example — replace with your CMP's API
window.addEventListener('CookiebotOnAccept', () => {
  if (Cookiebot.consent.marketing) {
    !function(f,b,e,v,n,t,s) { /* Meta Pixel snippet */ }
    fbq('init', 'PIXEL_ID');
    fbq('track', 'PageView');
  }
});

The advantage is total: no script is loaded, no cookie is set, no request is made until consent exists. The disadvantage is that the conversion happens after consent, so you lose visibility into rejected users — which is the whole point.

Pattern 2: Consent-mode integration

For platforms that support it (Google, Meta, TikTok), consent mode lets the script load but defer or anonymise its behaviour until consent. With Google Consent Mode v2, for example, you load gtag but pass consent: 'denied'until the user accepts; the platform then receives only aggregated, modelled signals.

Most regulators accept consent mode as a valid implementation; some (notably the Hamburg DPA in 2023 guidance) have raised concerns about whether the “modelled” signals constitute processing without consent. The pragmatic advice for SMBs: pattern 1 is safer, pattern 2 gives you better attribution. Pick based on your risk tolerance and revenue exposure.

Audit deliverables that matter

A useful pixel audit gives you, for each platform:

  • The exact request URL fired, the timing relative to the consent banner, and the cookies set.
  • The state of Consent Mode v2 (if applicable) on first load and after each consent path.
  • The recommended fix — code snippet, GTM trigger configuration, or CMP setting.
  • A re-test after the fix to confirm.

How Veracly approaches pixel audits

Veracly fingerprints every known tracker (Meta, TikTok, LinkedIn, Google Ads, Pinterest, Snap, X/Twitter, Reddit, Hotjar, Microsoft Clarity, FullStory, Hubspot, and dozens of others), reports the timing and consent state of each, and gives you a copy-paste fix for the relevant CMP or tag manager. Continuous monitoring catches new pixels the day marketing adds them. Run a scan.

See also: What is a GDPR cookie audit? · What is a cookie banner audit?

Common questions

Do tracking pixels need consent under GDPR?+

Yes. The Meta Pixel, TikTok Pixel, LinkedIn Insight Tag, Google Ads conversion tag, Pinterest Tag, and similar trackers are all third-party trackers that store data on the user's device and share data with the platform. Consent is required before they fire.

What is the difference between a pixel and a cookie?+

A cookie is a small file stored on the user's device. A pixel is a small image (or piece of JavaScript) that, when loaded, makes an HTTP request to the platform — sharing the page URL, referrer, IP, user agent, and any data the site decided to attach. Most pixels also set cookies, so both rules apply.

Can I use server-side tracking to avoid consent?+

No. Server-side tracking (e.g. Meta's Conversions API) still requires consent under GDPR if it processes personal data linked to identifiable individuals. The only thing it changes is how the data is transmitted, not whether the legal basis applies.

How do I install a pixel compliantly?+

Two patterns work. (1) Gate the pixel script inside your CMP's consent gate — only load it when the user has accepted advertising cookies. (2) Use the platform's consent-mode integration (Google Consent Mode v2, Meta's data-processing options, TikTok's consent API) to send "denied" signals when consent is absent.

See where your site stands.

Run a free Veracly scan and get a multi-jurisdiction report — EAA, GDPR, ADA, UK Equality Act, AODA — with copy-paste developer fixes.

Run a free scan

Keep reading