●Features

Everything in one script

Replay, issues, analytics and AI Insights share one set of sessions, and every plan has all of them. Jump to the part you care about.

01AI Insights

The cause, explained before you go looking

No searching, filtering or report building. As soon as a new error, failed request or on-screen message reaches a visitor with a replay, the AI reads the evidence and writes what happened, up to 3 likely causes and one fix, then looks again once 3 visitors have met it. It shows up at the top of your Overview and Issues pages.

Powered by Claude Opus 5.5 from Anthropic
AI InsightHigh confidenceFrom 5 replays, 2 for contrast

Photo uploads over 10 MB fail without a message

Visitors who add a photo larger than 10 MB see the upload spinner stop with nothing on screen. The upload request fails with 413, and the listing is saved without its photos.

Likely cause

The upload server rejects files over 10 MB, and the page doesn’t handle the error.

Fix to try

Resize photos in the browser before upload, and show an error when an upload fails.

How you’ll know

The number of sessions with this issue should fall.

What the AI sawHelpfulWrong

Citations are checked

Each cause cites the replay moments it rests on, and every citation is checked before the Insight is shown.

Numbers come from the evidence

The AI can’t add numbers of its own, and confidence is never above medium under 10 sessions.

“Cause not found yet”

When the replays don’t show a cause, the issue stays visible, with a next step to find it.

What the AI saw

Every Insight shows its exact evidence. It never contains session or user IDs, IP addresses or locations.

On for every site, off with one switch

AI Insights start working as soon as your site has issues, and each site can turn them off. They use Claude Opus 5.5, through the Anthropic API.

02Issues

The problems visitors hit, including the ones your code never reports

When a session ends, its replay is read for error messages and not-found pages. Everything is grouped into issues by message, request or element, and ranked by sessions affected, severity and how recent it is.

/sell/new
Something went wrong. Please try again.
On screen for 4.2 s

On-screen errors and not-found pages

Error banners, alerts, field errors and not-found pages, read from the replay once they’ve been on screen for half a second. Your code doesn’t need to log anything. Messages that read as normal validation, like “Invalid email or password”, go to Low signal.

TypeErrorCannot read properties of undefined (reading 'price')
POST /api/photos4131.2 s
GET /api/meNo response

Errors and failed requests

JavaScript errors and unhandled rejections with their stack, and failed fetch and XMLHttpRequest calls (axios too) with method, status and timing.

Post listing 3 clicks in 0.8 sRage click

Rage and dead clicks

Rage clicks: 3 clicks within a second in the same spot. Dead clicks: a click on a link or button after which nothing on the page changes for 3 seconds.

/Browse Marketplace/listings
Back in 2 s

Turn-backs

A visitor clicks a link, reaches the next page, and comes back or leaves the site within 10 seconds. Counted per link over 28 days of human traffic, split by signed-in and signed-out visitors.

/checkout Pay nowSubmitted 3 times No other page reached

Form struggle

A visitor submits a form 3 or more times without reaching another page, or submits and never leaves. A form becomes an issue once 5 or more sessions, and at least a quarter of the people submitting it, struggle.

Page not found/blog/spring-saleDead inbound link
Sessions that started here12 of 14
Top sourceutm_source=newsletter

Dead inbound links

When people land on a missing page from outside your site, the not-found issue shows where they came from: the top UTM source or referring site.

ResolvedRegressed in 2.14.0
POST /api/photos · 4133 together

Regressions and groups

Mark an issue resolved and it comes back as Regressed, with the release it returned in. Issues of the same kind that mostly hit the same sessions are grouped into one row, so one bug isn’t three.

03Replay

Watch the visit, with the activity beside it

Replays skip the idle stretches and mark errors, failed requests, rage clicks and dead clicks on the timeline. The activity list beside the player shows every page view, click, form submit, error and on-screen message. Open a replay from an issue and it starts at the problem.

  • Input values masked in the browser by default. Add data-at-mask or data-at-block for anything else
  • Route changes in single-page apps are recorded as page views, with no extra code
  • Add release to init() and every issue shows the release it started in
Something went wrong. Please try again.
Inputs masked
1:12 / 2:04 2× Skip idle
04Honest numbers

Only people in your numbers

