Migrating to Rybbit Analytics

By Lucas Brandao · São Paulo · verified 2026-05-05 · edit on GitHub

Rybbit is the destination for engineers who want session replay, heatmaps, and Web Vitals tracking without the $400/mo enterprise pricing of FullStory or Hotjar — and who can stomach running a tracker that turned 12 months old in March 2026. AGPL self-host, ClickHouse + TypeScript, autocapture on by default, free cloud tier covers under 3K events/mo, and Hetzner CX22 covers the rest at €4.51/mo. Read the source map first, then click into the matching pair page — only the GA4 path is currently live.

When Rybbit is the right destination

Rybbit is the right call in a narrow band: teams that want product-analytics-grade observability (replays, heatmaps, autocapture, performance metrics) but reject the $400-1200/mo pricing of FullStory, Hotjar, Heap, or PostHog Cloud at scale. The tracker shipped in March 2025; it is genuinely young. The trade-off is feature-richness now versus operational risk for 18 more months until the project crosses the "mature enough" threshold most procurement teams require.

When Rybbit is the wrong destination

Three procurement scenarios and one volume scenario where Rybbit is the wrong answer regardless of how good the product surface looks. Knowing this up front saves the 40-hour evaluation cycle.

From which source — pick your starting line

Five common origin points and their dedicated pair pages. Only the GA4 path is currently live; the others are scheduled.

Live · Pair page

Coming from GA4

The main path and the only live pair page. Effort easy, 3-5 calendar days end-to-end on a 80K-pageview test stand. Auto-capture covers most GA4 enhanced-measurement events out of the box; the JS API handles the long tail.

GA4 → Rybbit →
In queue

Coming from Universal Analytics

Coming soon. UA was sunset 2024-07-01, so the post-2024 use case is rare — most UA holdouts have already moved. Historical export route via BigQuery archive into Rybbit's CSV importer; live tracker is a fresh install.

UA → Rybbit (soon) →
Q3 2026

Coming from Mixpanel

Scheduled Q3 2026. Mixpanel's event-property schema maps cleanly to Rybbit's autocapture + custom events, but the cohort and funnel features in Mixpanel do not have a direct Rybbit equivalent. Most teams will keep both for now.

Mixpanel → Rybbit (soon) →
In queue

Coming from Plausible

Coming soon. A lateral move driven by one feature: session replays. Plausible has none and will not add them. If the team needs to see what users actually clicked on a broken checkout flow, Rybbit answers that. Goals translate one-to-one.

Plausible → Rybbit (soon) →
In queue

Coming from Segment

Coming soon. CDP-shape mapping. Segment's event-spec format translates to Rybbit's track API with a thin wrapper; the source-of-truth event schema lives in your codebase, not the tool. Migration is a tracking-plan rewrite plus a tag swap.

Segment → Rybbit (soon) →

If your source is none of those — Adobe, Heap, Amplitude, FullStory, Hotjar — file an issue on GitHub. The pair page roster is built by request.

What Rybbit replaces — at a glance

Eight rows comparing the GA4 default surface to Rybbit's. One line per row, copy-paste-friendly for a procurement memo.

CapabilityGA4 defaultRybbit defaultVerdict
Pageviews + sessionsYes (cookied)Yes (cookieless)Match
Autocapture clicks/formsEnhanced measurement, partialYes, fullRybbit wider
Session replayNone — buy FullStoryYes, includedRybbit wins
HeatmapsNone — buy HotjarYes, includedRybbit wins
Web Vitals (LCP/INP/CLS)Manual gtag setupOut-of-boxRybbit wins
FunnelsYesYes, basicGA4 deeper
BigQuery exportYes, freeAPI + CSV onlyGA4 wins
BAA / SOC 2 / HIPAAVia Google CloudNoneGA4 wins

The pattern: Rybbit wins on observability features that GA4 does not bundle, and loses on enterprise compliance and BI integration. If your evaluation criteria are clicks-replays-Web-Vitals, Rybbit replaces three tools at once. If your evaluation criteria are SOC 2 and BigQuery, do not migrate.

Migration cost reality

Rybbit's cost story splits into three honest paths. The numbers below are real 2026 prices for a 200K-events/month workload, the tier where most marketing-site evaluations land.

