Compare

Vitrus vs. Rybbit

Two takes on analytics in the AI era. Rybbit is the closest thing to us in spirit: open source, cookieless, EU-hosted, and one of the few tools that already treats AI agents as first-class users via an MCP server. We are aiming at the same era from a different angle.

Get started free Read the docs

Feature comparison

CapabilityRybbitVitrus
Cookie-free, no consent banner
Self-hostable
MCP server for AI agentsread + writeread-only, evidence attached
Evidence returned to the agent
Core Web Vitals
JavaScript error tracking
Ordered funnels
Session replay
Heatmaps
User profiles
User journeys / path analysis
Named goals with targetsfunnels and custom events
City-level geography and mapscountry only, from your proxy
Tracker size (gzipped)~18 KB2.4 KB
AI referral ↔ AI crawler split
Unprovable AI sentences auto-dropped
Per-site strict privacy mode

Features we don't have are shown as “—”. A comparison that hides its own gaps would contradict the one thing this product claims.

When to choose Rybbit

Rybbit is broader today. Session replay, heatmaps, user profiles, error tracking, autocapture and a large integration catalogue are all shipping, and their MCP server can create goals and manage resources — ours is deliberately read-only. If you want one tool that both watches and acts, they are further along.

When to choose Vitrus

When you need the agent's answer to be checkable. Our MCP returns the SQL, the parameters and the raw rows with every metric, so an agent can cite evidence instead of asserting a number — and a human can audit what the agent said afterwards.

Frequently asked

You both have MCP. What is the real difference?

Theirs can act — create goals, manage resources. Ours cannot, on purpose: analytics is a system of record, and a record a model can write to stops being a record. What ours does instead is return the query behind every number, so the agent's claim is verifiable.

Why is your MCP read-only?

Because the failure mode is asymmetric. A wrong read produces a wrong sentence you can catch. A wrong write silently corrupts the history you are measuring against, and you may not notice for months.

Their script is 18 KB and yours is under 3. Does that matter?

It matters if you care about Core Web Vitals, and less otherwise. Most of their weight is session replay, which we do not ship at all — so this is not really a comparison of efficiency, it is the same trade-off stated in bytes. You are choosing between recording sessions and a script that barely registers.

They have city-level maps. Why do you only show countries?

Because a GeoIP database is a 60 MB file with a monthly update cycle, and bundling one would end the claim that installing Vitrus is a single command with nothing else to run. We read the country header your proxy already sets, and when there is no proxy we say the data is missing rather than guessing from the IP.

Surveying the whole landscape?

Other comparisons: