Privacy-first analytics

Know your traffic.
Know nothing about your visitors.

Cookie-free web analytics. A 1.6 kB script, a dashboard you read in ten seconds, and no consent banner to maintain.

Your dashboard

Last 7 days

Visitors

12 847

+18%

/pricing
4 820
/blog
3 140
/docs
1 890

Example view. Your own numbers appear within seconds of installing.

The whole integration

HTML
<script defer
  data-domain="your-site.com"
  src="https://assets.metuno.com/js/ws.js"
></script>

Script size

1,7 kB

gzipped, measured on the file we serve

Privacy

No consent banner

Nothing is stored in the browser, so there is nothing to ask about.

Data residency

European Union

No transfer to the US, no extra DPA clauses.

Setup time

1 min

Never collected
  • Cookies and localStorage
  • IP addresses written to disk
  • Any persistent visitor ID
  • Browser fingerprints
  • Personal data
  • Cross-site tracking

How it works without cookies

A visitor is recognised by a pseudonym computed on the fly and thrown away every midnight.

Instead of storing anything in the browser, we compute a single-use pseudonym from the truncated network, the browser and a random salt that rotates every midnight. Salts older than two days are deleted.

pseudonym = HMAC(daily_salt, site_id + network/24 + user_agent)

After 24 hours

The salt rotates and the same visitor gets a different pseudonym. Their visits across two days cannot be linked.

Different on every site

The site ID goes into the calculation, so the same person has a different pseudonym with each of our customers.

Address truncated first

The network goes into the calculation, not the address: IPv4 without its last octet, IPv6 down to /48. The full address lives in memory for one request and has no column to land in.

Everything we store about one pageview

path
/pricing
referrer_source
Google
country_code
PL
browser
Chrome 141
device_type
desktop
screen_class
XL
duration_seconds
47

Fields that do not exist in our schema

  • ip_address
  • cookie_id
  • user_id
  • fingerprint

Why this is not tracking

European data protection authorities, the French CNIL foremost among them, allow audience measurement without consent when it meets specific conditions. Here is each one, and what we do to meet it.

  • Address truncated before it meets the browser string

    IPv4 loses its last octet, IPv6 is cut to /48, and only that network enters the calculation. One input therefore covers 256 networks rather than one connection. The full address is stored nowhere: the database schema has no column for it.

  • A pseudonym with no persistence

    The salt changes with every UTC day and its row leaves the database after two days. A pseudonym from yesterday cannot be joined to one from today, not by the customer and not by us, because the material needed to do it no longer exists.

  • No tracking across sites

    The site id goes into the hash, so the same person has two different pseudonyms with two of our customers. Building a profile spanning several sites is not technically possible here.

  • No cookies, no device interrogation

    The script writes no cookies and no localStorage, and asks the browser nothing, no canvas, no font list, no screen resolution. Everything except the page address comes from headers your browser sends to every website. The Do Not Track header turns measurement off entirely.

  • Data only for the site owner

    Only the person who collected the statistics can see them. We do not sell them, do not join them with anything, and load no third-party scripts in the dashboard. Country and city come from a local database on our own server, without asking anyone.

  • Bounded retention

    Events are deleted after 25 months. That is the upper bound CNIL points to for measurement data. Salts, the only material that could tie anything to an address, after two days.

This describes our implementation; it is not legal advice. You need to assess compliance for your own site yourself, ideally with a lawyer. It also depends on whatever else runs on that site.

Plans and pricing

Two plans, no asterisks.

The free plan is not a trial. Small and mid-sized sites stay on it for good, and you start paying when a site is big enough that its numbers earn their keep.

Free

0 EUR

forever, no card

  • Unlimited sites
  • 100,000 pageviews a month, account-wide
  • 3 months of history
  • Public dashboards
  • Custom events and goals
  • CSV export

Pro

15 EUR

per site, per month

  • Everything in Free
  • Up to 1,000,000 pageviews a month
  • 24 months of history
  • Team access

You pay for the sites you mark as Pro. Two paid sites and one free one comes to 30 EUR a month, on a single invoice.

More than 1,000,000 pageviews a month?

You are running a seriously busy site. We will work out a simple plan around your actual needs: traffic, ingestion capacity and how long the data is kept. No surprise pricing, no complicated tiers.

At that scale some customers need dedicated infrastructure, higher ingestion capacity and longer-term storage. Rather than forcing that into a generic plan, we price what is actually needed.

Talk to us

We keep two years of data on every plan, including the free one. The free plan shows the last 3 months of it; moving up to Pro reveals the archive at once, and moving back down hides it rather than deleting it.

Start measuring in a minute

Since we don't store cookies, you don't have to ask about them. Less clicking for your visitors, less paperwork for you.

Create a free account Ask us a question

Sign up in a minute. No card, no sales call.

enpldees