Legal

Privacy Policy

Last updated: April 7, 2026 · Adworth℠ LLC · Charleston, SC

Contents

The short version: Adworth is built on the principle that your data belongs to you. We collect only what we need to operate the service, we never sell your data, and you can delete it at any time. Our Ad Intelligence pipeline runs entirely through our own adworth-ads Cloudflare Worker (v5.3.0, powered by DataForSEO), which includes a PII Advertiser Name Classifier that anonymizes person names before any response leaves the worker — only a non-reversible SHA-256 audit hash is retained. The public /analyze endpoint is rate-limited to 10 requests per IP per hour to prevent abuse. Our Ingestion API (adworth-ingestion-api v1.3.0) and Privacy Cockpit Chrome extension allow secure submission of cryptographically signed marketing data — your private Ed25519 key is generated on your device and never transmitted to Adworth. As of v1.3.0, upon successful signature verification the Ingestion API also writes a CONSENT_ISSUED event to the ADWORTH_LEDGER KV namespace, enabling the Privacy Governance Engine to evaluate your issued token in real time during advertiser access requests. No PII is written to the ledger — only opaque identifiers, timestamps, and cryptographic references. Our consent token API (adworth-consent-widget, v3.4.0) uses opaque identifiers only — no PII in tokens or ledger entries. Our Privacy Governance Engine (v2.3.0) enforces consent in real time. Our State-Persistence Monitor scans for unauthorized data retention after revocation. As of March 11, 2026, our Removal Payload Engine (adworth-rpe v2.3.0) fetches legal citations, deadlines, and obligations at runtime from a versioned, machine-readable regulation rules table served by the adworth-rules Worker via a Cloudflare Service Binding (rules v1.0.0, effective March 5, 2026). Our Advanced Privacy Protocols (described in Section 8) add Ledger Chaff noise injection, Local Differential Privacy (2% fuzz), Location Grid Quantization (1 km² precision), and a Minor Shield protocol — all of which are built to protect you from external surveillance, not to obscure your own rights. No hardcoded legal strings, every notice carries a rules_version for permanent audit linkage. Both the monitor and RPE currently operate in simulated mode. As of the March 14, 2026 security audit, all Workers use constant-time HMAC-SHA256 API key comparison via crypto.subtle, strict CORS origin allowlists (no wildcards), and self-hosted fonts via adworth-fonts Worker. All API access is authenticated. API keys entered in dashboards are held in memory for the session only and never written to persistent browser storage, cookies, or server-side logs. Vercel Analytics is disabled. No third-party trackers, advertising pixels, or analytics services. That’s kind of the whole point.

01 Information We Collect

Information you provide directly

When you join our waitlist (via the homepage form or dashboard inline form), we collect:

Information collected automatically

When you visit adworth.app, our infrastructure (Cloudflare and Vercel) may automatically log standard request metadata including:

We do not use any third-party analytics scripts, tracking pixels, or behavioral analytics tools on adworth.app. Vercel Analytics is explicitly disabled on our deployment. No external analytics code runs on our pages.

Information collected through the Ingestion API and Privacy Cockpit extension

The Privacy Cockpit Chrome extension (Manifest V3) and Ingestion API (adworth-ingestion-api Cloudflare Worker) allow you to submit cryptographically signed campaign-level marketing data from advertising platform dashboards. The following data is collected and processed:

Multi-device support is provided by design — each device generates its own keypair. If a device is lost or compromised, you may request key revocation by contacting .

Current status: The Ingestion API (v1.3.0) and Privacy Cockpit extension are confirmed working end-to-end for investor demonstration and user testing. Ed25519 signature verification, ingestion data storage, and CONSENT_ISSUED ledger write to ADWORTH_LEDGER are all live on Cloudflare. The extension is currently distributed as a developer build and has not been published to the Chrome Web Store.

Information processed through the Ad Intelligence pipeline

When you use our Ad Intelligence Dashboard (adworth.app/demo), all processing runs through our own adworth-ads Cloudflare Worker. The following data is processed:

No personal user data is transmitted to DataForSEO or Anthropic as part of dashboard analysis. The pipeline processes publicly available advertiser data only. Results are cached in Cloudflare Workers KV (AD_CACHE namespace) for six hours.

