V
virling/virling
Open-source revenue attribution: see which traffic channel brings paying customers
View on GitHub ↗Link checked 2026-11-12 · HTTP 200 · opens the vendor's own site
- Star count
- 2 ★ · virling/virling · read from the GitHub search API · (checked 2026-11-13 20:00:50)
- Source
- read directly from its GitHub page · type: open-source project
- Harvest history
- first seen 2026-11-10 · last seen 2026-11-14 · seen 5× · listed by 2 sources
- Score
- score 203 · 2 ★ · 2 sources · repo
FAQ (answers come from our records)
Who is it for?
We filed it under these tags: 开源项目. The tags come from the entry itself, not a taxonomy we imposed.
Who maintains it?
repository
virling/virling;first catalogued 2026-11-10;last seen 2026-11-14。There is no official certification or quality rating here — we record sources and dates only.Virling
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
Open-source revenue attribution. See which traffic channel brings paying customers, not just visitors.
virling.com · Live demo · Docs · For agencies
Virling joins every visit to the payment that followed. It answers the questions a founder asks every week:
Which channel brought the most revenue this month?
Did that launch, tweet or Reddit post make money, or just traffic?
What is a visitor from each source worth?
What path did my last paying customers take before they paid?
It runs as one Rust binary with embedded storage. No Postgres, no ClickHouse, no Redis.
> Status: early development. Releases are on the releases page and run on your own server today. Expect breaking changes until a stable release. Hosted plans start with a 14-day free trial at app.virling.com.
## What works today
Tracking script (/v.js, about 1.4 KB gzipped, source in assets/v.src.js): pageviews, UTM tags, referrers, single-page-app route changes, custom goals, and a first-party visitor ID. Stripe Payment Links, Polar checkout links and Dodo payment links get the visitor ID added automatically.
Cookieless mode: a daily-rotating salted hash instead of a cookie, for sites that want no consent banner, at the cost of payment attribution.
Event ingest into embedded DuckDB, with bot filtering, per-site rate limits and channel rules (Paid, Email, AI, Organic search, Communities, Social, Referral, Direct). Visitor IPs are never stored.
Payment sync from Stripe, Dodo Payments, Polar and LemonSqueezy with a read-only key (LemonSqueezy keys cannot be limited): a 90-day backfill, then a poll every minute. Virling never creates, changes or refunds anything. LemonSqueezy payments count toward revenue, but linking them to visits waits on webhook support.
Attribution: last non-direct or first touch, with a 30, 60, 90 or 365 day lookback. Renewals keep the channel of the customer's first payment. Payments without a visitor ID count as Unattributed.
Revenue dashboard: revenue, revenue per visitor and conversion by channel, referrer, campaign, page and country, payment journeys, a Visitors page, retention by first channel, tracked short links, and AI assistant visits next to AI crawler hits.
Reports and sharing: weekly email reports with agency branding, and an optional public dashboard.
Read API, MCP server and CLI: read-only access with API keys or OAuth sign-in, so virling query and AI assistants such as Claude and ChatGPT can answer revenue questions. Hosted Virling is in the Claude directory. An agent skill is in plugins/virling/skills/virling, and claude plugin marketplace add virling/virling installs it with the MCP server as a Claude Code plugin.
WordPress plugin in integrations/wordpress.
Magic-link sign-in and onboarding (behind --app).
Not available yet: the hosted plan, team members, imports from other tools, other attribution models and Windows builds.
## Run it
With Docker:
sh
docker run -d --name virling -p 8080:8080 -v virling-data:/data \
virling.com · Live demo · Docs · For agencies
Virling joins every visit to the payment that followed. It answers the questions a founder asks every week:
Which channel brought the most revenue this month?
Did that launch, tweet or Reddit post make money, or just traffic?
What is a visitor from each source worth?
What path did my last paying customers take before they paid?
It runs as one Rust binary with embedded storage. No Postgres, no ClickHouse, no Redis.
> Status: early development. Releases are on the releases page and run on your own server today. Expect breaking changes until a stable release. Hosted plans start with a 14-day free trial at app.virling.com.
## What works today
Tracking script (/v.js, about 1.4 KB gzipped, source in assets/v.src.js): pageviews, UTM tags, referrers, single-page-app route changes, custom goals, and a first-party visitor ID. Stripe Payment Links, Polar checkout links and Dodo payment links get the visitor ID added automatically.
Cookieless mode: a daily-rotating salted hash instead of a cookie, for sites that want no consent banner, at the cost of payment attribution.
Event ingest into embedded DuckDB, with bot filtering, per-site rate limits and channel rules (Paid, Email, AI, Organic search, Communities, Social, Referral, Direct). Visitor IPs are never stored.
Payment sync from Stripe, Dodo Payments, Polar and LemonSqueezy with a read-only key (LemonSqueezy keys cannot be limited): a 90-day backfill, then a poll every minute. Virling never creates, changes or refunds anything. LemonSqueezy payments count toward revenue, but linking them to visits waits on webhook support.
Attribution: last non-direct or first touch, with a 30, 60, 90 or 365 day lookback. Renewals keep the channel of the customer's first payment. Payments without a visitor ID count as Unattributed.
Revenue dashboard: revenue, revenue per visitor and conversion by channel, referrer, campaign, page and country, payment journeys, a Visitors page, retention by first channel, tracked short links, and AI assistant visits next to AI crawler hits.
Reports and sharing: weekly email reports with agency branding, and an optional public dashboard.
Read API, MCP server and CLI: read-only access with API keys or OAuth sign-in, so virling query and AI assistants such as Claude and ChatGPT can answer revenue questions. Hosted Virling is in the Claude directory. An agent skill is in plugins/virling/skills/virling, and claude plugin marketplace add virling/virling installs it with the MCP server as a Claude Code plugin.
WordPress plugin in integrations/wordpress.
Magic-link sign-in and onboarding (behind --app).
Not available yet: the hosted plan, team members, imports from other tools, other attribution models and Windows builds.
## Run it
With Docker:
sh
docker run -d --name virling -p 8080:8080 -v virling-data:/data \
Listed badge (optional)
Copy this line into the README if you want the listing mark. Optional, and it does not affect being listed.
[](https://anclum.com/en/s/virling-virling/)
- Source
- github · https://github.com/virling/virling
- Browse by field
- Open source
- Traction
- 2 ★
- Listed by
- 2 independent sources
- added
- today
More like this
Filed under
Every tag opens the full list for that filter. Counts are the live catalogue figures.