Consent management · 4.0 KB gzipped · billed per domain

Consent that doesn’t slow you down.

Paste a client site. We’ll show what its current consent platform weighs, what it blocks, and what it costs against ours.

Free · No email · Opens the live audit with the site filled in · Full checker page

4.0 KBConsent loader, gzipped. Build fails above 4,096 bytes.
0.000 CLSMeasured layout shift. Budget <0.10, gated in CI.
0 requestsRender-blocking. Loaded async; the page paints without waiting.
$0Traffic overage. Per domain, never per pageview.
The entire integration<script async src="https://cdn.cmpstack.io/cmpstack.js" data-site="YOUR-SITE-ID"></script>

Your site id is on the workspace’s Install screen. For Google tags, put the Consent Mode default block above it: install guide →

Certified & registered

  • Cyber Essentials Plus
  • NCSC
  • PCI DSS
  • ICO registered
  • GDPR

The wedge

Where the invoice actually comes from

Every row is a difference in the commercial model, and each one shows up on an invoice or in an afternoon of somebody’s time.

CMPStack compared with a typical consent management platform
DimensionTypical CMPCMPStack
Billing unitPageviews, so the invoice moves with trafficPer domain, flat
Traffic spikesOverage chargesNo metering, no overage
Script weightOften heavy, often render-blocking4.0 KB gzip, async, shadow DOM
Consent Mode v2Bolt-on, fires after the tagDenied-first, before any Google tag
Multi-client accessOne login per clientOne login, every workspace
Consent recordsExport on requestAppend-only receipts, CSV + PDF

“Typical CMP” is a composite of the published pricing and access models of the major pageview-billed platforms. If yours doesn’t match a row, keep it.

For agencies

Three things agencies switch for

01

One console, every client

Your whole book of business behind one login.

  • Workspace per client on its own subdomain, switch without re-login
  • Five roles: owner, admin, editor, analyst, viewer
  • Suspend a member from one workspace without touching the others
02

Performance as a constraint

Script weight is a spec, not a footnote.

  • 4,085 bytes gzipped. The build fails above 4 KB
  • 0.000 CLS measured, <0.10 budget gated in CI
  • Returning visitors: zero requests on load
03

Compliance that holds up

An audit is something you export, not survive.

  • Every banner scored 0 to 100; dark patterns flagged by severity
  • Receipts snapshot the exact banner text and version shown
  • Salted IP hashes only, never the raw address

The console

Every client, one screen

Compliance scores, accept rates and banner status across every domain you manage. Each issue is paired with the rule it breaks and the fix that clears it.

acme.cmpstack.io · Acme Corp workspace6 domains · 4,812 events / 30d
Compliance score82▲ 3
Accept rate63.2%
Consent rate67.4%
Critical3
Accept rate · 30 daysOct 9 → Nov 8
DomainAccept rateBannerScore
acme.com
72%
bar · published v4● 94
shop.acme.com
64%
modal · published v2● 71
acme.de
58%
popup · draft● 42
blog.acme.com
81%
bar · published v1● 97
Illustrative data. A fictional workspace, drawn to show the console’s layout.

Setup

Live in under ten minutes

Step-by-step setup · Developer guide

  1. 01

    Add the domain

    Verify by DNS, meta tag or file, or just paste the tag and let it verify itself.

  2. 02

    Scan & categorise

    Headless Chromium finds every cookie; a curated rule set sorts them. Unknowns are flagged for you.

  3. 03

    Set the banner

    Bar, modal or popup. Match the brand; the compliance chip re-scores on every save.

  4. 04

    Publish

    One script tag in the head. Consent Mode v2 fires denied-first before any Google tag.

Integrations · 13 connectors

Works with the stack your clients are on

See all 13 connectors and their consent-mode variants.

  • WordPress
  • Shopify
  • Google Tag Manager
  • Google Analytics
  • Meta Pixel
  • HubSpot
  • Salesforce
  • Segment
  • Mixpanel
  • Amplitude
  • TikTok Pixel
  • Webhooks
  • REST API

Each connector ships its own consent-mode variants: Consent Mode v2, strict, anonymous, cookie-less, hashed, granted-only.

Pricing

Per domain. Never per pageview.

Demo

Unlimited domains · 50 seats$0/ 7 days
  • The full product, limited by time rather than features
  • Analytics on, so you can see if the banner works
  • No card. Expires cleanly; pay within 7 days to keep everything
Start demo

Starter

3 domains · 5 seats$19/mo
  • Unlimited pageviews
  • Cookie scan & declaration
  • Compliance score, dark-pattern checks
  • Remove CMPStack branding
Choose Starter
Most popular

Professional

10 domains · 20 seats$49/mo
  • Everything in Starter
  • Weekly cookie scans, 25 pages each
  • Custom CSS on the banner
  • Priority scanning
Choose Professional

Agency

50 domains · 50 seats$149/mo
  • Everything in Professional
  • Room for a full client book of domains
  • Same five roles per workspace, so clients can look without touching
Choose Agency
Enterprise unlimited domains, 500 seats, contractual SLA, sales-led.
Contact sales

Annual: $192 · $492 · $1,488 a year. Every plan: unlimited pageviews, GDPR / UK-GDPR / CCPA rule engine, Consent Mode v2, CSV and PDF consent exports. Full plan comparison.

Testimonials

What agencies say

[ Quote slot 1: migration speed ]Real client quote goes here. Nothing invented; this stays visibly empty until a real agency says something real.
[ Quote slot 2: a number ]Ideally a Lighthouse delta, an LCP change, or an old invoice next to a new one.
[ Quote slot 3: client reporting ]How the branded compliance report lands in a client meeting.

FAQ

The short answers

More on the FAQ page.

What counts as a domain?

A root domain, its www and up to two further subdomains count as one. acme.com, shop.acme.com and docs.acme.com are one domain; acme.de is a second. The consent cookie is scoped to the root domain, so subdomains share one decision.

What happens when the demo ends?

Login is blocked the moment it expires, with no half-working window. Pay within 7 days and the workspace, data, address and members come back exactly as they were. After that it’s destroyed.

Does it really not shift layout?

Measured CLS is 0.000. The build fails in CI above a 0.10 budget, and above 4 KB gzipped. The banner renders in a shadow DOM so the host page’s CSS can’t break it, and vice versa.

What if a client’s traffic spikes?

Nothing happens. There is no pageview metering anywhere in the product, so there is nothing to overage.

Can clients log in?

Yes. Invite them into their own workspace as viewers or analysts. They see scores, banners and logs; they can’t change anything or see your other clients. Owners alone manage billing.

What does a consent receipt contain?

Per-category grants, country, a salted IP hash, truncated user agent, and a snapshot of the banner version, title, text and policy URL the visitor actually saw. Append-only; exportable as CSV or PDF.

Weigh your current CMP.
Then decide.

Seven days, every feature, unlimited domains, no card. The slowest part is choosing the button colour.

GDPR · UK-GDPR · CCPA · Google Consent Mode v2