Skip to main content

CNIL Self-Assessment: Sealmetrics

Reviewed: 12 August 2026. This is a self-assessment; no supervisory authority certifies analytics tools.
Sealmetrics is self-assessed as meeting all 5 permitted objectives and all 14 technical criteria of the CNIL's auto-evaluation framework (July 2025) for consent-exempt audience measurement: no cookies, no stored IP address, country-level geolocation only, 24-month retention and per-publisher isolation. This document walks through each objective and criterion with the evidence and configuration behind it.

Important Notice

This self-assessment follows CNIL guidelines but does not constitute CNIL certification. Per CNIL guidance, providers cannot claim to be "certified" or "validated" by CNIL. This document demonstrates how Sealmetrics meets the published exemption criteria when properly configured.


Does Sealmetrics meet the CNIL exemption criteria?​

CategoryStatus
5 Permitted Objectives✅ All compliant
14 Technical Criteria✅ All compliant
Consent Exemption Eligible✅ Yes
Last Assessment DateFebruary 2026

Part 1: Permitted Objectives​

CNIL allows consent exemption only when analytics are used for these 5 specific purposes:

Objective 1: Performance Measurement​

Requirement: Measure website/application performance metrics.

CriterionSealmetrics Compliance
Measures page load times✅ Yes
Tracks error rates✅ Yes
Limited to performance data✅ Yes - no behavioral profiling

Evidence: Sealmetrics tracks pageviews, load events, and technical errors exclusively for performance analysis.


Objective 2: Navigation Problem Detection​

Requirement: Identify navigation issues affecting user experience.

CriterionSealmetrics Compliance
Detects 404 errors✅ Yes — error pages appear in the Pages report when they load the pixel
Identifies drop-off between funnel steps✅ Yes — aggregate, via the Funnel report
Tracks individual user flows or exit pages❌ No — would require per-visitor page sequencing

Evidence: The Funnel report shows aggregate drop-off between defined steps, and the Pages report surfaces underperforming or erroring URLs. Sealmetrics does not reconstruct individual navigation paths or exit pages, because both require following one visitor across page loads — precisely the processing this exemption depends on avoiding.


Objective 3: Technical & Ergonomic Optimization​

Requirement: Optimize technical performance and user experience.

CriterionSealmetrics Compliance
Device/browser analysis✅ Yes — browser family, OS family, device type
Screen resolution data❌ Not reported — read only as an input to the session-identifier hash, never stored
Used only for optimization✅ Yes - not for targeting

Evidence: Device reports provide aggregated, non-identifying data for UX optimization only.


Objective 4: Server Capacity Estimation​

Requirement: Estimate necessary server infrastructure.

CriterionSealmetrics Compliance
Traffic volume metrics✅ Yes
Peak usage identification✅ Yes
Real-time visitor counts✅ Yes

Evidence: Real-time dashboard and traffic reports enable infrastructure planning.


Objective 5: Content Analysis​

Requirement: Analyze which content is consulted by visitors.

CriterionSealmetrics Compliance
Page view tracking✅ Yes
Content grouping✅ Yes
Aggregated statistics only✅ Yes

Evidence: Pages report shows aggregated content performance without individual user tracking.


Part 2: Technical Criteria (14 Points)​

Criterion 1: Purpose Limitation​

Requirement: Tool must be used exclusively for audience measurement for the publisher's own account.

AspectCompliance
Single-purpose tool✅ Sealmetrics is exclusively for analytics
Publisher's own account✅ Each client has isolated account
No secondary uses✅ No advertising, profiling, or resale

Configuration: Default configuration. No additional setup required.


Criterion 2: Anonymous Statistical Output​

Requirement: Must produce only anonymous statistical data.

AspectCompliance
Aggregated reports✅ All reports show aggregated data
No individual user data export✅ Cannot export individual sessions
Statistical anonymization✅ Data aggregated before display

Configuration: Built into platform architecture. Cannot be disabled.


Criterion 3: No Cross-Site Tracking​

Requirement: Cannot track users across different websites or applications.

AspectCompliance
First-party only✅ No third-party cookies (no cookies at all)
Site-isolated identifiers✅ Session identifiers incorporate the publisher account into their derivation, so the same browser yields different identifiers on different publishers' sites
No cross-domain identification✅ Hits are stored per account and never joined across sites
No unified IDs✅ No cross-site user graph, no shared advertising ID

Technical Implementation:

Session identifier: a hash of device characteristics computed in the browser, never stored on the device;
re-keyed on the server with a daily salt destroyed on rotation (live session ~2h, stored pseudonym purged after 1 day)
Session identifier scope: per publisher account — the account is an input to the identifier's derivation, so identifiers cannot match across different publishers' sites
Cookies: none (neither first- nor third-party)
Cross-domain tracking: not performed — data is collected, stored, and reported per account

Criterion 4: No Data Cross-Referencing​

Requirement: Cannot cross-reference analytics data with other processing activities.

