Understand your traffic. Know what to do next.
From raw data to a decision: every screen answers one precise business question, and the AI tells you what to do about it.
A guided tour, screen by screen: what you see, what it tells you, and how it is computed. No analytics cookies, threshold-protected aggregates, core infrastructure in France.
Your on-demand analyst: a summary of the period, or an answer to your question.
The AI runs in France, on aggregates only. The summary only fires on a click of the « Generate » button: no trigger when the tab opens, no auto-refresh, no regeneration when the period changes.
- « Generate a summary »: analysis of a period (trends, anomalies, likely causes, recommended actions).
- « Query your data »: a natural-language question, answered with text + a chart. Limited to 20 questions per hour.
- Deterministic charts: the AI picks the type (line, bars, comparison), the front draws them from real data. No number painted by the model.
- Only aggregates are sent to the model: KPIs, top pages, channels, countries, devices. Never an IP, a visitor ID or an individual row.
- Read-only sharing: a frozen snapshot link, no live query, revocable, optional expiry from 1 to 365 days.
Traffic is up 18 %; /pricing drives the rise, mobile bounce is falling.
Six business questions, six sections: where traffic comes from, what it does, what it earns.
Overview, Acquisition, Audience, Conversions & revenue, SaaS subscription, AI presence. Details on click via drill-down.
Technical details: privacy thresholds & exports
Totals and single-dimension rankings are exact for everyone. Any crossing (two dimensions, or an active filter) is floored at a minimum number of occurrences, recomputed after filtering. Same rule for the owner, shared links and public pages — no privilege. Periods: 24 h, 7 / 30 / 90 days, 12 months, custom range. CSV export per view and a « Download all data » ZIP.
The numbers you open on Monday morning.
Unique visitors, sessions, page views, average duration and engagement rate. Plus the traffic curve and top pages.
- Unique visitors estimated with no persistent identifier — nothing that follows a person across visits.
- Engagement rate = 1 − bounces / sessions; live counter of the last 5 minutes.
- Traffic curve (smoothed area) with previous-period or year-over-year comparison.
- Sortable top pages, drill-down on click, CSV export.
Where visitors come from: channels, referrers, search.
Channels, referring domains and SEO search, with no UTM parameters collected and no cross-site tracking.
- Channels: direct, search, referral, social, AI, email (donut + deltas).
- Referrers by domain, paginated, with an option to exclude search.
- SEO keywords from Google Search Console / Bing Webmaster (OAuth, read-only): clicks, impressions, CTR, position.
- UTM parameters neutralized at ingestion — never stored. No fingerprint.
Who the visitors are, without ever storing the IP.
Countries, regions, browsers, devices, operating systems and languages. Geolocation derived at ingestion, never the IP address.
- Geolocation by DB-IP (Eris Networks, France) — not MaxMind. Country granularity, regions if enabled.
- Browser, device (mobile / tablet / desktop), operating system and language.
- Raw IP read at ingestion then forgotten — no IP column in the events.
- Countries ⇄ Regions toggle and per-dimension drill-down.
Events, revenue and funnel — from your own calls.
Custom events, revenue aggregated by currency and a conversion funnel. You fire, the server aggregates and applies the privacy thresholds.
- Custom events with free names and server-aggregated properties (up to 10 per event).
- Revenue by currency via snorklee('purchase', { amount, currency }): total, count, average order.
- Funnel of 2 to 8 steps (path patterns), step-through and drop-off per step.
- Funnel and hourly heatmap floored at a minimum number of occurrences (they are crossings).
MRR and subscription mix, if you send them.
For SaaS: net MRR broken down and plan mix. The section only shows when subscription events are received.
- snorklee('subscription', { action, mrr, currency, plan, term }).
- Net MRR broken down into new / expansion / reactivation / contraction / churn (signed bars).
- Plan mix, ARPA, trials, monthly / annual split.
Your visibility with AI engines and assistants.
Which AI crawlers visit your pages, which pages are cited in answers, and an aggregated visibility score.
- Visits coming from answers (ChatGPT, Claude, Perplexity…) via the snippet, and AI crawlers (GPTBot, ClaudeBot…) via the provided server beacon.
- Visibility score 0–100 (weighted: chats, crawlers, cited pages, trend).
- Pages cited in AI answers and breakdown by provider / purpose.
The whole install in one place: snippet, verification, platforms.
Get started · Platforms · Danger zone. From pasting the snippet to confirming that hits arrive.
- One-line snippet in ; w.js tracker ≈ 2 KB gzip; /api/event endpoint replies 204.
- Automatic verification: an HTTP probe confirms hits are received.
- 8 guides: WordPress (official plugin), Shopify, Webflow, Wix, Squarespace, Framer, Next.js, plain HTML.
- Danger zone: reversible 30-day archive, or immediate erasure (GDPR art. 17).
Reduce blocking by serving the tracker from your own domain.
Served from your own domain, the tracker looks like a request from your site: this reduces technical blocking tied to third-party scripts. Copy-paste recipes for Cloudflare, Vercel, Netlify, Node/Express and PHP.
- Recipes with no external CDN required for the tracker.
- Backward-compatible: your current snippet keeps working.
- Built-in HTTP probe that auto-detects self-host mode.
A documented compliance tab, ready to review.
Status, frameworks, signable DPA, retention periods, export and erasure. For Snorklee alone: no analytics cookie, no localStorage, no sessionStorage for measurement and useful documentation for your privacy lead.
- Documented compliance for the EU and several non-EU jurisdictions — per-country detail lives on the compliance page.
- Self-assessment: 16 documented privacy criteria, attested by the publisher (not a CNIL certification).
- Electronically signable DPA: eIDAS proof page (art. 25.1), timestamp, hashed IP, SHA-256 fingerprint; optional CCPA addendum.
- Retention: raw events 90 days, aggregates 25 months, pseudonymization salt 1 month (rotation).
- ZIP export, erasure (GDPR art. 17 & 20) and data protection contact.
- EU/EEA — GDPR + ePrivacy
- California — CCPA/CPRA
- United States — state laws
- Canada — PIPEDA + Law 25
- Australia — Privacy Act 1988
Ready to measure your audience without a cookie banner?
Create a site in 2 minutes, or contact us to see a populated dashboard with your use cases.