Google Analytics 4 feels like flying a cargo plane to count visitors in a coffee shop. Plausible is calm but minimal. You want maps, funnels, and session replay without shipping the whole product to a US analytics tenant.
Rybbit is the newer open-source option in that gap: ~13k GitHub stars, AGPL-3.0, cookieless web and product analytics with a UI that actually looks like 2025. Drop a script tag, get real-time traffic, goals, retention, user journeys, error tracking, and optional session replays — self-host on your VPS or use their cloud if ops is not your hobby.
What it actually does
Rybbit targets teams leaving GA4, not teams building a data warehouse. One installation can track unlimited sites under organizations you define.
Highlights from the open-source edition:
- Core web stats — sessions, users, pageviews, bounce rate, duration, referrers, campaigns.
- Maps — country, region, and city views (optional Mapbox token for 3D map viz on self-host).
- Product-style views — funnels, journeys, retention, goals, custom events with JSON properties, advanced filters.
- Session replay & user profiles — debug UX issues without asking users to reproduce steps (configure masking for sensitive fields).
- Error tracking — front-end errors beside traffic, not in a separate tool.
- Real-time dashboard — watch launches without waiting for tomorrow's batch job.
Privacy positioning: cookieless collection aimed at reducing banner friction — still document what you collect for Canadian visitors; PIPEDA cares about purpose, not marketing adjectives.
Why self-host?
Data residency. Event payloads, replay blobs, and user paths stay on your ClickHouse-backed stack on a Canadian VPS instead of a vendor region you did not pick.
Feature parity. Rybbit's README is explicit that some rivals gate replay or advanced views on paid cloud tiers; self-hosting AGPL code is how you avoid surprise paywalls — at the cost of running Docker yourself.
Multi-site agencies. Unlimited sites per org suits shops hosting many client domains on Swift Host; one Rybbit instance behind separate site IDs beats twelve SaaS logins.
AGPL awareness. If you modify Rybbit and offer it as a network service to third parties, understand AGPL obligations. Internal use on your own domains is the common case.
What running it takes
Official quick start: clone the repo, run ./setup.sh your.domain.name on Ubuntu (tested on 24.04 x86_64). The script writes .env, pulls images, and starts Docker Compose with Caddy for automatic HTTPS. You need a DNS name pointed at the VPS — tracking over plain HTTP gets blocked by browsers anyway.
- RAM — at least 2 GB VPS per docs; replays and maps feel better with 4 GB.
- ClickHouse — analytics storage under the hood; ARM servers need ARMv8.2-A or newer for ClickHouse support.
- TLS — use Caddy from the script, or follow their manual compose guide if nginx already terminates SSL on the box.
- Signup — first visit
/signupon your domain to create the admin user.
Back up volumes before upgrades. Mask passwords in replay. If you use Cloudflare, follow Rybbit's SSL mode notes so certificate issuance does not fight your proxy.
Who it's for (and who should skip it)
Good fit: SaaS marketing sites, Canadian SMBs ditching GA4, product teams wanting funnels without PostHog's full platform weight, creators who want replay occasionally.
Maybe skip it: if you only need raw server logs, GoAccess is lighter. If you need warehouse SQL BI, use Redash or Metabase. If you will not run Docker or ClickHouse backups, Rybbit Cloud may be saner — compare total cost honestly.
Hosting it in Canada
Rybbit fits a dedicated analytics.client.ca on our Docker or VPS plans: Beauharnois or Toronto egress, nightly volume snapshots, firewall rules so only 443 is public.
Share site count, expected traffic, and whether you need session replay if you want a sizing check before you point production DNS at the setup script.
Want GA-style depth without the Google stack? Talk with Swift Host — we are in St. Albert and actually answer the phone.