Frequently asked questions

Can't find your answer? Contact us.

Is this platform GDPR-compliant?

The platform is built around GDPR-by-default principles: opt-in consent for non-essential categories, equally prominent Accept and Reject buttons, granular per-category controls, consent logging with full audit trails, and automatic Google Consent Mode v2 signals. We do not provide legal certification — consult a qualified lawyer for advice specific to your business.

How quickly can I get set up?

Most users are live in under 5 minutes. Create a free account, add your website, then paste one script tag into your site's <head>. The banner appears immediately, all 25 languages are available out of the box, and Google Consent Mode v2 signals are sent automatically.

Does it work with WordPress, Shopify, or Webflow?

Yes — any platform that lets you add a script tag to the page head. On WordPress you can use a header injection plugin (e.g. Insert Headers and Footers) or add it directly to your theme. On Shopify use the theme.liquid file. On Webflow use the Custom Code section in Site Settings. Google Tag Manager also works if you inject the snippet as a Custom HTML tag set to fire on All Pages before other tags.

Is there a free plan?

Yes. The Free plan supports 1 website and up to 10,000 sessions per month. All core features are included: GDPR banner, Google Consent Mode v2, script blocking, all 25 languages, and banner customization. Consent logs, analytics, and branding removal require a paid plan.

What counts as a session?

A session is counted each time the consent banner is shown to a visitor — i.e. one BANNER_IMPRESSION event. Return visitors whose consent is already stored do not trigger a new session count, because the banner is not shown again until their 12-month consent expires or they actively reset their preferences.

What happens if I reach my monthly session limit?

New banner impressions are silently skipped until the next calendar month — the banner simply won't appear for new visitors over the limit. Importantly, visitors who already gave consent are not affected: their stored consent continues to work and no scripts are incorrectly unblocked. Upgrading to a higher plan immediately restores full service.

Can I remove the CookieOffice branding from the banner?

Yes. The Basic plan removes the 'Powered by CookieOffice' label. The Pro plan additionally lets you upload your own logo to appear on the banner.

Will it slow down my website?

No measurable impact. The SDK is lightweight, served from Cloudflare's global CDN, and loads asynchronously — it does not block page rendering or affect Core Web Vitals.

How does script blocking work?

Automatically. Before the banner loads, the SDK rewrites script tags for 100+ known trackers (Google Analytics, Meta Pixel, TikTok, LinkedIn, Hotjar, and more) so they can't execute. When the visitor grants consent for a category, the corresponding scripts are released and loaded in real time. No code changes to your existing scripts are required.

How does Google Consent Mode v2 work?

As soon as the SDK loads — before any GTM or GA4 tags fire — it calls gtag consent default with all signals set to denied. When the visitor makes a choice, it calls gtag consent update with the correct signal values mapped from their category choices (analytics_storage, ad_storage, ad_user_data, ad_personalization, etc.). This ensures Google's modelling and conversion measurement work correctly even for visitors who decline.

What banner layouts are available?

Four layouts: Bottom Bar (a slim bar across the bottom of the page), Centered Modal (a full overlay dialog), Corner Popup (a small card in a page corner), and Bottom Sheet (a card that slides up from the bottom on mobile). All layouts are customizable: colors, fonts, button radius, and copy.

Can I use this on multiple websites?

Yes. Each website has its own configuration, banner design, languages, categories, and consent logs — all managed from one dashboard. The Free plan supports 1 website, Basic supports 3, and Pro supports up to 10.

How is consent stored?

On the visitor's device, consent is stored as a first-party cookie (co_consent) with a localStorage backup, both expiring after 12 months. Server-side, a hashed and pseudonymous record of every consent decision is stored in your dashboard for GDPR audit purposes. Raw IP addresses are never stored — they are hashed with SHA-256 on arrival and the original is discarded.

How long are consent records kept?

Retention depends on your plan: 30 days on Free, 90 days on Basic, and 1 year on Pro. Records older than your retention window are automatically deleted. You can export records as CSV (Pro plan) before deletion.

What happens to my data if I cancel?

Your account and all associated data (website configs, consent logs) are deleted within 30 days of account closure. Billing records are kept for 7 years as required by tax law. You can export your consent logs as CSV before cancelling if you need to retain them for compliance purposes.

Will the banner show to all my visitors?

No — only where the law requires it. By default, the consent banner is shown to visitors from the EU, UK, and Switzerland. Visitors from the US, Canada, Australia, and other regions get a seamless experience with consent granted automatically, so you don't interrupt people unnecessarily. You can extend coverage to additional regions (US, Canada, Australia, India, and more) from your website settings with one click.

What languages are supported?

25 languages: English, German, French, Italian, Spanish, Portuguese, Dutch, Polish, Romanian, Czech, Hungarian, Swedish, Danish, Finnish, Norwegian, Greek, Bulgarian, Slovak, Croatian, Lithuanian, Latvian, Estonian, Slovenian, Turkish, and Japanese. The banner auto-detects the visitor's browser language and falls back to your configured default.

Can I customise the banner text?

Yes. In your dashboard under Content & Languages, you can edit all text strings for any language — title, description, button labels, policy link labels, and per-category copy. Built-in translations are used as the default for all 25 languages, so you only need to edit the strings you want to change.