Welcome to Ripples.sh

Lightweight analytics for indie products. One script tag. No complex setup. Free until $1K MRR.

What is Ripples.sh?

Ripples.sh gives you a pre-built analytics dashboard with traffic sources, signups, payments, and payback — all from a single script tag. No cookies banner needed for basic analytics, no account needed to start.

Out of the box you get:

  • Pageviews & sessions — automatic tracking with SPA support
  • Traffic sources — referrers, UTM params, ad click IDs (Google, Meta, TikTok, etc.)
  • Device & browser info — OS, browser, screen size, language
  • Web Vitals — LCP, FCP, CLS, INP, TTFB with an experience score
  • Bot filtering — known crawlers are automatically excluded
  • Visitor profiles — anonymous and identified user tracking

Quick start

Add this script tag to your site, right before the closing </head> tag:

<script
    defer
    data-token="YOUR_TOKEN"
    src="https://cdn.ripples.sh/v.js"
></script>

That's it. Pageviews, sessions, and Web Vitals will be tracked automatically. See Installation for framework-specific guides.

How it works

The script (~3KB gzipped) runs in the browser and sends events to https://api.ripples.sh/collect using sendBeacon. Each event includes the page URL, referrer, UTM parameters, device info, and a randomly generated visitor ID stored in localStorage.

Sessions are tracked per-tab with a 30-minute inactivity timeout. No server-side code is needed.

SDK methods overview

Beyond automatic pageview tracking, the JS SDK exposes these methods:

Method Description
ripples.track() Track meaningful product usage — powers the Activation dashboard
ripples.identify() Associate a visitor with an authenticated user
ripples.pageview() Manually trigger a pageview (for edge cases)
ripples.getVisitorId() Get the visitor's unique ID for server-to-server attribution