Ask, once and clearly
The banner loads first, blocking non-essential scripts until the visitor chooses. Plain language, real toggles, no dark patterns, no pre-ticked boxes.
Tacit sits between your visitors and your trackers. It asks clearly, records honestly, and gives every script one place to check before it runs.
The banner loads first, blocking non-essential scripts until the visitor chooses. Plain language, real toggles, no dark patterns, no pre-ticked boxes.
Each choice becomes a signed ledger entry: subject, scope, policy version, region, and timestamp. Append-only, so history can't be quietly rewritten.
Your tags call tacit.has('analytics') before firing. The answer follows the user across pages, sessions, and devices.
Export the ledger as CSV or JSON, or pull it through the API. When an auditor asks who consented to what, you answer in seconds.
Show GDPR opt-in in the EU, CCPA "Do Not Sell" in California, and a lighter notice elsewhere — from one config.
Change your cookie policy and Tacit re-asks only the users it needs to, tagging each record with the version they saw.
Theme the banner with your colors, fonts, and copy. No "powered by" badge unless you want one.
The script is under 12kb gzipped and loads async. Consent shouldn't cost you a slow first paint.
Works with plain HTML, React, Vue, and tag managers like GTM. One snippet, or an npm package.
Export or delete records any time. Choose EU or US data residency on the Scale plan.
Grab a key, paste one script tag, and watch the first consent record land.
Get your consent key