Consent & Privacy Modes
Signal Sparrow is built to respect your visitors' privacy and help you stay compliant. You decide how it behaves before a visitor gives consent by choosing one of two modes.
The two modes
Anonymous-only (default)
The SDK measures visits without storing anything personal until consent is given. It's a privacy-first default that still lets you see traffic and sources. Once a visitor consents (and once you identify them), the picture becomes richer.
Hold-until-consent
The SDK waits and stores nothing at all until your cookie banner signals that the visitor has agreed. Use this mode if your policies require no measurement whatsoever before consent.
You set the mode when you initialize the SDK:
init('pk_live_YOUR_PUBLIC_KEY', { consentMode: 'hold' });
When a visitor accepts your banner, tell the SDK to proceed:
import { grantConsent } from '@signalsparrow/sdk';
grantConsent(); // or rp.grantConsent() with the HTML snippet
| Mode | Before consent | After consent |
|---|---|---|
| Anonymous-only (default) | Measures visits, nothing personal stored | Full tracking, visitors can be identified |
| Hold-until-consent | Nothing is stored at all | Starts tracking once grantConsent() is called |
The first-party cookie
To recognize a returning visitor, the SDK stores a single first-party value called __rpv. It holds an anonymous ID — not a name, not an email — and lasts up to about 13 months. Because it's first-party (set by your own domain), it's far more reliable than the third-party cookies browsers now block.
Who's responsible for consent
You, as the website owner, are the one responsible for showing any required cookie or consent notice and for choosing the mode that fits your legal obligations. Signal Sparrow gives you the controls; how you use them is up to your privacy policy.
If you already show a cookie banner and want the strictest behavior, use hold-until-consent. Otherwise, the anonymous-only default is a safe, privacy-friendly starting point.