Skip to content

Consent Mode: basic vs advanced

Last updated: October 3, 20266 min readIntermediateBrandDeveloper

Google Consent Mode passes your visitor's consent choice to Google tags, which adjust how they behave. Google describes two ways to implement it, basic and advanced, and the difference is what happens before the visitor makes a choice. Arqam360 uses advanced consent mode by default, and you can switch to basic.

Consent Mode signals your visitor's choice to Google. It isn't designed to meet any particular legal requirement, and turning it on doesn't make a site compliant with any law. Whether you comply depends on your banner and what it says, the consent records you keep, your privacy policy, and the laws that apply to you.

Basic consent mode

In basic consent mode, Google tags are blocked until the visitor interacts with the consent banner. Nothing is sent to Google before that, not even the consent state. If the visitor grants consent, the Google tags load and send the default consent state, then the updated one. If the visitor doesn't consent, no data reaches Google at all, and Google's conversion modelling uses a general model.

Advanced consent mode

In advanced consent mode, Google tags load as soon as the page opens, with consent denied by default. While consent is denied, they send the consent state and cookieless pings. When the visitor grants consent, cookies are written and full measurement data is sent. Thanks to the cookieless pings, Google can use an advertiser-specific model for conversion modelling, which Google describes as more detailed than the general model.

Side by side

  • Tag loading: basic blocks tags until the visitor interacts with the banner. Advanced loads them with defaults set to denied.
  • Before a choice: basic sends nothing to Google. Advanced sends the consent state and cookieless pings.
  • After the visitor grants consent: in both modes, tags send full measurement data.
  • After the visitor declines: basic sends nothing. Advanced sends cookieless pings only.
  • Conversion modelling: basic gets a general model. Advanced gets an advertiser-specific model.

Advanced consent mode with Arqam360 (the default)

You don't need to change anything. On every page, the Arqam360 script sets the default before anything else it does: ad_storage, ad_user_data, ad_personalization and analytics_storage denied, functionality_storage and security_storage granted. When the visitor chooses, it sends an update that matches the choice: marketing maps to ad_storage, ad_user_data and ad_personalization, and analytics to analytics_storage. With the Arqam360 template in Google Tag Manager, the template sets the same defaults through Tag Manager's consent API. Your Google tags aren't blocked; they adjust to the consent state.

Basic consent mode with Arqam360

Basic mode means Google tags don't load before consent. Pick the way that matches how you installed Arqam360:

1

Script on your site or a platform app: turn on script blocking

In your Arqam360 dashboard, open Widget → Compliance Settings and turn on Enforce Script Blocking. Arqam360 then holds back Google's scripts (gtag.js, gtm.js, Google Analytics, Google Ads) and other trackers until the visitor consents to the matching category, and releases them once they do. If the visitor declines, they never load.

2

Start blocking as early as possible

If you added the script tag yourself, also add data-enforce-blocking="true" to it. Blocking then starts as soon as the script runs, instead of after your dashboard settings load. Keep the script first in <head>.

3

Google Tag Manager: use consent checks

If your Google tags run in Google Tag Manager, keep the Arqam360 template on Consent Initialization - All Pages. Then open each Google tag, go to Advanced Settings > Consent Settings, choose Require additional consent for tag to fire and add the consent types it needs, for example ad_storage for Google Ads and analytics_storage for GA4. Google says such a tag "will only fire if the status of all specified consent types are 'granted' when the tag is triggered".

4

Check it

Open your site in a private window and don't choose yet. In your browser's Network tab there should be no requests to google-analytics.com, googleadservices.com or doubleclick.net, and with script blocking none to googletagmanager.com either. Accept, and the Google requests start.

Script blocking also holds back trackers that aren't Google's, such as the Meta Pixel and TikTok, until consent, and it can break site features that depend on them. Test your site after turning it on, and add data-consentiq-bypass="true" to any script that must never be blocked.
Script blocking recognises Google tags by Google's own addresses. A tag served through Google tag gateway loads from your own domain instead, so use advanced consent mode for those tags. It is the recommended setup for Google tag gateway.

Which one to choose

  • Advanced keeps more measurement: cookieless pings let Google model conversions from visitors who decline, with an advertiser-specific model.
  • Basic sends nothing before consent, and nothing at all for visitors who decline. Modelling is limited to Google's general model.
  • Basic needs more testing, because blocking scripts can break features that depend on them.
  • For tags served through Google tag gateway, use advanced.
  • The choice depends on your company's policies and your legal advice. Google leaves it to you: "Check your company's guidelines to pick an implementation method and which defaults to set."

Switching between modes

You can switch at any time. To move to basic, turn on Enforce Script Blocking, or add consent checks to your tags in Tag Manager. To go back to advanced, turn it off and remove data-enforce-blocking from the script tag. Arqam360 sets the consent default and sends the update in both modes; in basic mode no Google tag runs to read them until the visitor consents.

Check which mode your site runs

1

Connect Tag Assistant

Open tagassistant.google.com and connect it to your site, without choosing anything on the banner.

2

Basic

If Tag Assistant says Could not connect, or no Google tag fires before your choice, your Google tags are blocked: your site runs basic mode. Google notes that a blocked Google tag or container can stop Tag Assistant from connecting until you accept on the banner.

3

Advanced

The earliest Consent event shows the default, with On-page Default set to Denied, and your Google tags fire with that state.

4

Make a choice

Accept or decline on the banner. On-page Update in the latest Consent event should match your choice.

If a Google tag runs before your consent default: Google tag gateway (GTG) and consent timing.

How script blocking works in detail: Enable script blocking and quarantine.

Google documentation

Was this article helpful?