Everything you need to actually use.
No roadmap promises, no “coming soon” asterisks — every feature below is live in production today. Built for developers who want analytics that respects their users and their stack.
Everything Google Analytics does
without the baggage.
Live visitor map
Watch visitors land in real time. Geolocated to city, grouped by page, updated every second via SSE.
All 6 Web Vitals
LCP, CLS, FCP, TTFB, FID, and INP — collected and graded the way Chrome does it. No plugin required.
No third-party cookies
Zero HTTP cookies. No ad-tech fingerprints. No shared identity graph. Your visitor data stays yours.
Real-time analytics
The numbers you check five times a day, updated live without a page reload.
Daily reports tell you what already happened; real-time analytics tells you what is happening. When you ship a deploy, run a campaign, or respond to a referral spike, you want the dashboard to move with the world — not lag it by a day. Produl streams every pageview, event, and Core Web Vitals sample over Server-Sent Events so the team sees the same numbers at the same moment.
Live dashboard
Pageviews, visitors, sessions, bounce rate — updated every second via Server-Sent Events.
Read the docs →World map
Every active visitor as a point on a world map. City-level geolocation. Pulses when a pageview comes in.
All 6 Core Web Vitals
LCP, CLS, FCP, TTFB, FID, INP — graded the way Chrome does. Per-page, per-device, per-country.
Read the docs →Custom events
produl.track(name, props) — one API, any props you want. Auto-captures pageviews, outbound clicks, downloads, 404s.
Read the docs →Product & conversion
Tools for understanding how users move through your product, and where they drop off.
Pageview totals don't tell you why revenue stalled. Funnels and user flows do. Produl evaluates funnel steps server-side as events arrive, so you can see drop-off in the same minute it happens — and pair it with Stripe revenue to know which journeys actually pay. The combination is closer to a full product analytics surface than to a basic counter.
Conversion funnels
Multi-step journeys: landing → cart → checkout → thanks. Server-side evaluation updates live as events come in.
Read the docs →User flows
Force-directed graph of every path visitors take. Click a node to see who took that route and where it went.
Custom dashboards
Drag-and-drop widgets. Build one per team — exec, growth, engineering — each with the metrics they actually care about.
Read the docs →Stripe revenue
Native integration — paste an API key once, Produl pulls charges + subscriptions. See MRR, ARR, churn alongside traffic.
Read the docs →Operations & reliability
Ship confidently. Know the instant something breaks — or improves.
Analytics and uptime tend to live in different tabs. They shouldn't — a 500 spike, a deploy regression, and a sudden Core Web Vitals dip are the same story. Produl pulls alerts, status, and deploy annotations into the same view so the on-call engineer and the growth lead are reading from the same chart.
Alerts
Threshold, event, and anomaly-based. Discord/Slack webhooks. Auto-detect unusual spikes or drops with statistical anomaly scoring.
Read the docs →Status pages
Public uptime page for your product. Per-check tick marks, auto-incidents, Discord notifications, your own domain + TLS.
Read the docs →Deploy annotations
Mark deploys, campaigns, incidents on every chart. Traffic jump on Tuesday? Hover the line, read what you shipped.
Read the docs →Map Rewind
Replay the world map backwards. See the last 2 hours (Pro), 4 hours (Business), or 24 hours (Enterprise) of visitor activity.
Privacy-first
What we don't collect, by design.
Privacy-focused analytics is a posture, not a checkbox. The only way to ship cookieless analytics that holds up under GDPR, CCPA, and the UK's PECR is to refuse the identifiers that make those rules apply in the first place. Read the deeper write-up on our security page.
No third-party cookies
Zero HTTP cookies set for tracking. Visitor deduplication uses localStorage only.
Read the docs →No ad-tech fingerprints
No device-graph joins. No cross-site identity. No DSP syncs. Just your own traffic, in your own database.
Multi-region data residency
Choose US, EU, or APAC at site creation. Your analytics data physically lives in the region you pick.
Read the docs →Retention you control
Set how long raw pageviews are kept — from 30 days to forever. Web Vitals are hard-capped at 30 days regardless of plan.
Read the docs →Developer toolkit
First-class SDKs and a simple API that stays out of your way.
The fastest way to add analytics to a project is the one your framework already understands. Produl ships dedicated TypeScript SDKs for Next.js, React, Remix, and Vue, plus a server SDK for backend events and a plain script tag for everything else. The install is one line; the API surface is small enough to read in a sitting.
First-class SDKs
Next.js, React, Remix, Vue — full TypeScript, zero config. Plain <script> for anything else.
Read the docs →Server-side SDK
Track events from your backend — webhooks, cron jobs, server actions. Node, Deno, Bun, Cloudflare Workers.
Read the docs →Ask Produl
Natural-language queries. "How did conversion change last week vs. the week before?" — gets turned into SQL against your real data.
Read the docs →AI insights
Weekly digest and anomaly summaries in plain English. "Traffic from Germany doubled" — you see it before anyone asks.
Read the docs →Built for the whole workflow.
Not another dashboard that only shows pageviews. Produl has the tools you'll actually reach for — every week, when things move.
Conversion funnels
Define multi-step journeys and measure exactly where users drop off. Results recompute live.
User flows
Force-directed graph of every path users take through your site. Find the routes that convert.
Alerts
Threshold, event, and anomaly-based alerts. Get notified the moment something breaks (or takes off).
Custom dashboards
Drag-and-drop widgets. Multiple dashboards per site. Share views with your team.
Deploy annotations
Mark releases on your charts. See the exact moment a change moved the metrics.
Ask Produl
Natural-language queries on your own data. "How did conversion change last week?" — done.
Built the way you build.
TypeScript SDKs for Next.js, React, Remix, and Vue. One tiny API for custom events. Auto-captures the obvious stuff. Gets out of your way.
First-class SDKs
produl-tracker on npm. Framework adapters for Next.js, React, Remix, Vue. No config, no build step.
Auto-captures the obvious
Pageviews through SPA navigation. Outbound links. File downloads. 404s. Web Vitals. You don't wire it up.
One simple API
produl.track(name, props) — that's the whole custom-events API. Autocomplete included.
Non-blocking, async
The tracker runs on requestIdleCallback and defers to your page. Never delays a Core Web Vital.
// Fire custom events with any props you like.
produl.track('signup', {
plan: 'starter',
ref: 'twitter',
})
// Automatically captured:
// → pageviews (with SPA route changes)
// → outbound link clicks
// → file downloads (pdf, zip, docs, etc.)
// → 404sStop feeding your visitors
to Google. Start measuring
what actually matters.
Free forever up to 10k events · cancel any time