Skip to main content
Consent Mode v2Engagement pattern

Migrating to Consent Mode v2 without losing conversions or compliance

Consent Mode v2 adds ad_user_data and ad_personalization to the two signals that existed before, and a banner that only sets the old pair leaves the new ones undefined — which Google treats as unset, not granted. The migration is mostly verification rather than construction: confirm all four signals are set, confirm the default fires before any tag in the same document, and confirm that denying consent actually stops data leaving. Most banners pass the first check and fail the third.

Free30 minutesNo obligation

Consent Mode v2 · what breaks

The situation, as it usually presents — Consent Mode v2

  1. 01

    A banner installed but never verified

    Consent Mode configured in the UI and assumed working.

  2. 02

    A conversion drop dated to the banner install

    Which points at defaults rather than at consent rates.

  3. 03

    Nobody able to say what a denial actually does

    Compliance risk in one direction, lost data in the other.

Consent Mode v2 · the fix

What changes — Consent Mode v2

  • All four signals set explicitly

    None left undefined.

  • Defaults firing before any tag

    In the same document, not just earlier in the file.

  • Denial verified by testing it

    Rather than assumed from configuration.

Consent Mode v2 · architecture

Why this pattern keeps recurring — Consent Mode v2

Consent Mode fails quietly in both directions, and the failure modes look identical from the dashboard.

  1. 1

    Undefined is not granted

    A banner setting only ad_storage and analytics_storage leaves the v2 signals unset, and Google treats unset conservatively.

  2. 2

    Order beats configuration

    A default that fires after the tag it gates has already lost. This is the single most common fault.

  3. 3

    The banner reports its own state

    Not what left the browser. Those are different things and only one is checkable.

  4. 4

    Rejecting is not the same as not choosing

    They are distinct states and many implementations conflate them.

Consent Mode v2 · diagnose

How the root cause gets found — Consent Mode v2

In this order. Each step rules out a class of cause, so the last one usually has a single explanation standing.

  1. 01

    Capture outbound requests in all three states

    Before choice, after accept, after reject.

  2. 02

    Confirm all four signals are being set

    Not just the legacy pair.

  3. 03

    Check what runs first in the document

    Order, not just presence.

  4. 04

    Test a partial choice

    Analytics yes, advertising no.

  5. 05

    Compare conversion volume against the install date

    It names the cause.

Consent Mode v2 · prove

How the work is proven — Consent Mode v2

Against the client's own records, not a dashboard turning green.

Source of truth

Outbound network requests captured under each consent state

  • All four signals confirmed set on a live page.
  • Default state confirmed executing before any measurement tag.
  • Denial verified by capture — nothing leaves.
  • Each banner choice tested individually, including partial.
  • Reconciled over a fully closed window, matched on ID rather than on totals.
  • Payload evidence captured from real transactions and handed over.
  • The same reconciliation repeated 30 days later.

Consent Mode v2 · free audit

What we check in the free audit

  • Capture outbound requests in all three states
  • Confirm all four signals are being set
  • Check what runs first in the document
  • Test a partial choice
  • Compare conversion volume against the install date

Checked against

Outbound network requests captured under each consent state

Get my free conversion tracking audit

Free30 minutesNo obligation

Consent Mode v2 · when not to buy

Why there are no client numbers on this page — Consent Mode v2

Most agency case studies lead with a percentage. This one doesn't, and the reason is worth stating.

  • We don't publish client results we can't substantiate. An audit of this site in August 2026 found named testimonials and before-and-after figures that had never been measured — all of it was removed, and nothing has replaced it that isn't checkable.
  • The results that do exist belong to clients under agreement. Publishing anonymised numbers without their sign-off would be the same problem in a thinner disguise.
  • What we will commit to in writing is 95%+ conversion accuracy and 8+ Meta Event Match Quality, reconciled against your own order records. That is checkable by you, which a case study percentage never is.
  • For proof from actual clients, the video testimonials on the site are real people describing their own rebuild. That is the strongest evidence we have, and it isn't a number we wrote.

Consent Mode v2 · what we deliver

What the work involves — Consent Mode v2

  • Default consent state audited

    Order of execution matters more than value.

  • Update calls checked on every choice

    Accept all, reject all, and partial.

  • Regional defaults reviewed

    If the site serves the EU as well as the US.

  • Denial tested with network capture

    The only proof that counts.

Written guarantee

95%+ tracking accuracy

Measured against Outbound network requests captured under each consent state. Miss it and we keep working at no cost.

Get my free conversion tracking audit

Pricing

Pick the package that fits your ad spend

Browser-side starter

$400One-time fee · lifetime ownership

Repairs the fault in your existing browser-side setup and verifies it on a live transaction. Honest about its ceiling: it fixes this instance, not the class.

  • Root cause fixed, not worked around
  • Verified on a live transaction
  • Reconciled against your own records
  • Written handover
Fix what I have

1st-party server-side

Recommended

$800One-time fee · most popular

Removes the class of failure rather than this instance. Money events sent from your order records through a first-party container on your own subdomain, so the browser can no longer lose them.

  • First-party server container on your own subdomain
  • Money events from your order records, not the browser
  • Deduplicated on a shared event ID at every destination
  • First-party cookies beyond Safari's 7-day cap
  • 95%+ accuracy and 8+ Meta EMQ, guaranteed in writing
Rebuild it server-side

Full 1st-party stack

$1,800One-time fee · lifetime ownership

Every paid channel server-side plus the offline loop, for advertisers whose spend makes an attribution leak more expensive than the build.

  • Everything in 1st-party server-side
  • Pinterest, Snapchat, Reddit and LinkedIn CAPI
  • CRM and offline conversion loop
  • Refunds reversed at every destination
  • Monitoring so the next break surfaces in days
Get the full stack

FAQ

Consent Mode v2 questions, answered

Reported conversions usually fall, because some were being counted without consent. Modeling recovers part of it. The lower number is the honest one.

Free · 30 min

Get consent verified rather than assumed

Free30 minutesNo obligation