Watch what your users actually saw
Recording with one flag·Privacy on by default·Jump from event to replay
One flag turns it on. Privacy defaults are already right.
Enable replays in your client config·Mask every input, or block whole nodes
1import { StackClientApp } from "@stackframe/stack";2 3// Turn it on. The recorder loads lazily and starts on the4// next page view — no extra script tags, no separate vendor.5export const stackClientApp = new StackClientApp({6 projectId: process.env.NEXT_PUBLIC_STACK_PROJECT_ID!,7 publishableClientKey: process.env.NEXT_PUBLIC_STACK_PUBLISHABLE_CLIENT_KEY!,8 tokenStore: "nextjs-cookie",9 analytics: {10 replays: {11 enabled: true,12 },13 },14});Three ways replays earn their keep
From event to playback in one click·Watch the replay, then have AI fix the page·Narrow thousands of sessions to the few you need
01·Event to replay
Spot something in your events — watch it happen
- Every click and page view carries a session ID
- Open the replay and the player lands on the moment
- No SDK calls, no decorators — it's just there
02·Watch, heatmap, fix
Watch the replay. See where everyone clicks. Ask AI to fix it.
- Play a session, then layer the heatmap from every user on that page
- Ask the AI to read the heatmap and tell you what to change
- Get concrete edits — move this, drop that, surface this tier
03·Find the right session
Skip the noise, watch the sessions that matter
- Filter by user, team, duration, or click count
- Drop into the activity window you care about
- Stop scrubbing through every replay to find the one
Ready to see what your users see?
Drop in a single app — or use the whole platform. Either way, you ship faster.
Get started for freeExplore other apps
View allEmail template configuration and management
Role-based access control and permissions
Pre-launch verification and readiness checks
Protect your project from fraud and abuse
Visualize where users click across your app
Payment processing and subscription management