AspectCompliance
Isolated data processing✅ Analytics data stays in Sealmetrics
No CRM integration for profiling✅ No user-level data merge
No external enrichment✅ No third-party data added

Configuration: Platform architecture prevents data cross-referencing. API exports only aggregated statistics.


Criterion 5: No Third-Party Data Transmission​

Requirement: Cannot transmit non-anonymized data to third parties.

AspectCompliance
No data sales✅ Sealmetrics never sells data
No third-party sharing✅ No data shared with external parties
Client owns their data✅ Data belongs exclusively to client

Legal Basis: Sealmetrics Privacy Policy and DPA guarantee no third-party data sharing.


Requirement: Cookie validity must not exceed 13 months, without automatic renewal.

AspectCompliance
Cookie duration✅ No persistent cookies used
Session-based identification✅ No cookie; the stored session identifier changes every day (daily salt, destroyed on rotation) and cannot link days
No automatic renewal✅ N/A - no persistent storage

Technical Implementation:

Storage method: nothing stored on the device (no cookies, no localStorage, no sessionStorage)
Maximum lifetime of the stored identifier: 1 day (daily pseudonym); live session expires after 2h of inactivity

Note: Sealmetrics exceeds this requirement by not using persistent cookies at all in standard configuration.


Criterion 7: Data Retention ≤ 25 Months​

Requirement: Collected data must not be retained beyond 25 months. Sealmetrics deliberately applies a stricter 24-month limit.

AspectCompliance
Analytics data retention✅ 24 months maximum
Automatic deletion✅ Data purged after retention period
Raw logs retention✅ 1 day only

Data Retention Schedule:

Data TypeRetention Period
Raw request logs1 day
Aggregated analytics24 months
Account configurationUntil account deletion

Criterion 8: IP Address Anonymization​

Requirement: IP addresses must be anonymized (last octet removed minimum).

AspectCompliance
IP storage✅ IP is never persisted in the analytics database (operational request logs are retained a maximum of 1 day)
Geolocation (default)✅ Country derived from browser timezone, not IP
In-memory use✅ IP is used in-memory only to check it against blocklists (a public list of automated-traffic IPs and your own exclusions), then discarded. It is never associated with a hit that reaches ClickHouse. (A GeoIP lookup was designed for the Agent Analytics bot detector, but that feature is not live and cannot be enabled, so no such lookup runs today.)

Technical Implementation:

// Country detection (default): browser timezone API
Intl.DateTimeFormat().resolvedOptions().timeZone

// No GeoIP lookup runs today: the Agent Analytics bot detector
// that would use one is not live and cannot be enabled.

Note: Sealmetrics goes beyond this requirement — no IP anonymization is needed because the IP is never persisted with analytics data in the first place.


Criterion 9: Geolocation Precision Limit​

Requirement: Geolocation must not be more precise than postal code level.

AspectCompliance
Location precision✅ Country level only
No precise geolocation✅ No city/region/postal code
Privacy-preserving method✅ Timezone-based detection

Geolocation Data Collected:

  • Country (derived from timezone)
  • No region, city, or postal code
  • No GPS or IP-based location

Criterion 10: Independent Data Collection Per Publisher​

Requirement: For services serving multiple publishers, data collection must be independent for each.

AspectCompliance
Client data isolation✅ Complete separation of datasets
Per-account tracking IDs✅ Each account has a unique tracking ID
Independent databases✅ Logical separation per account

Architecture:

Account A ──► Isolated dataset A ──► Reports A only
Account B ──► Isolated dataset B ──► Reports B only
↓
No cross-account access possible

Criterion 11: Totally Independent Trackers​

Requirement: Trackers must be completely independent with no interdependencies.

AspectCompliance
Unique tracking IDs✅ Each account has unique ID
No shared infrastructure impact✅ Client A cannot affect Client B
Independent configuration✅ Each account configured separately

Implementation:

<!-- Each client gets unique, independent tracker -->
<script src="https://t.sealmetrics.com/t.js?id=UNIQUE_ACCOUNT_ID" defer></script>

Criterion 12: User Information Requirement​

Requirement: Users must be informed about analytics via privacy policy.

AspectCompliance
Documentation provided✅ Privacy policy template available
Clear information✅ Plain language explanation
Purpose explanation✅ Audience measurement stated

Recommended Privacy Policy Text:

This website uses Sealmetrics for audience measurement. This tool
is configured to comply with CNIL guidelines for consent exemption.
It stores nothing on your device and no data that identifies you,
and does not track you across websites. Its session identifier is
ephemeral: it rotates daily and, once rotated, not even Sealmetrics
can reconstruct it. Reports are always aggregated. Legal basis:
legitimate interest (GDPR Art. 6(1)(f)). You can block analytics
using your browser's privacy settings or an ad blocker.

Criterion 13: Opt-Out Mechanism​

Requirement: Users must have ability to refuse audience measurement.

AspectCompliance
Opt-out available✅ Yes - by blocking the script in the browser, or by the site not loading the tracker for a visitor who objects. Sealmetrics has no built-in opt-out API and does not read DNT or GPC signals
Easy to access✅ Standard browser controls
No individual tracking✅ No tracking across days or sites to opt out of

