Get started with Session Replay

Install the SDK and turn on recording

Add a PostHog SDK to your app and enable session recording. Web needs a snippet or the JavaScript SDK; mobile apps use the React Native, iOS, Android, or Flutter SDKs. Recording is a project setting, so you also have to switch it on in project settings before anything is captured.

Web has the most complete feature support. Mobile has a few limits, like wireframe-only mode unless you turn on screenshot mode, so check your platform's page.

Install session replay

Decide which sessions to record

Recording everything is rarely what you want, and it's the main driver of cost. Recording rules let you sample a percentage of sessions, record only certain URLs or events, gate recording behind a feature flag, or record only sessions from a specific cohort.

Set this up early. Rules apply at capture time, so they only affect sessions recorded after you change them.

Set recording rules

Mask sensitive data

Masking happens on the device, before anything is sent to PostHog. By default inputs are masked; you can also mask all text, mask specific elements with ph-no-capture, or unmask elements you know are safe. Mobile SDKs have their own masking rules for screenshots and third-party screens.

Get this right before you record real traffic, because a replay captured unmasked stays unmasked.

Configure privacy controls

Capture console logs and network requests

A replay is far more useful with its DevTools panel filled in. Turn on console log recording to see logs, warnings, and errors on the timeline, and network performance capture to get the request waterfall, including headers and bodies if you opt into them.

Apps that draw to a <canvas> element need canvas recording, and apps that embed other PostHog-instrumented pages need iframe recording.

Capture performance data

Watch, filter, and share replays

Open Replay in PostHog and you get a filterable list of sessions plus a player with a synced activity timeline. Filter by rage clicks, exceptions, custom events, person properties, or feature flag variant, then save what you find as a collection and share or embed it.

Watch recordings

Let PostHog AI do the watching

Nobody watches every recording. Ask PostHog AI in the web app to find replays in plain language – "users who rage clicked on the pricing page" – and to summarize sessions so you get the pattern instead of an afternoon of playback.

Prefer your editor? The MCP server exposes the same search from Cursor, Claude Code, Codex, and other MCP clients.

Summarize sessions

Let Self-driving watch them for you

Session replay isn't just playback – it's a signal source. PostHog looks for the moments users get stuck, clusters them across sessions, and files a Self-driving report with the recordings that prove it. The report goes to a human reviewer, not a coding agent, because a replay shows you the symptom and working out the cause takes judgment.

SessionsSignalsSelf-driving reportHuman review

Session replay and Self-driving

Know what's free

Session replay is free up to a monthly allowance of web and mobile recordings, then priced per recording with volume discounts. There are no per-seat charges, and you can set a billing limit so a traffic spike can't surprise you. Recording rules and data retention are the two biggest levers on your bill.

See pricing

Community questions

Was this page useful?