Real checkExample report · anonymised
17 October 2026 at 17:00 · 3 visits · 2 pages each · took 38 seconds
Serious problems
Microsoft Ads, TikTok pixel, Google Ads and Google Analytics send data before the visitor makes any cookie choice. Microsoft Clarity gets it too.
- 4 problems
- 0 to improve
- 4 passed
Technical details
Where the data went in each of the three visits, and how the score is built
- Google Analytics:cookie-free signal
- Microsoft Ads:still sent after Reject
- TikTok Pixel:stopped
Score 47 out of 100
Each cookie banner check is worth 1–3 points. Things we couldn't check never count against you. The score summarises the checks above — it is not a verdict on the website.
We see what a visitor's browser sends — not what your server sends on its own.
What we saw
Microsoft Ads, TikTok pixel, Google Ads and Google Analytics send data before the visitor makes any cookie choice. Microsoft Clarity gets it too.
These tracking cookies are stored before the visitor makes any choice: TikTok: _ttp, _tt_
enable_ , ttcsid, ttcsid_cookie CU8CULRC77U1H11K0RNG ; Google Ads: _gcl_au ; Google Analytics: _ga, _ga_253B7WDECX ; Microsoft Ads: MUID, _uetsid, _uetvid; Meta (Facebook): _fbp.Why it matters
In the EU and the UK, ad cookies need the visitor's consent first, and so do most analytics cookies. On your site they start before anyone has said yes.
How to fix it — in your cookie tool
We found Cookiebot on this site. Change platform
We found Cookiebot on this site.
Cookiebot
Put your cookie tool's template on the Consent Initialization – All Pages trigger with all four consent types denied by default. Turn on Admin › Container Settings › Enable consent overview and check every tag. Remove any Google or Meta code pasted outside Tag Manager.
Load the CookieYes code first in <head>. Mark trackers it doesn't block by itself with data-cookieyes="cookieyes-advertisement" (or cookieyes-analytics). In the WordPress plugin, switch off Load cookies prior to consent, and keep CookieYes out of WP Rocket / LiteSpeed “delay JS”.
Turn Settings › Safe Mode off, switch on the tracker's integration under Integrations › Services / Plugins, and block anything else in Integrations › Script Center › Block a script. Exclude “complianz” from speed plugins.
Put the Cookiebot script first in <head>, without async/defer, and exclude it from speed plugins. Then use auto-blocking (re-scan after every tracker change) or mark each tracker type="text/plain" data-cookieconsent="marketing" (analytics trackers: statistics).
Put the OneTrust script first in <head>, mark trackers type="text/plain" class="optanon-category-C0004", use the “Opt-in” model for the EU and UK, and re-publish the script after every change.
Load autoblocker.js and the CMP script first in <head>, or mark trackers type="text/plain" data-usercentrics="<service name>". In Tag Manager use the consent_status.* trigger instead of “All Pages”.
Remove pixel or analytics code pasted into theme.liquid and install it through the apps (Facebook & Instagram, Google & YouTube). Make sure your banner app passes the choice on to Shopify.
Connect the pixel through Marketing Integrations — it then waits for consent. Code pasted as Custom Code loads first: set its category to Marketing.
Meta Pixel: call fbq('consent','revoke') before fbq('init', …) on every page, and fbq('consent','grant') only after Accept. Google: set gtag('consent','default', …) to denied above the gtag.js line.
What we saw
After the visitor clicks “Reject”, Microsoft Ads still sends data. Microsoft Clarity gets it too.
The tracking cookie _fbp (Meta) was still stored after the visitor clicked “Reject”.
Why it matters
“Reject” has to stop tracking, not just hide the banner. A tracker that keeps sending after a refusal is the problem visitors are least likely to forgive.
- Your cookie banner appears on the first visit.Visit 1 · homepagePassedPassed
- After “Accept”, Google Analytics counts the visit.Visit 2PassedPassed
- The visitor's choice survives to the next page.Visit 2 · /dukPassedPassed
- Google gets the consent signals Google Ads needs.Visits 1–3PassedPassed