The short answer
Some drop is expected: people who say no aren't counted. A big drop usually means one of four things. You're applying EU rules to everyone, Google's tags are fully blocked instead of running cookieless, your consent defaults load too late, or tags are blocked by triggers that also swallow the page view. Each has a quick test.
First, the drop you should expect
A banner that works will reduce what you see. In places where the law says ask first, anyone who clicks "Reject all" or ignores the banner is no longer tracked with cookies. That is the point of the banner.
How much you lose depends on where your visitors are and how the banner asks. What should worry you is a drop bigger than your share of visitors from ask-first regions, or conversions falling while orders and leads carry on as normal.
Cause 1: the strictest rules applied to everyone
Most banners ship with one setting for the whole world, and it's usually the EU's. That means a visitor in Texas gets a wall they didn't need and their visit is dropped until they answer.
Most US states work the other way round. The law lets you track until the visitor opts out. Applying EU rules to American traffic throws away data you were allowed to keep. As one analyst put it: "Applying EEA strictness worldwide throws away hits you were allowed to keep."
How to check: visit your site from a US connection in a private window. If you get the same full-screen banner and your Google requests show consent denied, this is your problem.
How to fix: use regional rules. Ask first in the EU, UK and similar places. Let US visitors opt out, and honour the browser privacy signal (GPC) in the states that require it.
Cause 2: Google's tags blocked instead of cookieless
There are two ways to hold Google's tags. Block them completely until consent, or let them run without cookies and send anonymous pings until the visitor answers. Google calls these Basic and Advanced.
With full blocking, a visitor who never answers leaves no trace at all. With the cookieless approach, Google at least knows a visit or a conversion happened, and it can model some of what it didn't see.
How to check: in the browser's network panel, filter to collect. Before you answer the banner, do you see any request to Google Analytics? None at all means full blocking.
How to fix: decide deliberately. Full blocking is the more cautious reading of EU rules and is common in Germany. Cookieless running recovers more signal, but modelling only works above Google's thresholds: at least 1,000 events a day with analytics storage denied for seven days, and 1,000 daily consented users. Small sites won't see modelled numbers either way.
Cause 3: defaults that load too late
Consent Mode needs a default state set before any Google tag runs. If your banner loads after Tag Manager, or from a Tag Manager tag that fires late, the first hits of each visit go out with no consent state. Depending on the tag, they are dropped or sent wrong.
How to check: open Tag Manager's preview. Look at the very first event on the page. The consent state should already be set there. If it only appears a few events later, your defaults are late.
How to fix: set the defaults from a script placed at the very top of <head>, above your Tag Manager snippet, or from a tag on Tag Manager's "Consent Initialization" trigger. Never from a tag on "All Pages".
Cause 4: blocking triggers that eat the page view
A common do-it-yourself setup adds a blocking trigger to each tag: "don't fire unless marketing consent is granted." Done carelessly, it also blocks the GA4 configuration tag, so there's no page view for anyone who hasn't answered yet, and no session to attach later events to.
One practitioner's warning, from a thread on exactly this: blocking triggers for consent "will completely" wreck your traffic reporting.
How to check: look for tags whose triggers include a consent condition. Especially check the Google tag or GA4 configuration tag.
How to fix: let Consent Mode handle Google's tags and remove consent-based blocking triggers from them. Keep blocking triggers for non-Google tags, which don't read Consent Mode.
A quick diagnostic table
| What you see | Most likely cause |
|---|---|
| Drop across all countries, including the US | Cause 1 |
| Zero Google requests before the banner is answered | Cause 2 |
| Conversions attributed to "Direct" much more than before | Cause 3 or 4 (sessions lose their source) |
| Page views fine, conversions gone | A tag with "Not set" consent settings, or a trigger problem |
| Drop only on one page type, like checkout | A tag on that page fires before or without consent state |
Check that the drop is really tracking
Before changing anything, compare with a source the banner can't touch: orders in your store, leads in your CRM, calls. If those held steady while analytics fell, it's measurement. If they fell too, it's demand, and no consent setting will fix that.
How TagSentry handles this
TagSentry gives each visitor the rules for where they are, so US visitors aren't shown an EU wall. Google's tags run cookieless by default, with full blocking as one switch. Our script sets the defaults because it sits above Tag Manager on the page, and event monitoring shows you, event by event, what still reaches Google after the change.
Sources
- r/GoogleAnalytics: Your GA4 traffic probably did not drop, your consent rate did
- r/GoogleAnalytics: Geo-based consent got my team back real data
- r/GoogleAnalytics: blocking triggers and traffic reporting
- Google Analytics Help: Behavioral modeling for consent mode
- Google Tag Manager Help: Consent mode overview