Getting a consent banner onto your site is the easy part. Making sure it actually does what it claims, blocking marketing and analytics tags until a user agrees, and respecting their choice when they decline, is where most implementations quietly fail. A banner that looks compliant but still fires the Meta Pixel before anyone clicks “Accept” is worse than no banner at all, because it gives a false sense of safety while exposing you to real regulatory risk.
This guide walks through four complementary ways to QA a OneTrust implementation. Each one looks at the same question, “are tags respecting consent?”, from a different angle, and together they give you confidence that your setup behaves correctly.
Why Use Four Methods
No single tool gives you the whole picture. A browser extension shows you the categories at a glance, Google Tag Manager shows you the logic behind which tags fire, the network tab shows you the raw requests actually leaving the browser, and a VPN lets you confirm the right rules apply in the right regions. Used together, they catch the things any one method on its own would miss.
Method 1: QA with the Tag Explorer Extension
The Tag Explorer Chrome extension gives you a fast, visual read on which tags and scripts are firing and which consent category they belong to. You can install it from the Chrome Web Store.
What to do:
- Install the extension and load your site.
- Work through the banner options one at a time: accept all cookies, reject all cookies, and then accept just a single category, such as targeting cookies.
- After each action, check which tags and scripts have fired.
The behaviour you expect to see is straightforward. Before any consent is given, only “Strictly Necessary” tags should appear. After “Accept All,” every category should fire. After “Reject All,” only “Strictly Necessary” should remain. And if you accept just the targeting category, only “Targeting” and “Strictly Necessary” should fire, with everything else still blocked.
What to look for:
- Did the marketing and analytics tags, such as GA4, the Meta Pixel, and the LinkedIn Insight Tag, stay blocked until consent was given?
- Do they fire only after “Accept All”?
- Does “Reject All” genuinely stop every optional tag?
This method is the quickest way to spot an obvious failure, like an analytics tag that fires regardless of consent.
Method 2: QA with Google Tag Manager
The extension tells you what fired. Google Tag Manager’s preview mode tells you why. This is where you confirm that the consent logic behind your tags is actually wired up correctly.
What to do:
- Open your site in GTM Preview mode by connecting through Tag Assistant.
- Walk through the same consent actions: load the site with no consent given, then click “Accept All,” then “Reject All,” then accept a single category such as functional cookies.
- In the preview window, check which tags fired and which were blocked at each step.
What to look for:
- Do your triggers actually depend on OneTrust’s consent signal, using
OptanonActiveGroupsor theOnConsentChangedevent? This is the mechanism that ties a tag’s firing to the user’s real choice. - Are your GA4, Ads, and Pixel tags wrapped with the correct consent conditions, rather than firing on a plain page-view trigger?
- The golden rule to confirm: no consent means no marketing tags.
The value of this method is that it catches tags which happen to look correct in a quick test but are not genuinely gated, perhaps because someone added the trigger but forgot the consent condition. The extension might not reveal that on every run; GTM preview makes the logic explicit.
Method 3: QA with the Browser Network Tab
The first two methods rely on tools interpreting what is happening. The network tab in Chrome DevTools shows you the ground truth: the actual requests leaving the browser. If a tracking request appears here before consent, no amount of correct-looking configuration elsewhere changes the fact that data left the page.
What to do:
- Open Chrome DevTools, go to the Network tab, and filter by terms like “collect,” “pixel,” “analytics,” or “ads” to isolate tracking requests.
- Reload the site and watch the requests at each stage.
Before consent, you should see only strictly necessary scripts. After accepting, you should see the tracking requests appear, such as GA4 hits to collect?v=2 and the Meta Pixel firing to tr?id=. After rejecting, none of those requests should fire at all.
What to look for:
- Confirm that the
Set-Cookieresponse headers match the categories the user consented to. - Check whether any third-party domains, such as Google, Facebook, or LinkedIn, appear before consent. They should not.
- For jurisdictions with opt-out rules, validate that a “Do Not Sell” choice actually stops the relevant advertising technology requests.
This is the most authoritative of the methods, because it is not interpreting configuration; it is watching what really happens on the wire.
Method 4: Test Across Regions with a VPN
Consent rules are not the same everywhere, and a OneTrust implementation typically applies different logic depending on where the visitor is. The only reliable way to confirm each region behaves correctly is to actually appear to be in that region, which a VPN lets you do.
What to do:
Connect to a VPN endpoint in each region you need to test, then repeat the checks from the previous three methods. The point is to confirm that the geolocation rules trigger the correct consent model in each place.
A typical set of geolocation rules looks like this:
- EU (GDPR) and UK: opt-in. No optional tags fire until the user actively consents.
- Brazil: opt-in, in line with its data protection framework.
- US states: opt-out. Tags may fire by default, but the user must be able to opt out, and that choice must be respected.
- Default (everywhere else): opt-in, as the safest baseline.
The key thing to verify is that an opt-in region does not behave like an opt-out region, and vice versa. A common bug is a default rule leaking into a region that should have stricter handling, so test the boundaries deliberately.
Bringing It Together
A thorough QA pass uses all four methods because each validates a different layer. The Tag Explorer extension gives you a fast visual check of which categories fire. GTM preview confirms the consent logic behind those tags is correctly wired. The network tab proves what is actually leaving the browser. And VPN testing confirms the right rules apply in the right regions. If a tag passes all four, you can be genuinely confident it respects consent.
The mindset that matters most is to trust the network tab above everything else. Configuration can look perfect and still misbehave, but a request either fired before consent or it did not. When the four methods disagree, the network tab is the source of truth, and it is the evidence that will hold up if your compliance is ever questioned.
See you soon.
[…] should be sent on every page so GA4 associates them with the user profile. Set them in the GA4 Configuration […]
[…] Privacy and Consent Mode + QA: https://datalad.co.uk/how-to-qa-a-onetrust-consent-management-implementation/ […]
[…] If consent is your main use case, it is worth knowing that modern setups often pair or replace this pattern with GTM’s built-in consent mode and CMP integrations, which handle the same problem declaratively. Sequencing remains the right tool when your consent logic lives in a custom script, and either way the implementation deserves proper QA, the kind covered in my guide to testing a OneTrust consent implementation. […]
[…] If consent management is part of that picture, the testing approach from my guide on QA-ing a OneTrust consent implementation pairs naturally with a Zone […]
[…] sense of how to verify this kind of gating actually holds, the approach in my guide to QA-ing a consent implementation applies directly, and the broader pattern of feeding clean structured data to tags is covered […]