Important Context:

Sealmetrics does not use localStorage, cookies, or any persistent storage by default. This means:

  • There is no individual user tracking to opt out of
  • Data is collected as aggregate statistics only
  • Each pageview is independent with no user identification

Opt-Out Methods:

  1. Browser-level blocking - Users can block the tracking script using browser privacy settings or ad blockers
  2. Publisher-implemented opt-out - Site owners can implement conditional script loading based on user preference
<!-- Example: Publisher-implemented opt-out -->
<script>
if (!localStorage.getItem('analytics_optout')) {
var s = document.createElement('script');
s.src = 'https://t.sealmetrics.com/t.js?id=YOUR_ID';
s.defer = true;
document.head.appendChild(s);
}
</script>

Note: Since Sealmetrics collects only aggregate statistics without individual identification, the opt-out requirement is satisfied by standard browser controls.


Criterion 14: No Reuse by Provider​

Requirement: Analytics provider cannot reuse data for their own commercial purposes.

AspectCompliance
No data monetization✅ Sealmetrics never sells data
No model training✅ Client data not used for AI/ML
No benchmarking without consent✅ No cross-client analysis

Legal Guarantee: Our Terms of Service and DPA legally prohibit any reuse of client data.


Part 3: Data Processing Details​

Data Collected​

Data PointCollectedPurposeAnonymization
Page URL✅Content analysisAggregated
Referrer✅Traffic sourceAggregated
User agent✅Device analysisAggregated
Screen resolution, languagesRead, not storedSession-identifier hash input onlyNot stored or reported
Timezone✅Country detectionCountry only
Session ID✅Visit countingHashed in the browser, re-keyed daily on the server; purged after 1 day
IP address❌Not collectedN/A
Email/name❌Not collectedN/A
Precise location❌Not collectedN/A

Data NOT Collected​

Sealmetrics explicitly does not collect:

  • IP addresses
  • Email addresses or personal identifiers
  • Precise geolocation (GPS, city, postal code)
  • Stored device fingerprints (the in-browser session hash is re-keyed daily and never stored as sent)
  • Cross-site identifiers
  • Advertising IDs
  • Social media profiles

Part 4: Infrastructure & Security​

Data Location​

AspectDetail
Analytics data processing locationDublin, Ireland (EU)
Analytics data storageEU only
SubprocessorsVisitor analytics data processed only in the EU (full list: Annex 3 of the DPA)
International transfers of analytics dataNone required (service emails go through Resend, US, under SCCs)

Security Measures​

  • TLS 1.3 encryption in transit
  • AES-256 encryption at rest
  • Regular security audits
  • GDPR Article 32 technical measures

Part 5: Configuration Checklist​

To ensure CNIL compliance, verify your Sealmetrics configuration:

Required Settings ✅​

  • Standard tracking mode enabled (not debug mode)
  • No custom user ID implementation
  • No PII in custom properties
  • Privacy policy updated with Sealmetrics mention
  • Opt-out mechanism available to users
  • Content grouping for aggregated analysis
  • Conversion tracking without PII

Prohibited Configurations ❌​

  • Do NOT pass email addresses as properties
  • Do NOT use custom user IDs for cross-session tracking
  • Do NOT combine with advertising/remarketing tools
  • Do NOT export individual-level data for profiling

Part 6: Compliance Statement​

Official Declaration​

Sealmetrics declares that:

  1. Our solution meets the CNIL criteria for consent-exempt audience measurement
  2. When properly configured, Sealmetrics can be implemented without requiring user consent under Article 82 of French Data Protection Law
  3. We provide documentation and configuration guidance to ensure compliant implementation
  4. We do not reuse client data for any commercial purpose

What does this mean for publishers in France?​

Publishers using Sealmetrics in France can:

  • ✅ Measure website traffic without a consent banner for their own audience measurement (on this self-assessment)
  • ✅ Track conversions for their own business analysis
  • ✅ Analyze content performance
  • ✅ Monitor technical performance

Publishers cannot:

  • ❌ Claim Sealmetrics is "CNIL certified" or "CNIL validated"
  • ❌ Use Sealmetrics data for advertising purposes
  • ❌ Combine Sealmetrics with profiling tools and claim exemption

Part 7: Version History​

VersionDateChanges
1.0February 2026Initial self-assessment based on CNIL July 2025 framework

References​


Contact​

For compliance questions or DPO inquiries:

In short
  • All 5 permitted objectives and all 14 technical criteria of the CNIL's July 2025 auto-evaluation framework are met on Sealmetrics' own assessment (last assessed February 2026).
  • No cookies are used, the IP address is never persisted with analytics data, geolocation is country-level from the browser timezone, and retention is 24 months (below the 25-month ceiling).
  • On this self-assessment, publishers may measure their own audience without a consent banner under Article 82 of French data protection law, but cannot claim Sealmetrics is "CNIL certified" or "CNIL validated".
Written and maintained by the Sealmetrics Team