PostHog Session Replay Not Recording

Workaround available Web Updated October 21, 2026

Quick answer

Replays usually go missing because the session was sampled out, was shorter than the minimum duration, didn't match a URL trigger, or recorder.js was blocked by CSP or an ad blocker. The $recording_status property on the session's events tells you which.

Most likely fix: Read the recording status.

Symptoms

Recordings list is empty or shows far fewer sessions than analytics; events show $has_recording false.

Why it happens

  • Replay sample rate below 100% (status 'sampled_out')
  • Minimum recording duration filters short sessions
  • URL or event triggers not matched (status 'buffering')
  • disable_session_recording set in the SDK config
  • Content Security Policy blocking recorder.js or the /s/ upload
  • Ad blockers, or users closing the tab before data is sent
  • Old authorized domains list excluding www or subdomains
  • Outdated posthog-js

How to fix it

Try these in order — the most common fix is first.

  1. 1. Read the recording status

    1. Open Activity, expand a recent event from the session
    2. Open Debug properties and click 'Check session recording status'
    3. Or query $recording_status and $session_recording_start_reason for the session in the SQL editor
  2. 2. Adjust sampling, duration and triggers

    1. Open Project settings > Session replay
    2. Raise the sample rate or add a trigger for important flows
    3. Lower the minimum recording duration
    4. Remove or widen URL triggers; replace legacy authorized domains with URL triggers
  3. 3. Check the SDK config and version

    1. Remove disable_session_recording or set it to false
    2. Run window.posthog.LIB_VERSION in the console and update posthog-js if it is old
  4. 4. Allow PostHog in your CSP and proxy

    1. Look for CSP errors in the console
    2. Add PostHog domains to script-src, script-src-elem and connect-src (or default-src)
    3. If $sdk_debug_replay_flushed_size stays 0 while the buffer grows, unblock POST /s/ requests or route through a reverse proxy

This guide also covers

  • posthog session replay not working
  • posthog recordings not showing
  • posthog not recording sessions
  • posthog replay missing
  • posthog sampled_out

Still not working?

If PostHog keeps failing, you're not alone. See every PostHog problem users report or the alternatives people switch to.

Other PostHog errors