DEV Community

Cover image for I got tired of analytics full of bots, so I built one that follows the money
Michael Andreuzza
Michael Andreuzza

Posted on

I got tired of analytics full of bots, so I built one that follows the money

Every analytics tool can tell you that 12,000 people visited your site last month. Almost none can tell you which of those visits actually paid you.

That gap is why I built Kobbe: privacy-first analytics with traffic, conversions, and revenue in one dashboard. No cookies, no consent banners, and no bots in your stats.

The two problems I couldn't ignore

Bots look like people now. Modern bots run real Chrome and rotate residential IPs, so user-agent checks alone catch almost nothing. Kobbe filters in layers: user-agent checks, verified-bot detection at the edge, datacenter network (ASN) checks, and behavioral signals. Headless browsers, scrapers, and referrer spam get dropped before they touch your stats or your quota. VPN users are untouched, because privacy tools are not bots.

Traffic doesn't equal money. A post with 10,000 views that never converts is worth less than a comparison page with 300 views that closes deals weekly. Kobbe passes attribution through checkout with Stripe, Polar, Paddle, Shopify, and friends, so the dashboard shows the revenue each page, source, and campaign actually produced. Refunds are tracked too, so you see net revenue, not the flattering gross number.

Setup is one script tag

<script
  defer
  data-token="YOUR_SITE_TOKEN"
  src="https://app.kobbe.io/tracker.js"
></script>
Enter fullscreen mode Exit fullscreen mode

That's it. No cookies are set, no raw IPs are stored, and Global Privacy Control and Do Not Track are honored before a single request is sent. There is nothing to consent to, so there is no banner to click away.

Custom events without writing JavaScript

Tracking is declarative. Add an attribute to any element and clicks become events:

<button
  type="button"
  data-kobbe-event="Newsletter signup"
  data-kobbe-event-source="footer"
>
  Subscribe
</button>
Enter fullscreen mode Exit fullscreen mode

Extra data-kobbe-event-* attributes become event properties ({ source: "footer" }). Want to know when someone actually reaches your pricing section? Scroll visibility events work the same way:

<section data-kobbe-scroll="viewed_pricing">
  <h2>Pricing</h2>
</section>
Enter fullscreen mode Exit fullscreen mode

Those events aren't just counters. They feed funnels, conversions, and revenue attribution, so "Newsletter signup" can be a funnel step with a dollar value attached.

What else is in the box

Everything ships on every plan; you only pick your event volume:

  • Realtime: who is on your site right now, as anonymous dots on a globe
  • Funnels built from pages and events you already collect
  • Core Web Vitals with percentile trends
  • Google Search Console queries beside your traffic
  • Roll-up views across all your sites in one dashboard
  • Import from Plausible, Fathom, or Umami, and export anytime
  • A CLI, an MCP server, and a Raycast extension for people who live in the terminal

Pricing starts at $9/month for 100K events, 15-day trial, 3 years of retention on every tier. No feature gates.

Poke around without signing up

The live demo is a read-only workspace with realistic data: overview, realtime, funnels, revenue, all of it. What you see is exactly what you get after installing the tracker.

Real visitors deserve real numbers. Feedback welcome, especially the critical kind.

Top comments (0)