Cabin Analytics Documentation
Cabin is a privacy-first, carbon-conscious web analytics solution. It's lightweight, compliant with all privacy laws, and the ideal cookieless alternative to Google Analytics.
No cookies or consent banners
Faster, lighter, and 100% green energy
No data sharing or ad networks
Compliant with GDPR, CCPA, and more
This documentation is available in English, Français and Deutsch.
Privacy by Design
Cabin is built from the ground up using Privacy by Design principles. We never store unique identifiers for your visitors, and our non-relational data structure makes it impossible to identify individuals based on their location, browser, OS, or language.
We don't sell or share any data with third parties or ad networks. Your visitors' data remains private and useless to advertising platforms.
Environmental Responsibility
Sustainability is a core principle at Cabin. Our script is 77× smaller than Google Analytics, saving terabytes of data transfer monthly, compared with Google - while delivering all essential features.
We run on 100% renewable energy with custom-built, resource-efficient software that maintains high performance on low-energy servers. This approach minimizes our carbon footprint while handling billions of pageviews.
We also commit a percentage of our revenue to carbon removal projects.
Data Collection
The Cabin script sends minimal data points, with additional information inferred from the user-agent and request headers.
Sent by script
{
r: 'google.com', // referrer
w: 2560, // screen width
p: 'https://example.com/', // path
t: 255, // load time (ms)
u: 0, // # of visits to the domain
up: 0 // # of visits to the page
}
Inferred from the request
Data point | Example |
---|---|
Timestamp | 1627589208201 |
Source | social |
Country | GB |
Browser | chrome |
Device | mobile |
OS | iOS |
Language | en |
Bounce | false |
utm_source | |
utm_campaign | summer_sale |
utm_medium | paid_social |
Unique Visitors Without Cookies
How does Cabin determine unique visitors without storing identifiers?
We've developed an innovative method for detecting unique visitors without relying on identifiers, IP addresses, or fingerprinting. Our approach is both accurate and privacy-preserving:
When a visitor interacts with Cabin, the request is cached in their browser like any standard web resource. We set a last-modified
header in the response to the start of the current day. On subsequent requests, the browser automatically sends this header back to check if the request is still valid. Cabin then increments the last-modified
time by one second with each visit.
By calculating the difference between the last-modified
time and the day's start, we can determine the number of visits without storing any personal data. The first request indicates a unique visit, while subsequent requests help us track metrics like bounce rate.
You can read more about this on our blog:
How Cabin measures unique visitors without cookies.
Visitor Geolocation
Every web request includes an IP address. Cabin converts this address in transit (within server memory only) to an ISO country code with no further location detail. We store only the country code—the IP address is immediately discarded and never logged.