Information displayed on the CCPA Enforcement Gap page

Our CCPA Enforcement Gap page (adworth.app/ccpa-gap) displays aggregated data from publicly available CCPA transparency reports published by other companies. This data is:

Adworth is not affiliated with any company listed on the CCPA Enforcement Gap page. No data on this page is obtained through scraping protected content, accessing private systems, or any non-public source.

PII Advertiser Name Classifier (adworth-ads v5.3.0)

The adworth-ads worker includes a PII Advertiser Name Classifier. This component:

The classifier ensures that individual person names in public ad data are never surfaced to end users or stored in recoverable form anywhere in the Adworth pipeline.

Information collected through our Consent API

When you interact with our Consent Token API (adworth-consent-widget.adworthllc.workers.dev, the current active consent infrastructure worker), we collect and process:

Consent tokens contain no personally identifiable information. Token identifiers are 128-bit cryptographic random values only.

Information processed through the Regulation Rules Worker

The adworth-rules Cloudflare Worker serves a versioned, machine-readable regulation rules table to the RPE at runtime. No personal data is processed by or transmitted to this Worker. The data it serves consists exclusively of publicly available regulatory text (GDPR, CCPA/CPRA, DSA articles), structured as a version-controlled JSON schema. The rules table is stored in the isolated ADWORTH_RULES Cloudflare KV namespace and is publicly readable at GET /rules and sub-paths. Write access (POST /admin/sync) requires API key authentication.

Information processed through the standalone Removal Payload Engine

The standalone RPE worker (adworth-rpe.adworthllc.workers.dev v2.3.0) generates legally-cited deletion notices. As of March 11, 2026, all legal citations, deadlines, and obligations are fetched at runtime from the adworth-rules Worker via a Cloudflare Service Binding (direct worker-to-worker communication, no public network hop) rather than hardcoded strings. When a notice is generated, the following data is created and stored:

No personally identifiable information is included in any RPE notice. Demo-mode notices generated via the enterprise page are clearly prefixed with “DEMO — THIS NOTICE CARRIES NO LEGAL EFFECT” and stored with a demo status flag.

Information processed through RPE public verification

The adworth-rpe worker provides public verification endpoints accessible without authentication. Verification responses include notice status, target domain, regulation, right ID, rules_version, jurisdiction, compliance deadline, generation timestamp, content hash, HMAC signature, and integrity verification result. No PII is disclosed. Demo-mode notices are clearly identified in verification responses.

Information processed through the Consent API Dashboard

The Consent API dashboard requires API key authentication via constant-time HMAC-SHA256 verification. API keys are held in JavaScript memory for the active session only, never written to localStorage, sessionStorage, cookies, or any server-side log. The dashboard loads no third-party scripts, uses self-hosted fonts, and sets no cookies.

Information processed through the Invisibility Ledger dashboard

The Invisibility Ledger dashboard is a read-only viewer of the unified tamper-evident audit trail. It reads from ADWORTH_LEDGER KV and never writes to it. It displays the complete event timeline across all five patent components with filtering by event type and user. The same in-memory-only API key handling applies as all other Adworth dashboards.

Information processed through the State-Persistence Monitor

When the State-Persistence Monitor runs a scan, it processes revoked and expired consent token identifiers from the Invisibility Ledger, associated opaque user IDs, advertiser IDs, consent scope data, and scan metadata including violation detection results and removal payload records.

Current status: The State-Persistence Monitor currently uses simulated broker checks for demonstration and investor review purposes. It does not yet connect to live data broker APIs. Removal payloads are generated with real legal citations (fetched from the live adworth-rules Worker) but are not yet transmitted to actual data brokers.

Information processed through the Privacy Governance Engine

When the Privacy Governance Engine evaluates a data access request, it processes the requesting advertiser’s identifier, the opaque user identifier, the data scope being requested, and the active consent tokens for that user-advertiser pair. Every decision — granted or blocked — is recorded in both GOVERNANCE_LOG and ADWORTH_LEDGER. No PII is processed or stored by the Governance Engine.

Information processed through the Consent Widget and Advertiser Integration

Adworth provides demonstration and testing interfaces for investor review and system validation:

Information we do not collect

We do not collect government IDs, financial account numbers, or health data. We do not use Formspree or any third-party form processing service — all form submissions are handled exclusively by our own adworth-waitlist Cloudflare Worker (v2.3.0). Private Ed25519 keys generated by the Privacy Cockpit extension are never transmitted to or stored by Adworth. API keys used to access Adworth dashboards are held in memory for the session only and are never written to persistent browser storage, cookies, or server-side logs. No personal data flows through or is stored by the adworth-rules Regulation Rules Worker.

02 How We Use Your Information

We use the information we collect to:

We do not use your information for behavioral advertising. We do not build advertising profiles from your activity on our platform.

03 Third-Party Data Processing

Our Ad Intelligence pipeline uses two third-party APIs. All calls to these services are made exclusively from our adworth-ads Cloudflare Worker — no third-party API calls originate from the user’s browser.

DataForSEO — ad data retrieval

Ad data is retrieved from Google’s Ads Transparency Center via DataForSEO (dataforseo.com) using the POST /v3/serp/google/organic/live/advanced endpoint. All DataForSEO calls are made exclusively from our adworth-ads Cloudflare Worker — the domain name you entered is transmitted using Basic Auth credentials stored as encrypted Cloudflare Worker secrets. No personal user data is transmitted to DataForSEO. Before any DataForSEO response is returned to the dashboard, the PII Advertiser Name Classifier runs to detect and anonymize individual person names. Results are cached in AD_CACHE KV for six hours. DataForSEO’s privacy policy: dataforseo.com/privacy-policy.

Anthropic API — AI privacy analysis

Privacy risk scores, transparency scores, regulatory flags, and AI findings are generated by Anthropic’s Claude AI via the Anthropic API. Data transmitted to Anthropic is the already-anonymized ad metadata from DataForSEO — any person names have been replaced by the PII classifier before this call is made. No personal user data, waitlist emails, consent token data, or ingestion records are transmitted to Anthropic. Anthropic’s privacy policy: anthropic.com/legal/privacy.

Cloudflare Workers — complete worker fleet (29 Workers)

All server-side logic runs on Cloudflare Workers edge infrastructure. Our complete active worker fleet:

Cloudflare Workers KV namespaces in use:

Cloudflare’s privacy policy: cloudflare.com/privacypolicy.

Waitlist management — no third-party services

Waitlist submissions are processed entirely through our own adworth-waitlist Cloudflare Worker. No third-party form processors, mailing list providers, or email delivery services are used. Email addresses are never transmitted to external services. Waitlist communications are sent directly via Proton Mail using BCC to protect subscriber privacy. No message body content is stored by any Adworth system.

Simulated data broker checks — current status

Transparency disclosure: The State-Persistence Monitor currently simulates checks against a registry of eight data brokers (Acxiom, Oracle Data Cloud, LiveRamp, Experian Marketing, Epsilon, Nielsen, TransUnion, and Lotame) for demonstration purposes. No actual API connections to these brokers exist. No user data is transmitted to any data broker. When live integrations are established, this policy will be updated before they go live.

04 How We Share Information

We do not sell, rent, or trade your personal information. We may share it only in the following limited circumstances:

Infrastructure providers

Data broker communications (future)

When the Removal Payload Engine transitions to live operation, legally-cited deletion requests will be transmitted to data brokers on your behalf. These will contain only opaque token identifiers, revocation timestamps, legal citations (derived from the versioned rules table), and the rules_version reference — no PII. This policy will be updated before any live broker communications begin.

Legal requirements

We may disclose your information if required by law, court order, or government authority.

Business transfers

In the event of a merger, acquisition, or sale of assets, we will notify you before your information becomes subject to a different privacy policy.

06 Privacy Governance Engine

The Privacy Governance Engine (adworth-bouncer.adworthllc.workers.dev, v2.3.0) is a real-time consent enforcement system. Every data access request is evaluated against active consent tokens before any data can be reached.

Six-point validation

  1. Token existence — Does a consent token exist for this token ID?
  2. Revocation check — Has the user revoked consent?
  3. Expiration check — Has the consent window closed?
  4. Advertiser match — Does the requester match the token holder? Consent is non-transferable.
  5. Scope match — Does the requested data type match the consent scope?
  6. Cryptographic signature verification — Is the HMAC-SHA256 signature valid?

