Help us improve
Share bugs, ideas, or general feedback.
From data-subject-rights-skills
Implements CPRA Section 1798.135 opt-out preference signals like GPC: detects HTTP/JS browser signals, automates honoring, ensures cross-device consistency, resolves signal-choice conflicts.
npx claudepluginhub mukul975/privacy-data-protection-skills --plugin data-subject-rights-skillsHow this skill is triggered — by the user, by Claude, or both
Slash command
/data-subject-rights-skills:cpra-opt-out-signalsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
CPRA Section 1798.135 requires businesses to treat opt-out preference signals (such as Global Privacy Control / GPC) as valid consumer requests to opt out of the sale and sharing of personal information. This skill covers the technical detection of GPC signals, automated honoring workflows, cross-device consistency requirements, and the interaction between browser-level signals and explicit con...
Implements CPRA Section 1798.135 opt-out preference signals like GPC: detects HTTP/JS browser signals, automates honoring, ensures cross-device consistency, resolves signal-choice conflicts.
Guides Global Privacy Control (GPC) implementation for CPRA Section 1798.135(e) and state compliance (CA, CO, CT, MT, TX, OR). Detects Sec-GPC HTTP header, navigator.globalPrivacyControl JS API, provides server-side code.
Reviews whether GPC opt-out signals actually suppress ad tags, server-side forwarding, and conversion APIs through the tag stack and CMP. Catches cosmetic compliance and pre-first-visit gaps.
Share bugs, ideas, or general feedback.
CPRA Section 1798.135 requires businesses to treat opt-out preference signals (such as Global Privacy Control / GPC) as valid consumer requests to opt out of the sale and sharing of personal information. This skill covers the technical detection of GPC signals, automated honoring workflows, cross-device consistency requirements, and the interaction between browser-level signals and explicit consumer choices.
Section 1798.135(a) — A business that sells or shares consumers' personal information shall provide a clear and conspicuous link on its homepage titled "Do Not Sell or Share My Personal Information."
Section 1798.135(b)(1) — A business that sells or shares personal information shall treat the consumer's use of an opt-out preference signal as a valid request to opt out under Section 1798.120.
Section 1798.135(b)(3) — A business that complies with subsection (b)(1) is not required to post the "Do Not Sell or Share My Personal Information" link on its homepage, provided it instead posts a link to a page describing the consumer's opt-out rights.
Section 1798.135(e) — A business may not interpret the absence of an opt-out preference signal as consent to sell or share personal information.
GPC is an HTTP header and JavaScript API signal that communicates a user's privacy preferences:
Sec-GPC: 1navigator.globalPrivacyControl === trueCheck for the GPC HTTP header on every incoming request:
HTTP Header: Sec-GPC: 1
If the header is present and its value is 1, the user has activated GPC.
For single-page applications or client-side consent management:
if (navigator.globalPrivacyControl === true) {
// GPC signal detected — treat as opt-out of sale/sharing
}
| Scenario | Action |
|---|---|
| Consumer is logged in (authenticated) | Apply opt-out to the consumer's account across all devices |
| Consumer is not logged in but has cookies | Apply opt-out to the browser/device |
| Consumer is anonymous (no identification) | Apply opt-out to the current browsing session and device |
When a GPC signal is detected, the following actions must be executed automatically:
The CMP must be configured to:
| Consumer Status | Cross-Device Behaviour |
|---|---|
| Authenticated (logged-in account) | GPC signal from one device triggers account-level opt-out across all devices |
| Unauthenticated | GPC signal applies only to the device/browser from which it was sent |
| Consumer later logs in from GPC-enabled device | Account-level opt-out is applied retroactively |
When a conflict exists between the GPC signal and the consumer's explicit business-specific setting:
[GPC Signal Detected: Opt-Out]
│
▼
[Does consumer have an explicit business-specific setting?]
│
├── No explicit setting ──► Honor GPC signal (opt-out)
│
├── Explicit opt-in to sale/sharing ──► [Conflict]
│ └── Honor GPC signal (opt-out applies)
│ Optionally: display notification
│ "Your browser is sending a Global Privacy Control signal.
│ We have applied this as an opt-out of sale/sharing.
│ You previously opted in to sale/sharing on this site.
│ If you wish to maintain your opt-in, please confirm
│ in your privacy settings."
│
└── Explicit opt-out ──► No conflict (both agree on opt-out)