# Consent Mode v2 for paid media tracking

ad_storage, ad_user_data and modelled conversions. What June 2026 Ads changes mean for your CMP and GTM.

- Date: 2026-08-02
- Category: SEM

# Consent Mode v2 for paid media tracking

Consent Mode v2 Google Ads tracking is the difference between a CMP that looks finished and an Ads account that still receives conversion data. I am a Gold Coast web developer with 18 years on storefronts. Australian stores are not in the EEA, but EU and UK visitors still hit them, and Google still expects Consent Mode signals if you want ads storage and modelled conversions to behave. In 2026 that is not a banner redesign. It is `ad_storage`, `ad_user_data`, `ad_personalization` and `analytics_storage` firing in the right order, every time.

Google's [Consent Mode documentation for Google Ads](https://support.google.com/google-ads/answer/10000067) is the policy layer. Tag platform developer docs are the implementation layer. This note is what I actually check on WordPress, Shopify and Magento when paid media says "conversions fell off a cliff" and the banner still pops up.

June 2026 made the stakes obvious. Google moved advertising data that flows into Google Ads onto Consent Mode's `ad_storage` signal, rather than leaving a dual control with Google Signals. If your CMP never sets `ad_storage` to granted when the user accepts ads, Google Ads can stop receiving the data it used to get through a side door. The campaign UI looks the same. The budget still spends. The conversions quietly thin out.

## What Consent Mode v2 Google Ads changed in June 2026

Consent Mode v2 Google Ads changed in June 2026 because `ad_storage` became the gate for advertising data into Google Ads, while Google Signals stayed on the Analytics side for things like demographics and cross-device reporting inside GA4. If you already had a correct v2 implementation, this was a validation exercise. If you had a banner that stored a cookie and never called `gtag('consent', 'update', ...)`, you discovered the gap when modelled conversions and remarketing lists sagged.

v2 itself is older than that date. The extra parameters are `ad_user_data` and `ad_personalization`. EEA, UK and Switzerland traffic has needed them for personalised ads features. I still implement all four parameters globally. A single code path is easier to test than a geo fork that forgets Australia-bound EU travellers on holiday.

Basic versus advanced still matters. Basic Consent Mode holds tags until grant. Advanced sends cookieless pings when denied so Google can model. I prefer advanced on stores that already have a CMP and a legal basis for that ping. I do not pretend modelling replaces a grant. I do pretend that basic mode plus a 40 percent deny rate will starve Smart Bidding if you were used to cookie-era volume.

![Consent Mode v2 Google Ads dashboard on a laptop in an office](../../images/blog/consent-mode-paid-media-1.jpg)

Default state is denied for ads and analytics until the user chooses. That default has to run before the Google tag. The classic break is GTM loading, tags firing with implied grant, then the CMP painting a banner. Google's model of the world is then nonsense, and you may also have a compliance problem. I am not your lawyer. I am the person who can see in Tag Assistant that `consent default` never happened.

