Rybbit

Rybbit

Traffic, funnels and retention from an 11 KB tracker

Rybbit is open source web and product analytics, licensed under AGPL-3.0. Its authors pitch it as a Google Analytics replacement: no cookies and therefore, by their account, no consent banner, GDPR compliance, and an 11 KB tracking script. Beyond the usual traffic numbers (sessions, unique users, pageviews, bounce rate, session duration), Rybbit records session replays and builds funnels, retention reports and user journeys. It runs either on the vendor's EU-hosted cloud or on your own server with Docker Compose.

The comparison of self-hosted web analytics tools places Rybbit among the compared tools that run on ClickHouse.

Replays on your own server, errors next to pageviews

  • Session replays included when self-hosted: recordings show mouse movement, clicks, scrolling and navigation. Sensitive information is masked automatically, and a PII setting extends masking to form inputs and text. Replay is switched on per site in the settings, with no change to the script tag. On the cloud, it takes the Pro plan or above.
  • Product analytics and errors in one place: goals, funnels, retention, user journeys, user profiles, custom events with JSON properties, and errors listed next to the traffic.
  • Filtering across 15+ dimensions, plus three-level location data (country, region, city) with maps.
  • Many sites per instance: organizations, an unlimited number of sites, and public dashboards.

Signup drop-offs, client sites and public stats pages

  • Finding the step where a signup flow loses people, then watching the sessions that stopped there
  • Tracking several sites or clients from a single instance
  • Publishing an open source project's stats on a public dashboard

HTTPS required, ClickHouse underneath, signups left open

A domain with HTTPS is mandatory. The self-hosting guide asks for a domain or subdomain pointed at the server, because browsers block tracking scripts served over plain HTTP. By default, setup.sh starts a Caddy container that fetches the certificate; --no-webserver leaves it out when a reverse proxy is already in place.

ClickHouse sets the hardware floor. The Docker Compose stack runs ClickHouse for events, PostgreSQL for accounts and configuration, Redis for sessions and job queues, a Node.js backend and a Next.js frontend. The docs recommend at least 2 GB of RAM and, on ARM, an ARMv8.2-A CPU or newer, which ClickHouse requires. The Compose file caps ClickHouse at 80% of RAM to leave room for the other services. For comparison, PostHog, which also offers session replay and also depends on ClickHouse, asks for the equivalent of 4 vCPUs and 16 GB of RAM when self-hosted.

Replays are stored in ClickHouse. On a self-hosted instance, session recordings go into the same database as events. Default retention is 30 days, and the docs warn that replays can take up a lot of space; to shorten it, they give ALTER TABLE ... MODIFY TTL statements to run in clickhouse-client. Swetrix, also built on ClickHouse, has not shipped a release that records replays on a self-hosted instance yet: its docs plan an S3-compatible bucket you supply, but the code landed after v5.4.1.

Two defaults worth changing. The setup script writes DISABLE_SIGNUP=false, so the signup page stays open after the admin account is created, until the variable is set to true. Self-hosted instances also send anonymous usage stats to the vendor's cloud (row counts for a few tables, database size, version, a hashed instance ID); DISABLE_TELEMETRY=true turns that off.

A young project that ships often. The repository was created in January 2025. v1.0.0 came out on May 30, 2025, v2.0.0 on October 17, 2025, and the latest release, v2.9.0, on September 12, 2026: seven minor versions since January 2026. The docs put setup at 30 to 120 minutes, followed by regular updates through git pull and ./update.sh.