Virling vs Umami
Umami is a free, open-source tool for traffic and events. Virling focuses on revenue: it reads your payments and joins each one to the visit before it.
| Virling | Umami | |
|---|---|---|
| Open source | Yes, AGPLv3 | Yes, MIT |
| Self-host | Yes, one Rust binary with embedded storage. No Postgres, ClickHouse or Redis. | Yes. Needs a PostgreSQL or MySQL database |
| Revenue | Read from Stripe, Dodo Payments, Polar or LemonSqueezy with a key, no event code | A built-in revenue report fed by the events you send; see their docs for how amounts arrive |
| Renewals keep their first channel | Yes. Renewals keep the channel of the first payment | See their docs |
| AI assistant traffic | Yes. AI assistant visits and AI crawler reads, with revenue | Referrals only |
Based on Umami's public docs as of October 2026. See Umami for their current features and pricing. Something out of date? Tell us.
When Umami is the better fit
You want a free, MIT-licensed tool for traffic and custom events, on a database you already run, and you are happy to send revenue events from your own code.
When Virling is the better fit
You sell a product or subscription and want payments read automatically and joined to the visit before them, with revenue per visitor by channel.
Frequently asked questions
Does Umami track revenue?
Umami has a built-in revenue report fed by the events you send; see its docs for how amounts arrive. Virling reads Stripe, Dodo Payments, Polar or LemonSqueezy directly with no event code.
What does it take to self-host Umami and Virling?
Umami needs a PostgreSQL or MySQL database. Virling is one Rust binary with embedded storage.
When is Umami the better fit?
When you want a free, MIT-licensed tool for traffic and custom events on a database you already run, and you are happy to send revenue events from your own code.