See exactly where users click.
Live click heatmaps overlaid on a real screenshot of your page, sampled for performance, updated with every session.
Next.js · Cookieless · No consent banner
Click heatmaps, scroll depth, user journeys and funnels: one <Analytics/> component in your layout.tsx, cookieless, no banner. Plus: ask Claude about your traffic with claude mcp add.
< 3 KB gzip · one component · zero config
visitors in the last 7 days
Page views
18.2k
Bounce
32%
Avg. time
2m 14s
Built on Next.js + Appwrite
The gap
You can have a beautiful chart and still have no idea what your visitors actually did. The distance between a metric and a decision is where most tools quietly give up.
Privacy-first tools (Plausible, Fathom) show sessions and sources, but no heatmaps, no journeys, no funnels.
Behavioral tools (Hotjar, Clarity, PostHog) require a consent banner, which hurts your data quality and your UX.
Doing this for Next.js usually means stitching together several scripts and dashboards.
Paczesny° was built to close that gap: full behavioral depth, natively for Next.js, with no consent banner.
Features
Available in English and Polish.
Live click heatmaps overlaid on a real screenshot of your page, sampled for performance, updated with every session.
Scroll-depth heatmaps (25/50/75/100%) show exactly how far people get. Surface the sections nobody ever sees.
Aggregate navigation path-trees: the most common routes, entry and exit pages, full behavioral sessionization. Not session replay.
Define a funnel, measure drop-off step by step. One lime-green number tells you exactly how much you're leaving on the table.
Lighthouse audits (Performance, Accessibility, Best Practices, SEO) plus CrUX field data.
Catch window.onerror and unhandledrejection with occurrence counts and context.
Click any value (a page, country, source or device) to apply it as a global AND filter across every chart. Filters live in the URL, so a drill-down is shareable, and you can compare it against the previous period.
A durable per-event Explorer that keeps your custom events past the 30-day raw-retention cliff, plus a live reverse-chronological Stream of events as they arrive.
Real-traffic accuracy: a 1499-pattern crawler exclusion list plus ingest-time heuristics strip bots and spiders before they ever reach your numbers.
Let AI propose funnels from your real traffic, generated server-side as structured steps you review and edit before you accept them.
Queries, pages, countries, devices, search type and rich-result appearance, pulled straight from Search Console's Search Analytics, side by side with your on-site numbers.
See your submitted sitemaps and their errors, then inspect any URL on demand for index status, canonical, mobile usability and rich results: Google's own diagnostics, in your dashboard.
Route alerts to email, Slack, Discord or HMAC-signed webhooks, and schedule weekly or monthly digest reports, all per site.
A versioned REST API for your data, documented with OpenAPI 3.1 and a live Scalar reference at /api/v1/docs: read endpoints plus funnel, goal and alert management writes.
Per-site keys with the pak_ prefix, hashed at rest and shown only once. Choose read or read-write scope so each integration gets exactly the access it needs.
22 read tools: traffic, dimensions, funnels, Search Console (queries, pages, sitemaps, URL Inspection), Site Health
The aha moment
One funnel. One obvious drop-off. The fix staring you in the face.
Signup funnel · last 30 days
9.2% overall
Install
Paste the tracker once in your root layout. The API key never reaches the browser; the client only talks to the public ingestion endpoint.
Create a site in the dashboard and copy your siteId. Your API key stays server-side and never reaches the browser.
Paste the tracker once into your root layout. It loads non-blocking, batches events and uses sendBeacon.
Real-time visitors, heatmaps, journeys and funnels populate within minutes: no tagging plan, no config.
// app/layout.tsximport { Analytics } from "@paczesny/analytics"; export default function RootLayout({ children }) { return ( <html lang="pl"> <body> {children} <Analytics siteId="abc123" /> </body> </html> );}Privacy by design
The visitor identifier is a backend hash: sha256(siteId + ip + ua + dailySalt), salted daily. The raw IP is never stored, the identifier is de-identified and can't track a visitor across days, and nothing is stored on their device. Cookieless behavioral analytics by design, no consent banner needed.
visitorId = sha256(siteId + ip + ua + dailySalt)This is general information, not legal advice. Consult your own counsel about your compliance obligations.
30d
raw event retention
0
cookies
4
Lighthouse categories
MCP
The MCP server is built on the same public Read API and exposes your analytics to AI agents: Claude and any other MCP client. 26 tools total (22 read, 4 write), each scoped to a single site by its API key. The same data, still cookieless.
How to connect (Claude Code)
$ claude mcp add --transport http --scope user paczesny-analytics \ https://analytics.blonie.cloud/api/mcp/streamable-http \ --header "Authorization: Bearer pak_..." ✓ Added MCP server paczesny-analytics (user scope) > /mcppaczesny-analytics · connected · 26 tools (22 read · 4 write)A sample of the full 26-tool catalog
get_statsreadVisitors, pageviews, bounce, time, in a time window.
get_breakdownreadDimensions: pages, sources, countries, devices, UTM.
get_search_queriesreadQueries and positions from Google Search Console.
get_site_healthreadLighthouse audits plus CrUX field data.
manage_funnelwriteCreate, edit and delete funnels (read-write).
manage_goalwriteCreate, edit and delete conversion goals (read-write).
Pricing
Every plan is cookieless and consent-banner free. Start on Hobby, upgrade when your traffic does.
For a personal site or side project.
For makers running real products.
For teams and agencies at scale.
From the founder
I wanted analytics I could trust on my own sites: no cookie banner, no third-party trackers, and actual answers about what people do. So I built it.
Paczesny° is built and maintained by one engineer on Next.js and Appwrite. Every feature ships because it earns its place on a real dashboard, not to fill a comparison table. If you have an idea or hit a rough edge, the founder reads every message.
Bartłomiej Paczesny
Founder & sole engineer
0+
Sites tracked
0M
Events / month
0
Cookies set
0.00%
Ingest uptime
FAQ
A cookieless web analytics platform built for Next.js. It gives you full behavioral analytics (click heatmaps, scroll depth, user journeys, funnels and goals, on top of visitors, pageviews and sources) with no cookies and no consent banner. You drop one component into your layout and the data flows in within minutes.
By design. There are no cookies and nothing is stored on your visitors' devices, so the usual cookie-consent trigger isn't there. The visitor identifier is a server-side hash of the site, a daily-rotating salt and request signals; the raw IP is never stored and the identifier is de-identified, so it can't follow someone across days. That makes it de-identified data under a legitimate-interest analysis, not "anonymous." Exact requirements differ by jurisdiction, and your own legal review always has the final say.
Traffic and dimensions plus click heatmaps, scroll depth, user journeys, funnels and conversion goals, Site Health (Lighthouse audits with field data), JavaScript errors and your own custom events, live.
Yes. There is a versioned public Read API v1, documented with OpenAPI and a live Scalar reference at /api/v1/docs. A hosted MCP server exposes the same data to AI agents such as Claude, each connection scoped to a single site by its API key.
Bots and spiders are stripped before they ever reach your numbers, using a large crawler exclusion list combined with ingest-time heuristics, so your reports reflect real human traffic.
Yes. The dashboard and the public site are fully available in English and Polish.
Hotjar and Clarity deliver behavioral data (heatmaps, session recordings) but require a consent banner, which reduces data quality and degrades the user experience. PostHog is a powerful full-stack product tool, but it too operates on opt-in consent for behavioral data. Plausible and Fathom are privacy-first and cookieless, but they give you sessions and sources, not heatmaps, journeys or funnels. Paczesny Analytics combines the behavioral depth of Hotjar with the cookieless, no-banner approach of Plausible, built natively for Next.js.
The MCP server exposes your analytics data to Claude and any other MCP-compatible AI client through 26 tools: 22 for reading data (traffic, dimensions, funnels, Search Console including sitemaps and URL Inspection, Site Health) and 4 for writing (creating and managing funnels, goals, alerts and Search Console sitemaps). You connect once with a single CLI command and then ask questions in plain language. Write tools require a read-write scoped API key.
Yes to both. The tracker is a plain JavaScript snippet: it works on any site, including Vercel-hosted non-Next.js apps, plain HTML pages, or any framework with a root layout. For programmatic access, there is a versioned public Read API v1, fully documented with OpenAPI 3.1 and a live Scalar reference at /api/v1/docs.
General information, not legal advice. Requirements vary by jurisdiction; consult your own counsel.
Ready?
Start free, no credit card, live in minutes.