Any failed check triggers an immediate block. The decision is final and cannot be overridden. Every decision is recorded in both GOVERNANCE_LOG and ADWORTH_LEDGER. No PII is stored in any decision record.

Block reason codes

Blocked responses include one of: TOKEN_NOT_FOUND, TOKEN_REVOKED, TOKEN_EXPIRED, ADVERTISER_MISMATCH, SCOPE_MISMATCH, SIGNATURE_INVALID, MINOR_SHIELD_ACTIVE, GPC_OPT_OUT, or INVALID_REQUEST.

Minor Shield

When a consent token carries user_type: minor metadata, the Governance Engine enters a High-Shield state and blocks all advertising-related data access requests regardless of scope, advertiser, or token validity. A MINOR_SHIELD_ACTIVE event is recorded in the Invisibility Ledger. No long-term profile is built for minor users. See Section 8 for the complete Minor Shield protocol.

Global Privacy Control (GPC)

Adworth honors Sec-GPC: 1 browser signals as valid opt-outs of data sale and sharing under CPRA § 1798.135(d). When a user’s browser sends this header, the Governance Engine immediately blocks the access request and returns a GPC_OPT_OUT block reason. This check runs after Minor Shield but before any token lookup — no consent token can override a GPC opt-out signal. The block is recorded in both GOVERNANCE_LOG and ADWORTH_LEDGER.

Dashboard

The Governance Engine dashboard displays the real-time decision log, block reason breakdown, and validation stats. API key held in JavaScript memory for the session only. No third-party scripts. Self-hosted fonts. No cookies.

07 State-Persistence Monitor & Removal Payload Engine

