Skip to Content
DocumentationWeb SDKPrivacy & Data

Privacy & Data

Data Collected

Data PointPurposeStorage
IP addressFingerprinting, geolocationServer-side only (anonymized)
User-AgentFingerprinting, device typeServer-side
Screen resolutionFingerprintingSent on install
TimezoneFingerprintingSent on install
LanguageFingerprintingSent on install
PlatformDevice typeSent on install

The SDK does not collect:

  • Cookies from other domains
  • Browser history
  • Form inputs
  • DOM content

localStorage Keys

All keys are prefixed with __ahq_:

KeyPurpose
__ahq_installedFlag indicating install was already tracked
__ahq_attributionCached attribution result (JSON)
__ahq_queuePending events queue (JSON)
__ahq_session_idCurrent session UUID
__ahq_session_startSession start timestamp
__ahq_session_pvsPage views in current session
__ahq_user_idIdentified user ID

GDPR Compliance

  • IP anonymization — Last octet zeroed during fingerprint matching
  • No third-party cookies — No cross-site tracking
  • HTTPS only — All data sent over encrypted connections
  • User control — Users can clear attribution data by clearing localStorage
  • Incognito fallback — Falls back to in-memory storage if localStorage is unavailable
  • No PII in fingerprint — Fingerprint hash is a one-way SHA-256, not reversible to identify individuals

Data Retention

  • Events: Stored in ClickHouse with 90-day retention
  • Raw events: Archived to S3, moved to Glacier after 90 days, deleted after 2 years
  • Click records: DynamoDB TTL of 7 days (matching attribution window)
  • localStorage: Persists until cleared by user or browser

Bundle Size

The SDK is ~2.9 KB gzipped (UMD). It has zero runtime dependencies. With ESM imports and tree-shaking, only the methods you import are included.