

Analytics Built for Next.js
Most analytics tools treat Next.js like a static site. OpenPanel was built for how Next.js actually works — App Router, server components, API routes, and route changes all tracked correctly. Install in 5 minutes, get events, funnels, and user profiles that work with SSR.
- App Router support
- Server-side events
- Auto route tracking
- 2.3 KB client bundle


Why standard analytics breaks in Next.js
Next.js is not a traditional website. Most analytics tools were built before App Router existed and show it.
GA4 breaks with App Router route changes
Google Analytics was designed for traditional page loads. In Next.js App Router, client-side navigation doesn't trigger GA4's page view events unless you add custom workarounds. Your analytics misses a significant portion of page views.
Cookie consent is painful in Next.js
Implementing a GDPR-compliant cookie consent flow in a Next.js app requires next/script, consent state management, and conditional script loading. It's a non-trivial engineering task just to run analytics.
No server-side tracking
Most analytics SDKs are client-only. Server-side events — API route completions, background jobs, server actions — are invisible. You're missing half the picture.
Analytics libraries bloat your bundle
Many analytics SDKs add 20–50 KB to your JavaScript bundle. In a performance-conscious Next.js app, that overhead matters for Core Web Vitals.
Analytics that works the way Next.js works
OpenPanel's Next.js SDK was designed for modern Next.js patterns — not adapted from a legacy client-only library.
Next.js SDK with App Router support
Install @openpanel/nextjs, add the <OpenPanelComponent> to your root layout, and automatic route change tracking works immediately across App Router and Pages Router.
Automatic route change tracking
Every router.push(), <Link> navigation, and back/forward browser action is captured as a page view. No custom useEffect or router event listeners needed.
Server-side event tracking
Import openPanel in any server component, API route, or server action to track events server-side. Track form submissions, payment completions, and background jobs without any client involvement.
Cookieless by default
The OpenPanel SDK uses no cookies. No consent management library, no conditional script loading, no GDPR consent modal needed — just install and track.
Identify users across sessions
Call op.identify({ profileId, name, email }) after authentication to tie anonymous events to known users. Works with any auth solution including NextAuth.js, Clerk, and custom implementations.
TypeScript-first SDK
Full TypeScript types for all methods. Autocomplete for event names and properties. Zero runtime errors from mistyped event calls.
2.3 KB gzipped client bundle
The smallest full-featured analytics SDK for Next.js. No impact on Lighthouse scores or Core Web Vitals.


Why Next.js developers choose OpenPanel
OpenPanel fits naturally into a modern Next.js codebase — not as an afterthought.
Works exactly how Next.js works
Built for App Router, server components, and modern Next.js patterns. Not bolted onto a client-only library.
No consent infrastructure needed
Cookieless tracking means no consent modal, no next/script loading gymnastics, no conditional initialization. Install once, works everywhere.
Track server and client events in the same dashboard
Server actions, API endpoints, and client interactions all show up together. Full picture of what your app is doing.
Open source and self-hostable
Run OpenPanel on your own infrastructure. Your Next.js app's analytics data never leaves your servers.
From $2.50/month
No enterprise contract, no per-seat fees. Pay for events, get all features. Start free with 30-day trial.


Frequently asked questions
Common questions from Next.js developers evaluating OpenPanel.
Related resources
Learn more about OpenPanel and how it can help you.
Ready to get started?
Test OpenPanel free for 30 days, you'll not be charged anything unless you upgrade to a paid plan.
Try OpenPanel Free