Embeddable session replay infrastructure on the open source library the industry standardized on. Record and replay sessions inside your own product, through an unbranded SDK and API.
Listed in
Full Video Recording Capability
rrweb can record and replay the whole web app experience through videos, allowing for comprehensive playback of user interactions.
High Fidelity Replays
It captures almost all kinds of interactions and DOM state changes, offering very accurate reproduction of user sessions.
Event Compression
The tool employs efficient event compression techniques, reducing the size of data files while maintaining detailed interactions.
Modular Architecture
Its modular architecture allows developers to customize and extend functionalities according to specific needs by adding or removing plugins.
Open Source
rrweb is open source, making it accessible for anyone to use, modify, or contribute to, which fosters a collaborative development environment.
Most session replay vendors are building on the engine we maintain. Choosing rrweb means owning that layer directly.
What that gets you in practice: events are plain JSON, so you store them in your own S3, Postgres or stream, keep them in the EU, and delete them on your own schedule. There's no lock-in at the recorder, because if you leave rrweb Cloud your recordings still replay in an open source player. And the plugin API lets you capture things a closed SaaS recorder will never expose, including canvas, WebGL and custom event types.
Where a competitor wins: if you want replay bundled with product analytics, error monitoring and heatmaps in one dashboard, and you never want to think about infrastructure, a full suite like PostHog or Sentry does more out of the box. Several of them sponsor rrweb, and we'd rather people use the right tool than the closest one.
Two groups.
Product engineers who need replay inside something they're already building: bug reporting, customer support tooling, QA, AI agent observability, interactive demos. They install the library, own the pipeline, and want format-level control.
Platform teams at companies whose product is replay, or includes it. Observability vendors, analytics suites, co-browsing and customer experience tools. They embed rrweb as the capture layer instead of writing a recorder from scratch, which takes years to get right across browsers, shadow DOM, canvas, iframes and web components.
rrweb started in 2018 as one engineer's side project. Yanzhen Yu wanted to record and replay what users actually did in a browser, and published the result under MIT. There's a short documentary about how it came together, in Chinese with English subtitles.
Adoption moved faster than anyone planned for. A core team formed around the project in 2020, and Justin Halsall (Amsterdam), Eoghan Murray (Dublin) and Yun Feng (San Francisco) maintain it today alongside more than 100 contributors. The library now sits at close to 20,000 stars and powers the replay features inside some of the largest observability and analytics products on the market.
The awkward part of that success is that an MIT library carrying replay for billion-dollar companies was still being maintained on evenings and weekends. rrweb Cloud exists to fix that. It's the hosted version of the project, built by the maintainers, based in Amsterdam, and the logic is simple: revenue from Cloud pays for maintainer time on the open source library.
The library is roughly 89% TypeScript, deliberately so. Record and replay share a strongly typed event schema, and those types are the contract between the two sides. The remainder is JavaScript, HTML test fixtures, and Svelte for the player UI.
Four packages:
rrweb-snapshot, which serializes the DOM and its state into a JSON tree and rebuilds it rrweb, the record and replay functions rrdom, a virtual DOM that makes replay faster and testable headlessly rrweb-player, the player UI
Underneath it leans on browser primitives: MutationObserver for DOM changes, event listeners for input, scroll and pointer activity, CSSOM for stylesheet state, and patched canvas contexts for 2D and WebGL capture. Events are plain JSON, optionally packed for transport.
Build and test tooling is Yarn, Turborepo, Vite, Vitest, Puppeteer for integration tests, and Changesets for releases. MIT licensed throughout.
Sentry Datadog PostHog Amplitude Mixpanel New Relic Pendo Highlight Browserbase StatCounter Requestly Gleap Bird Eats Bug Navattic CUX UXWizz Analyzee SmartX
Sentry, PostHog, Pendo and Highlight also fund the project as sponsors on OpenCollective.
rrweb is the recording engine most session replay products are built on. Sentry, PostHog, Pendo, Highlight, Mixpanel, Datadog, Amplitude and New Relic all ship replay built on rrweb or its approach.
It serializes the DOM into a typed JSON event stream: one full snapshot, then timestamped incremental mutations. There is no video. Replay rebuilds the actual page in a browser, so text stays selectable, CSS re-renders at any viewport, and a three-minute session weighs kilobytes instead of megabytes. Because the output is structured JSON, an LLM can read a session directly without a vision model in the loop.
It's MIT licensed with close to 20,000 GitHub stars, so the capture layer is yours to own. rrweb Cloud is the hosted backend from the same maintainers, for teams who don't want to run ingestion, storage and replay infrastructure themselves.
We have collected here some useful links to help you find out if rrweb is good.
Check the traffic stats of rrweb on SimilarWeb. The key metrics to look for are: monthly visits, average visit duration, pages per visit, and traffic by country. Moreoever, check the traffic sources. For example "Direct" traffic is a good sign.
Check the "Domain Rating" of rrweb on Ahrefs. The domain rating is a measure of the strength of a website's backlink profile on a scale from 0 to 100. It shows the strength of rrweb's backlink profile compared to the other websites. In most cases a domain rating of 60+ is considered good and 70+ is considered very good.
Check the "Domain Authority" of rrweb on MOZ. A website's domain authority (DA) is a search engine ranking score that predicts how well a website will rank on search engine result pages (SERPs). It is based on a 100-point logarithmic scale, with higher scores corresponding to a greater likelihood of ranking. This is another useful metric to check if a website is good.
The latest comments about rrweb on Reddit. This can help you find out how popualr the product is and what people think about it.
Do you know an article comparing rrweb to other products?
Suggest a link to a post with product alternatives.
Is rrweb good? This is an informative page that will help you find out. Moreover, you can review and discuss rrweb here. The primary details have been verified within the last quarter. So they could be considered up to date. If you think we are missing something, please use the means on this page to comment or suggest changes. All reviews and comments are highly encouranged and appreciated as they help everyone in the community to make an informed choice. Please always be kind and objective when evaluating a product and sharing your opinion.