State-Persistence Monitor (Patent Component #4)

The State-Persistence Monitor (adworth-state-monitor.adworthllc.workers.dev) detects unauthorized data retention after a user revokes or expires consent. On scan, it reads the Invisibility Ledger to identify all revoked/expired tokens, checks a registry of data brokers for unauthorized retention, and records any VIOLATION_DETECTED events in the Invisibility Ledger. Only opaque identifiers, scopes, and timestamps are processed — no PII.

Current status: Broker checks are currently simulated against eight representative brokers. The monitor does not yet connect to live broker APIs or transmit any data externally. Simulated results are used for system validation and investor demonstration only.

Removal Payload Engine v2.3.0 (Patent Component #5)

As of March 11, 2026, the RPE (adworth-rpe v2.3.0) fetches all regulation rules at runtime from the adworth-rules Worker via a Cloudflare Service Binding rather than using hardcoded legal citations. This means legal citations, deadlines, controller obligations, penalty tiers, and third-party notification requirements are evaluated deterministically from versioned JSON — no fuzzy interpretation. The RPE operates in two modes:

Each removal payload contains a Notice ID, target domain, right ID and regulation evaluated from the rules table, rules_version and rules_effective_date, opaque data subject reference, data categories, legal citations, compliance deadline, HMAC-SHA256 cryptographic signature, SHA-256 content hash, and full legal notice text. Notices generated by the standalone RPE worker are stored in the dedicated RPE_DATA Cloudflare Workers KV namespace with the rules_version under which they were generated. Demo-mode notices are stored with a demo status flag and clearly identified in all verification responses.

Public verification endpoints

The standalone adworth-rpe worker provides public endpoints accessible without authentication. Verification checks the stored HMAC signature and content hash against the original notice data, and returns the rules_version embedded in the notice. No PII is disclosed through verification endpoints.

Demo mode

Demo-mode notices require full API key authentication (no public demo key exists) and are generated with a demo: true flag in the request body, stored with status demo, prefixed with “DEMO — THIS NOTICE CARRIES NO LEGAL EFFECT / NO COMPANY WILL RECEIVE THIS NOTICE”, and carry no legal effect. No company named in a demo notice will receive any communication from Adworth.

Current status: All removal payloads are generated with real legal citations (fetched live from adworth-rules) and HMAC-SHA256 signatures but are not transmitted to actual data brokers. No deletion requests have been sent to any third party. This policy will be updated before live delivery begins.

08 Advanced Privacy Protocols

Adworth implements a set of advanced, systemic privacy protections designed to prevent external surveillance of your consent activity — beyond what individual data-handling rules can achieve. These protections operate at the infrastructure level and are active by default. None of these mechanisms are used to obscure your own rights, limit your access to your data, or affect payout accuracy.

Important: These protocols protect you from external parties (advertisers, data brokers, governments, or bad actors) attempting to reconstruct your behavioral patterns. They do not limit your own visibility into your consent history, ledger entries, or enforcement records. Your access to your own data is never reduced by these measures.

Ledger Chaff — Noise and Decoy Injection

To prevent “pattern-of-life” analysis — where an external party identifies you by correlating when and how you grant or revoke consent — the adworth-ledger Worker injects synthetic “chaff” (decoy) entries alongside real consent events. To an outside observer, real and synthetic events are mathematically indistinguishable. Only your Sovereign Key can distinguish your authentic consent records from noise. This technique is consistent with established differential privacy practices for audit log protection.

Chaff entries:

Local Differential Privacy — 2% Data Fuzz

A 2% randomized “fuzz” coefficient is applied to numeric metadata fields in consent scope records (e.g. time window durations, frequency parameters) where mathematically applicable. This makes the ledger statistically less useful for inferring your habits from aggregate data while preserving complete accuracy for individual consent enforcement and payout calculations. The fuzz is applied locally within the Worker before any data is written — it is never applied to payment amounts, token signatures, or legal notice content.

This technique is a standard implementation of local differential privacy and is not a data inaccuracy. The underlying consent grant remains fully enforceable and auditable.

Location Grid Quantization — Spatial Privacy

When consent token scope metadata includes a location parameter, Adworth applies Grid Quantization: GPS coordinates are snapped to a 1 km² grid square before being written to any ledger entry or token record. Raw GPS coordinates are never stored or transmitted by Adworth systems. This prevents geospatial fingerprinting — the practice of identifying individuals based on precise location patterns over time.

Grid-quantized coordinates are sufficient for geographic consent scoping (e.g. a user consenting to location-based advertising in a city area) but insufficient to identify a specific address or home location.

Minor Shield Protocol

When a consent token carries user_type: minor metadata — either set explicitly or triggered by device-level signals — the system enters a High-Shield state:

Adworth does not knowingly collect personal data from minors under 13 in any form (see Section 13). The Minor Shield protocol applies as an additional protection layer for users aged 13–17 where parental or guardian consent exists, and for any session where minor status cannot be definitively excluded.

Current status: Ledger Chaff, Local Differential Privacy fuzz, and Location Grid Quantization are implemented in the Cloudflare Workers infrastructure. The Minor Shield protocol (MINOR_SHIELD_ACTIVE blocking) is implemented in the adworth-bouncer Worker. All four protocols are active in the current deployment. The Nashville Offline Protocol and Biometric Gating described below are on the product roadmap and are not yet deployed.

Nashville Offline Protocol — Roadmap

A future capability planned for the consent marketplace: device-bound authorization that functions without an internet connection. When deployed, consent authorization will be stored in the device’s Secure Enclave (not in the cloud) and will support cryptographically-signed Promissory Tokens exchangeable via NFC or Bluetooth Mesh. Promissory transactions will settle on the Adworth ledger when connectivity is restored. This feature requires a mobile application and is contingent on post-funding development. This policy will be updated when the feature enters development.

Biometric Gating — Roadmap

A future capability planned for the consent marketplace: local biometric verification (FaceID / TouchID) as a gate before consent tokens can be activated or payment authorized. When deployed, biometric data will remain entirely on the user’s device and will never be transmitted to or stored by Adworth. The result of a biometric check will be a signed pass/fail signal only — no biometric template, hash, or identifier will leave the device. This feature requires a mobile application and is contingent on post-funding development.

09 Data Retention

When you request deletion of your personal data, we will remove it from active systems within 30 days and from backups within 90 days. Ledger entries, violation records, RPE records, and standalone RPE notices (which contain no PII) may be retained as part of the immutable audit trail even after personal data deletion.

10 Your Rights

Depending on your location, you may have the following rights regarding your personal information:

To exercise any of these rights, contact us at . We will respond within 30 days.

11 Security

We implement industry-standard security measures including:

Responsible disclosure

If you discover a potential security vulnerability in any Adworth system, please report it to with the subject line “Security Disclosure.” We will acknowledge reports within 72 hours and keep you informed as we investigate. We ask that you do not publicly disclose the issue until we have had reasonable time to address it. Full disclosure policy: adworth.app/.well-known/security.txt.

No method of transmission over the internet is 100% secure. If you believe your information has been compromised, contact us immediately at .

12 Cookies & Tracking

We use minimal cookies necessary to operate our website. We do not use third-party advertising cookies, tracking pixels, behavioral analytics scripts, or any other third-party tracking technologies. Vercel Analytics is explicitly disabled on our deployment.

Cloudflare may set a __cf_bm cookie for bot management and security. This cookie does not track you across sites and is not used for advertising.

Cloudflare Bot Protection & AI Crawler Policy

As of March 11, 2026, Adworth employs multiple layers of Cloudflare bot protection on adworth.app to prevent unauthorized AI training crawlers from scraping site content. These protections are purely defensive and do not collect, store, or process any user personal data:

These protections apply only to the adworth.app domain. They do not affect Cloudflare Worker API endpoints, worker-to-worker Service Bindings, or any authenticated API traffic. Adworth’s content is proprietary and may not be used to train AI models without express written permission from Adworth LLC.

Dashboard API key handling

All Adworth dashboards (Consent API, Privacy Governance Engine, State-Persistence Monitor, Removal Payload Engine, Invisibility Ledger, Ingestion API, Regulation Rules Admin, Waitlist Admin, CCPA Enforcement Gap Admin) handle API keys identically: held in JavaScript memory for the active session only, never written to localStorage, sessionStorage, cookies, or any server-side log, transmitted only to the specific authenticated Worker endpoint over HTTPS, and discarded when the page is closed.

Consent token injector

The Adworth consent token injector script, when deployed, may store consent state in localStorage under the key adworth_consent_state. This data stays entirely on your device and is never transmitted to our servers unless you explicitly initiate a consent action. You can clear this at any time through your browser settings.

No third-party tracking

No Adworth page or worker dashboard loads third-party scripts, advertising pixels, analytics services, or behavioral tracking technologies. This applies to adworth.app and all adworthllc.workers.dev subdomains.

13 Children’s Privacy

Adworth’s services are not directed to children under 13. We do not knowingly collect personal information from children under 13. If you believe we have inadvertently collected such information, contact us and we will delete it promptly.

For users aged 13–17, the Minor Shield Protocol (Section 8) applies automatically. No advertising data access is permitted, no behavioral profile is built, and consent tokens for minor users cannot be used in the consent marketplace.

14 Contact Us

Adworth℠ LLC
Charleston, SC, United States

For terms of use, please see our Terms of Service.

Security vulnerability disclosure

To report a security vulnerability, see our responsible disclosure policy at adworth.app/.well-known/security.txt or email with the subject line “Security Disclosure.” We will respond within 72 hours.

Enterprise & Data Processing Agreements

Enterprise customers requiring a Data Processing Agreement (DPA) under GDPR Article 28 or other data governance documentation should contact with the subject line “DPA Request.” We will respond within five business days. Formal DPA templates are in development as part of our enterprise readiness roadmap.

Policy updates

We may update this Privacy Policy to reflect changes in our practices, technology, or legal requirements. When we make material changes, we will notify waitlist members by email at least 14 days before changes take effect. The “Last updated” date at the top of this page reflects the last revision. Continued use of Adworth services after the effective date constitutes acceptance of the updated policy.

In particular, this policy will be updated when: (1) the State-Persistence Monitor and Removal Payload Engine transition from simulated to live operation; (2) the Privacy Cockpit extension is published to the Chrome Web Store; (3) the consent marketplace launches; (4) the Nashville Offline Protocol or Biometric Gating features enter development; and (5) new regulations are added to the adworth-rules regulation rules table (planned: LGPD, UK GDPR, U.S. state laws including Virginia VCDPA, Colorado CPA, Connecticut CTDPA). We will notify users by email in advance of each of these transitions.

Governing law

This Privacy Policy is governed by the laws of the State of South Carolina, United States. Any legal action shall be brought exclusively in the state or federal courts located in Charleston County, South Carolina.