WordPress stores often inherit a plugin CMP, a theme pixel, and a GTM container from three different years. I wrote a sibling note on [setting up Google Consent Mode v2 on WordPress](https://alanvo.com/blog/wordpress-consent-mode-v2/). The paid media version is the same plumbing with a harsher outcome: bidding models, enhanced conversions and remarketing sit downstream.

Enhanced conversions need `ad_user_data` granted to send hashed identifiers. I cover the hash itself in [how to set up Google Ads enhanced conversions](https://alanvo.com/blog/google-ads-enhanced-conversions/). Consent Mode v2 Google Ads work is the permission layer. Hashing is the identity layer. Skip either one and you will blame the other.

## How Consent Mode v2 Google Ads signals actually fire

Consent Mode v2 Google Ads signals fire in two beats: default, then update.

On first load I want a consent default command with all four keys set to denied (or to a documented regional default that still denies ads storage in regions that require it). This command must precede `gtag` config and GTM's Google tags. In GTM, that usually means a Consent Initialization trigger, not a window-loaded afterthought.

When the user accepts categories, the CMP should map those categories onto Google's keys. Marketing or ads acceptance maps to `ad_storage`, `ad_user_data` and usually `ad_personalization`. Analytics acceptance maps to `analytics_storage`. Partial accept is normal. "Accept all" is not the only path. If your banner only has accept and reject, reject must send denied for ads keys, not silence.

The update must be a consent update event, not a page reload that hopes defaults changed. SPAs and Shopify's newer checkout surfaces can miss the update if the CMP binds only to the first paint of the theme. Checkout extensibility is a separate JavaScript world. If purchase happens there, you need consent state in that world too, or you purchase-tag without permission or without user data.

![Shopping ads style product photos on a table](../../images/blog/consent-mode-paid-media-2.jpg)

Google Ads tags in GTM should be marked with the built-in consent checks. A conversion tag that ignores consent will fire anyway and you will think you are clever until the account gets restricted. A conversion tag that waits correctly may fire later, on the thank-you page after grant. That is acceptable. Firing a purchase before default consent is not.

Modelled conversions appear in Google Ads when volume and consent rates clear Google's thresholds. I do not quote a magic percentage from a vendor blog. I look at whether the account is eligible, whether Advanced mode is on, and whether enough converting users grant ads storage. If deny rates are extreme, modelling cannot invent a market.

Australia-specific caution: the Privacy Act still exists even if Consent Mode is an EU-shaped tool. I do not geo-disable the CMP for `.au` visitors as a performance hack if the store ships to Europe. I also do not block the Google tag entirely for everyone because one lawyer was nervous. Default denied plus a real choice is the engineering translation of "do not sneak identifiers."

## Production checklist for CMP, GTM and defaults

A paid media stack is ready when Tag Assistant shows a consent default before any Google tag, and an update that matches the banner click.

1. Inventory every Google tag: GTM, gtag in the theme, apps, Shopify pixels, Magento modules. One consent owner. Extra gtag.js copies will ignore your CMP.
2. CMP actually integrated with Consent Mode v2, not only with a blocking list of script URLs. Blocking without signals is a blackout, not v2.
3. Consent Initialization in GTM (or equivalent in gtag) sets all four parameters.
4. Banner actions map to those four parameters. Test accept all, reject all, and a custom mix if the UI offers it.
5. Ads conversion tags use GTM consent built-ins. No "fire on all pages" purchase tags.
6. GA4 configuration respects `analytics_storage`. Do not expect GA4 remarketing audiences to fill if ads keys stay denied.
7. Enhanced conversions only send `user_data` after `ad_user_data` granted.
8. Region settings in Google Ads and GA4 do not contradict the CMP. A default granted for a region you did not intend is a bug.
9. Staging and production both tested. A CMP key that only works on localhost teaches you nothing.
10. Document who can change the banner copy. Marketing must not swap a CMP plugin on Friday without a Tag Assistant pass.

![Landing page on a phone next to a notebook](../../images/blog/consent-mode-paid-media-3.jpg)

I keep a paper test: Chrome, Safari, a reject-all path, an accept-all path, and a purchase on each. Safari is where people discover ITP plus deny.

## What breaks after a CMP refresh

A CMP refresh breaks paid media when the new snippet loads asynchronously after GTM. Defaults never apply. Tags fire with granted-by-omission. Then the banner appears. Users think they were asked. They were asked late.

Another break: the CMP writes a first-party cookie of its own and never calls Google. Legal feels safe. Google Ads sees no signals. After June 2026 that can mean no ads data from linked GA4 either.

A third break: accept all updates `ad_storage` but not `ad_user_data`. Enhanced conversions stop sending hashes. Diagnostics look like a GTM problem. It is a mapping problem.

A fourth break: Shopify app pixels with their own consent, plus a theme CMP, plus GTM. Three sources of truth. Purchase fires twice on accept and zero times on a custom checkout path.

A fifth break: modelled conversions mistaken for real ones in a board pack. Finance needs gateway revenue. Ads will show a modelled component. If you cut spend because "Google is making up numbers," you may be cutting the only remaining view of denied-traffic demand. Read the documentation, then keep a gateway reconciliation.

On [retail conversion at scale](https://alanvo.com/work/retail-conversion/) I treated sessions and conversion as something you reconcile, not something you decorate. Consent Mode is the modern version of that discipline. When the banner ate the signal, we would have been arguing about merchandising with a broken instrument.

## How to measure consent rates without fooling yourself

Measure three layers.

Tag Assistant and GA4 DebugView: default and update events, parameter by parameter, on the purchase path. If you cannot see the update, Google cannot either.

CMP analytics: accept, reject, custom. If 90 percent bounce the banner without a choice, your overlay is the conversion killer, not Google Ads. I have seen banners that block the add-to-cart. That is not a consent win.

Google Ads privacy and conversion modelling diagnostics: eligibility, consent, whether enhanced conversions are receiving user data. Use them as health checks. Do not use them as a CRO score.

Reconcile gateway orders to Ads conversions weekly with conversion lag. A post-June-2026 drop that lines up with a CMP deploy is the CMP until proven otherwise. A drop that lines up with a Creative refresh is not.

![Credit card and laptop for conversion tracking work](../../images/blog/consent-mode-paid-media-4.jpg)

I do not publish a target consent rate for my own clients as a vanity KPI. I publish whether signals fire. The [retail Magento conversion work](https://alanvo.com/work/retail-conversion/) moved year-on-year sales by $2.5 million over three years because the offer, the journey and the measurement agreed. A banner cannot replace that. A broken banner can hide it.

## Related work on this site

The [retail conversion at scale](https://alanvo.com/work/retail-conversion/) case is Magento operations and measurement across three stores. Consent Mode v2 Google Ads work is the current version of "do not let the dashboard lie." For the WordPress-specific CMP and GTM sequence, read [set up Google Consent Mode v2 on WordPress](https://alanvo.com/blog/wordpress-consent-mode-v2/). For the hash that rides on top of a grant, read [Google Ads enhanced conversions](https://alanvo.com/blog/google-ads-enhanced-conversions/).

## FAQ

### Is Consent Mode v2 Google Ads required in Australia?

Consent Mode v2 Google Ads is strictly required for personalised ads features on EEA, UK and Switzerland traffic. Australian stores still get that traffic. I implement v2 everywhere so the tag path is one path. Local privacy law is a separate conversation with whoever advises the business.

### Does Consent Mode v2 Google Ads reduce conversion volume?

It can reduce observable cookie-based conversions when people deny ads storage. Advanced mode and modelling try to fill part of the gap. If volume falls to zero, you do not have modelling. You have a tag that never fires or a default that never updates.

### Can I run Consent Mode v2 Google Ads without a CMP?

You can call consent default and update yourself. In production, a CMP is how merchandisers will actually change copy and categories without editing GTM. Homegrown banners rot. If you DIY, you still owe the four parameters and the timing.

### What June 2026 change should I verify for Consent Mode v2 Google Ads?

Verify that `ad_storage` granted actually happens on accept, and that Google Ads still receives conversion data after the June 2026 shift away from Google Signals as a fallback for ads data. Tag Assistant plus a week of gateway reconciliation will tell you faster than a redesign of the banner colours.


![Marketing meeting around laptops](../../images/blog/consent-mode-paid-media-5.jpg)


HTML version: https://alanvo.com/blog/consent-mode-paid-media/
