Open source · free hosted beta · your data in your bucket

Analytics and session replay that cost nothing to run

Pageviews, sources, campaigns, cities, devices, custom events, funnels, retention, errors, Web Vitals and full session replays. One 8 KB script. One small VM. A bucket as the database. The Google Analytics and PostHog replacement built for 2026.

<script async src="https://analytics.carebun.com/hanu.js" data-token="ha_pk_…"></script>
The HanuAnalytics dashboard: visitors, pageviews, sessions, top pages and sources
Everything a product team asks for

The whole picture, not a sample of it

Install once and every page, click, error and visit is there. Name your own events for the moments that matter.

▶

Session replay you can actually afford

Watch what a visitor did, with inputs masked before anything leaves their browser. Recordings are stored as compressed chunks in your bucket, so a ten-minute session costs a fraction of a cent, and you choose the sample rate per project.

A session replay with the event timeline beside it
◎

Live view

Who is on the site right now, which pages, and the event feed as it happens.

☺

Persons

Identify signed-in users; see their properties, sessions and replays in one place.

⌂

Teams and projects

Organizations, members with roles, invite links, any number of sites, each with its own allowed domains and keys.

⌁

Pages, sources, campaigns

Entry and exit pages, referrers classified (Google, X, LinkedIn, ChatGPT…), UTM source, medium and campaign, bounce rate and time on site per row.

⌖

Cities and devices

Country, region and city from the IP without storing it. Browser, OS, device class and screen size.

⚑

Events, funnels, retention

Count any event, break it down by any property, build a funnel from ordered steps, see weekly cohorts come back.

⚠

Errors and Web Vitals

JavaScript errors grouped by message with the page they happened on. LCP, CLS, INP, FCP and TTFB at the 75th percentile, split into good, needs improvement and poor.

⌘

SQL over your raw events

Every event is a row in a Parquet table. Ask anything with SQL, straight from the dashboard, with a JSON accessor for your custom properties. Export CSV.

☂

Private by design

No raw IPs stored, daily-rotating visitor hashes, cookieless mode, opt-out, Do Not Track, per-project retention.

⚙

One binary, one script

The server, the admin app, the SDK and this page ship in a single Rust binary. Deploy to Google Cloud's free tier with one command, or anywhere with a bucket.

How it works

A VM is a cache. The bucket is the truth.

The same design as HanuDB, the database it runs on: one free-tier machine does the work, and everything durable lives in object storage that costs cents.

Collect

The 8 KB script sends batched events with a beacon. The server checks the project's allowed domains, adds geo and device, and buffers.

Store

Events become zstd Parquet files, one per project per day; recordings become gzip chunks. HanuDB keeps users, projects, sessions and persons.

Query

Apache DataFusion scans the local mirror of those files. Dashboards are SQL templates, so the explorer gives you the same table.

your site  ──<script src=…/hanu.js>──▶  one e2-micro (free tier)                     ──▶  bucket (the truth)
                                        caddy :443 ─▶ hanu :8090 (Rust, axum, DataFusion)      events/   parquet
                                                      └─▶ hanudb :8080 (Rust)                   rec/      rrweb chunks
                                        admin app · SDK · ingest · stats · replay · SQL         hanudb/   its log
Cost

About one cent a month. Really.

There is no database server to pay for and queries never read the bucket. The only metered thing is object writes, and events are batched into a few hundred of them a day.

ItemWhat it costs
Compute: one e2-micro VM with a 30 GB disk$0 on Google Cloud's Always Free tier
Storage: a million events as Parquetabout 60 MB, $0.001 a month
Writes: a site with traffic all dayabout 1 500 objects a day, $0.23 a month
A ten-minute session recordingabout 300 KB, $0.000006
The hosted beta on analytics.carebun.comFree while in beta. Paid plans will come later, with notice; self-hosting stays free forever.
Open source

MIT licensed. Run it anywhere.

One Rust binary with the admin app and the SDK inside. Deploy to Google Cloud with one script, or point it at any S3-compatible bucket and a HanuDB.

Hosted beta free

Get an account on analytics.carebun.com

Tell us who you are and where you'll use it. You get an invite link by email, usually the same day. Then it is the snippet above and nothing else: your data stays in our bucket, in your own organization, and you can export it as CSV or Parquet at any time.

Thanks! Your request is in. You'll get an invite link by email once it is approved.