PathMonthly costOps overhead
Rybbit Cloud free tier (under 3K events/mo)$0/monone
Rybbit Cloud paid (above 3K events)$19-49/mo by volumenone
Self-host Hetzner CX22€4.51/moDocker + ClickHouse + Postgres
Self-host Hetzner CX32 (1M+ events)€7.55/mosame as above + replay storage

The free tier is genuinely free below 3K events/month. For a personal site or a pre-launch landing page, that is enough. Above 3K events the paid Cloud tier kicks in at $19/mo and scales to $49/mo around 500K events/month. Pricing is transparent on the Rybbit pricing page and has not changed since cloud launch in mid-2025.

Self-host on Hetzner CX22 is the cost-conscious answer. €4.51/mo (about $4.95) covers a 2-vCPU 4 GB box that runs Docker Compose with ClickHouse + Postgres + the Rybbit app on the same host. It handles 1-2M events/month before you need to upgrade to CX32 (€7.55/mo, 4 GB → 8 GB RAM). The operational tax is one image upgrade per month and one ClickHouse minor-version bump per quarter — manageable for any team with one Linux-comfortable engineer.

The break-even is 100K events/month. Below that volume, Cloud is cheaper than the time cost of running a VPS. Above that volume, the €4.51/mo self-host beats Cloud's $19-49/mo by 4× to 10×, and the operational tax is small if you already run other Docker workloads. If you do not currently run any Docker, pay for Cloud — the time cost is real.

If Rybbit's three trade-offs (12-month-old project, AGPL self-host or young SaaS, no SOC 2 / HIPAA) read as acceptable, this is the right destination for replay + heatmaps + autocapture without enterprise pricing. If any one is a hard no, look at Matomo (mature, heatmaps as paid plugin) or Piwik PRO (SOC 2 + HIPAA).

FAQ

Is Rybbit production-ready in 2026?
Production-ready for marketing sites, indie SaaS, agencies, and product-analytics use cases up to about 5M events/month — yes. Production-ready for regulated industries (healthcare, finance), enterprise procurement, or anywhere SOC 2 Type II is required — no. The project shipped its first stable release in March 2025; it is 12 months old. Schema breaks between minor versions are infrequent but still happen. The community Discord is the primary support channel. If your team is comfortable with that risk profile, Rybbit is ready. If your CTO needs a vendor with three years of audited operations on the wall, Rybbit is not.
What does the self-host actually cost?
€4.51/mo for a Hetzner CX22 (2 vCPU, 4 GB RAM, 40 GB SSD) handles 1-2M events/month with Docker Compose running ClickHouse + Postgres + the Rybbit app on the same box. Above 1M events upgrade to CX32 at €7.55/mo. Below 100K events/month the time cost of running a VPS exceeds the €19/mo Cloud tier; pay for Cloud. The math flips around 100K events/month and stays flipped to about 5M events, where ClickHouse storage starts to need a separate volume.
Can Rybbit import GA4 historical data?
No native importer. Same answer as the GA4 → Rybbit pair page: pull a GA4 BigQuery export (the free daily-aggregation export, not the streaming export), shape it into Rybbit's events CSV format with a Python script (community examples on GitHub), and load it via the bulk-import endpoint. The granularity you keep is daily-aggregated pageview, source, and country data — not session-level user journeys. Most teams keep GA4 read-only for 12 months for historical lookback and run Rybbit forward-only.
What if Rybbit shuts down?
Two safety nets. (1) Self-host: ClickHouse stores raw events on disk; clickhouse-backup dumps them to S3 in any format you want. The data is yours. (2) AGPL fork: the source is on GitHub, MIT-incompatible but legally forkable. If the upstream project goes dormant, the community can fork it; this happened to Plausible Community Edition's predecessors and the forks ran for years. The risk is not "data lost" — it is "no new features for 12-18 months while a fork stabilizes." For a marketing-site use case that is acceptable. For a regulated workload it is not.

Sibling destinations

Other destinations covered on this site. Rybbit fills a feature gap (replays + heatmaps + autocapture); the siblings cover different priorities.

→ Plausible → Matomo → Fathom → Umami
LB
Written by
Lucas Brandao
Analytics engineer · São Paulo · 11 years in data
Two Berlin SaaS migrations behind me. I write migrateanalytics.com as a public utility — no product, no affiliate, no consulting. All measurements are reproducible; raw data lives on GitHub.
v1 · 2026-05-05 · first publication. · edit on GitHub →