Every session is scored on signals such as a webdriver flag, a headless screen size, a crawler user agent and whether a pointer ever moved. Likely bots and bots are Filtered out of reports, and so is your own team once you list your hosts or mark staff. Each session shows its tier and the reasons, and you can change it.

Last 28 days3,500 sessions recorded
Engaged512 Quick exit772 Bots, Filtered out2,120 Your team, Filtered out96
Why this session is a botScore 7
Webdriver flagHeadless screen sizeNo pointer movement
05Privacy

Private by design. We never sell your data.

Privacy rules for each region are built in, and you choose how strict they are. Turn on rules by location and visitors in the EU, UK, Switzerland and Quebec are only counted, with no replay, until they consent.

Visitor privacySettings › General
Your site’s consent setup decidesYour own banner and SDK settings decide what is captured.
Count without consent in opt-in regionsVisitors in the EU, EEA, UK, Switzerland, Quebec or an unknown location are only counted until your site grants consent.
Count without consent everywhereEvery visitor is only counted until your site grants consent.
What each visitor getswith Count without consent in opt-in regions
EU, EEA, UK, Gibraltar and SwitzerlandCounted only until consent
Canada (Quebec rules; the province isn’t known, so all of Canada)Counted only until consent
US privacy-law statesFull counted only with Global Privacy Control
Unknown locationCounted only until consent
Everywhere elseFull

Counted only means page views and scroll depth: no replay, clicks, errors or visitor IDs, and nothing stored in the browser. Your consent banner calls grantConsent() to record in full.

We never sell your data

Your data, and your visitors’ data, are used to run your dashboard and are never sold. Read the privacy policy.

Masked in the browser

Input values are masked before anything leaves the page. Add data-at-mask to hide an element’s text or data-at-block to leave it out. Tokens, emails and passwords in URLs are redacted in the browser too.

No IP addresses in your data

Visitor IP addresses are used to look up country and network. They aren’t saved with events or sessions.

AI Insights can be turned off

The AI gets page outlines and short timelines, never session or user IDs, IP addresses or locations. Page text you haven’t masked can be included. Anthropic doesn’t train its models on what is sent through its API (Anthropic’s policy).

Delete on request

Export or delete everything tied to a signed-in user, and set how long data is kept for each site.

Rules kept current

Location rules come from c15t’s open-source privacy rule set, checked for updates at least every six months.

06Everything included

One script, one dashboard

Replay, issues and analytics share one set of sessions, so every chart opens the replays behind it.

Capture

  • Page views, clicks, form submits, scroll depth and time on page, captured automatically
  • Custom events and signed-in users
  • Release tagging
  • Retries and an offline queue, so data survives flaky connections

Issues

  • JavaScript errors with stack
  • Failed fetch and XHR calls
  • Rage and dead clicks
  • On-screen errors and not-found pages
  • Form struggle and dead inbound links
  • Related issues grouped into one row
  • Resolve, ignore or mute until a date
  • Low signal for known noise

Replay

  • Full page replay with idle time skipped
  • Timeline markers for errors and frustrated clicks
  • Activity list and journey beside the player
  • Opens at the moment of the issue

AI Insights

  • Powered by Claude Opus 5.5 from Anthropic
  • On for each site, off with one switch
  • Top 10 issues kept explained
  • Causes cite replay moments
  • Also explains turn-backs and drops in your Key flow
  • Helpful or Wrong on every Insight

Analytics

  • Overview with Engaged visitors, Quick exit rate, Active time and Key flow conversion against the previous period
  • Unusual traffic days marked, with how those visitors fared
  • Pages with scroll depth, journeys, top clicked elements and turn-backs
  • URLs with IDs grouped automatically, like /orders/:id
  • Trends, Funnels, Retention and an Event log
  • Locations, sources, devices and browsers

Data quality and privacy

  • We never sell your data
  • Bot scoring with reasons
  • Internal traffic by host or staff user
  • Masking and URL redaction
  • Privacy rules by location, with three settings
  • Retention per site
  • Export or delete one user’s data

Admin

  • Multiple sites, each with its own keys
  • Ingest-only and erasure API keys

Feature requests

Missing something you need? E-mail [email protected] and tell us.

07FAQ

Questions and answers

Something missing? Ask us.

Claude Opus 5.5 from Anthropic, through the Anthropic API. The AI only sees the evidence for the issue it is explaining.

See it on your own site

Free for 30 days, no card needed. Set-up takes two tags.