In this guide · 8 sections
Short answer
Under the PDPA, ad-targeting cookies that collect personal data need consent, and the PDPC recommends on-site cookie preferences. Google requires Consent Mode v2 signals for EEA visitors. Set denied defaults before tags load, update them from your banner, and test in Tag Assistant.
How Google Consent Mode v2 works
Consent Mode passes the visitor's choices to Google tags, which then change behaviour. Google's EEA consent mode update says advertisers must collect consent from EEA end users and share consent signals to keep using Google tags for measurement, ad personalisation and remarketing, and added two signals for this.
- ad_storage: cookies related to advertising.
- analytics_storage: cookies related to analytics, such as visit duration.
- ad_user_data: whether user data may be sent to Google for advertising.
- ad_personalization: whether ads may be personalised (remarketing).
Google's consent mode overview describes two set-ups. Basic blocks Google tags until the visitor interacts with the banner, so nothing is sent before that. Advanced loads tags with default consent (usually denied); while denied, tags send cookieless pings that Google uses for modelling, and they switch to full measurement once consent is granted.
Set up consent mode in Google Tag Manager
This is the most common set-up for WordPress and custom sites. Google's Tag Manager consent documentation describes the features used below.
Choose a consent management platform (CMP)
Pick a banner tool with a Tag Manager template that supports Consent Mode v2. Google recommends a Google-certified CMP if you serve EEA visitors.
Add the CMP tag on Consent Initialization
Fire it on the Consent Initialization - All Pages trigger, which fires before every other trigger. Set default states, typically denied for ad and analytics storage, optionally only for certain regions.
Turn on Consent Overview
In Admin, Container Settings, select Enable consent overview. It lists which tags have consent configured and lets you bulk-edit them.
Configure each tag's consent settings
Google tags have built-in consent checks. For non-Google tags such as the Meta Pixel or TikTok, set 'Require additional consent for tag to fire' with the right consent type.
Link the banner choices to consent updates
Make sure accepting or rejecting a category in the banner sends the matching consent update. Most CMP templates handle this once categories are mapped.
Publish and test
Use Preview and Tag Assistant to check defaults and updates (next section).
Shopify and WordPress set-up
Shopify. In Settings, Customer privacy, you can enable Shopify's own cookie banner. According to Shopify's privacy settings guide, automated settings show the banner to visitors in the UK and EEA if you have active markets there, and it is off elsewhere by default, although you can choose any region. The Shopify banner governs Shopify's tools and pixels; third-party pixels added manually or through apps may need their own handling.
If you use a third-party banner app, Shopify says to choose one integrated with its Customer Privacy API, set the same consent regions in Shopify and in the app (otherwise non-essential data can be processed before consent), and mention Shopify by name in the banner text. See our Shopify launch checklist for where this fits before going live.
WordPress. Use a consent plugin that supports Google Consent Mode v2 and either loads Google tags itself or works with Tag Manager. Avoid running two systems at once, for example a plugin inserting Google Analytics directly while Tag Manager also loads it, because one copy will ignore consent.
Do it yourself or get help?
With Tag Manager and a CMP template, a straightforward site takes a few hours to set up and test. It gets fiddly with several ad platforms, theme-embedded scripts, or a mix of Shopify apps.
IT Sorted's Speed & SEO Fix (S$390) includes script clean-up, which is where duplicate and hard-coded tags are usually found, along with Search Console set-up. The PDPA Compliance Pack (S$690) includes the website privacy policy and a cookie and consent notice that matches what your site actually uses.
Frequently asked questions
The PDPA has no cookie-specific rule, but the PDPC says consent is required when cookies are used to collect personal data for targeted advertising, and recommends letting visitors set cookie preferences on your website. Cookies that collect no personal data, or support things users asked for, generally do not need consent.
It is a way of passing visitors' consent choices to Google tags. Version 2 added the ad_user_data and ad_personalization signals to ad_storage and analytics_storage. Google requires consent signals for visitors from the European Economic Area to use its tags for measurement, ad personalisation and remarketing.
Google's consent mode requirement applies to traffic from the EEA. If you genuinely have no European visitors and run no European campaigns, it is not required by Google, but using a banner with consent mode is still the simplest way to follow the PDPC's recommendation for ad targeting cookies.
Yes. Shopify's Customer privacy settings include a cookie banner. With automated settings it appears for visitors in the UK and EEA when you have active markets there, and is off elsewhere by default, but you can enable it for any region. Third-party banner apps should integrate with Shopify's Customer Privacy API.
Use Google Tag Assistant to confirm the default consent state is set before tags fire and updates after the visitor chooses. Then reject all cookies in a private window and check in the browser's developer tools that no advertising cookies are set and ad pixels do not fire.