Self-hosted on Cloudflare

Self-hosted analytics on your own Cloudflare

No VPS, no Docker, no database to patch. One command deploys ownlytics into your Cloudflare account, and your data stays there.

All sales are final · License terms · Rather not self-host? Hosted from $9/mo

yourapp.com
9 online
Conversion
0%
+8.4%
Revenue/visitor
$0
+17.6%
Bounce rate
46%
+2.1%
Session time
3m 8s
+9.0%
Online
9
 
Fig. 1The dashboard for a sample site. Click Visitors or Revenue to toggle them, hover the chart and its notes, and click a referrer to filter everything by it.

What gets installed

  • A Worker serves the dashboard, the API and the tracking script.
  • A D1 database keeps your visitors, sales and goals.
  • A cron job syncs payments, sends alerts and runs cleanup.

All of it in your account. Visitors, sales and keys never touch our servers.

Install in about three minutes

npx ownlytics@latest

You need Node.js 22 or newer and a Cloudflare account (the free plan is fine). Paste your license key, click Allow when Cloudflare asks, and your dashboard opens. Run it again any time: it picks up where it left off. Every step.

What it costs to run

Cloudflare bills you directly, not us. The free plan comfortably handles sites up to roughly 20,000 pageviews a day across all your websites. Past that, Workers Paid is $5/month. What fits on the free plan.

Yours to keep

  • Updates: free for life, one command, data and settings stay put. Updating.
  • Your domain: serve the dashboard and script from a subdomain like analytics.yourapp.com. Custom domain.
  • Your retention: keep raw traffic 30 days or forever. Payments are never deleted automatically. Data retention.
  • Your exit: remove it from your account whenever you like. Uninstall.

Rather not run it yourself?

ownlytics Hosted is the same app, run by us at ownlytics.xyz/app: no Cloudflare account, nothing to install or update. $9/month for 50,000 events or $19/month for 250,000, unlimited websites on both, cancel anytime.

Ask your AI agent, too

Every ownlytics install has a built-in MCP server. One command connects Claude Code, Cursor, Codex, Windsurf or VS Code, and your agent answers "which post made me money?" from your own data. The same numbers are in your terminal and behind read-only API keys.

npx ownlytics@latest mcp

How the MCP server works · Docs

Questions

Do I need a server?

No. ownlytics runs as a Cloudflare Worker with a D1 database in your own account.

Is Cloudflare's free plan enough?

For most sites, yes: roughly 20,000 pageviews a day across all your websites. Above that, Workers Paid is $5/month, paid to Cloudflare.

How do updates work?

Run npx ownlytics@latest again. Updates are free for life and your data stays where it is.

Is there a hosted version?

Yes: ownlytics Hosted runs the same app for you at ownlytics.xyz/app, from $9 a month. No Cloudflare account needed.

Find out which of your posts pay the bills.

One script, one payment connection, and you'll know by tomorrow.

All sales are final · License terms · Rather not self-host? Hosted from $9/mo