Consent & Preference Management

Consent Management Platform, Built for India's DPDP Act

Capture Self, Guardian, and Representative consent across six granular categories, block third-party scripts until a visitor actually consents, and give every data principal a self-service portal to manage their own preferences.

Book a Demo
Three Consent Scenarios

Every consent record is captured under one of three scenarios, depending on who's actually giving it.

Self Consent

Direct opt-in consent collected from data principals aged 18 and above, specifying purpose, data fields, and validity dates.

Guardian Consent

Captures guardian identity, relationship to the child (Mother / Father / Legal Guardian / Other), and contact details alongside the consent record for processing a minor's data.

Representative Consent

Captures consent from an authorized representative acting on behalf of the data principal, with representative name, email, and phone recorded against the consent.

Six Granular Consent Categories

Every script and consent record is classified into one of these categories — the same six values used end-to-end, from the cookie banner down to the database record.

Essential · Always On

Required for the website to function. Cannot be disabled.

Performance & Analytics

Analytics and speed monitoring — e.g. Google Analytics, Hotjar.

Marketing & Advertising

Ads and retargeting pixels — e.g. Facebook Pixel, Google Ads.

Functional

Enhanced features — e.g. chat widgets, personalization.

Social Media

Social media integrations — e.g. Facebook SDK, Twitter.

Security

Security monitoring — e.g. bot detection, fraud prevention.

Web Integration

One script tag, then two ways to make sure third-party scripts stay blocked until consent is given.

<!-- Must be the first script in <head> -->
<script src="https://api.zeeks.in/sdk/v1/banner.js"
        data-app="your-app-id"
        data-server="https://api.zeeks.in">
</script>

Attribute-based blocking

For a script already hardcoded in your HTML, change its type to "text/plain" and add data-zeeks-category="performance" (or whichever category applies). The SDK holds it until consent is given for that category.

Script Registry auto-blocking

Scan your site once and import detected scripts into the registry, or add them manually by URL pattern. Registered scripts are blocked automatically — including ones injected dynamically by a tag manager like GTM, with no HTML changes needed.

Frequently Asked Questions

How does consent withdrawal work?

A data principal (or an admin on their behalf) can withdraw consent for a specific category — marketing, performance, functional, social, or security — individually, or withdraw everything at once. Essential consent can never be withdrawn, since it covers legitimate/contractual use the service needs to function.

Can existing consent records be imported?

Yes. The Bulk Consent Import tool accepts an Excel/CSV file of existing records and processes them through the same consent pipeline, so historical consent doesn’t need to be recollected from scratch.

How does script blocking actually work on my website?

Two ways, and you can use both: rewrite a hardcoded third-party <script> tag’s type to "text/plain" with a data-zeeks-category attribute, or register the script by URL pattern in the Script Registry (via an auto-scan of your site or manually) so it’s blocked automatically even when injected dynamically by a tag manager.

See the CMP on your own site

Book a walkthrough and we'll show you the admin dashboard, the banner SDK, and the self-service consent portal end to end.