mrkeyoor.com_
Thu 03 Sept 15:37 UTC
Self-Hostedevaluationupdated 03 Sept 2026

openreplay review

OpenReplay is a session-replay and product-observability suite that records what people do in a web application alongside console, network, error, state, and performance data. It helps developers reproduce browser problems and lets support staff view or assist live sessions while keeping captured data in infrastructure the operator controls.

Verdict

Our OpenReplay backend installed 374 packages and built in 193 seconds, yet all 27 Go test packages failed to build in 47 seconds. Shortlist it when self-hosted replay is a firm requirement and your platform team can own its databases, storage, TLS, capture policy, and upgrades. Use a managed service or a narrower recorder when cluster operations cost more than keeping session data in house is worth.

We ran it

Lab card: what happened when we ran openreplayScreenshot of openreplay (openreplay.com)
Install✓ · 59s374 packages
Build✓ · 193s
Tests✗ · 47s0 passed · 27 failed of 27 (go test)
Repo5751 files~346,148 lines of source · 51.8 MB · 29 CI workflows · Dockerfile

Answers from our run

Does openreplay build from source?

Dependencies installed in 59 seconds (374 packages), and the build succeeded in 193 seconds. We cloned commit 5cf43dd into a clean Debian container with 3 CPUs and no project-specific setup.

Do openreplay's tests pass?

Not all of them: 0 of 27 passed and 27 failed when we ran the project's own test command (go test). Some failures need services or credentials a bare container does not have.

Who should not use openreplay?

Small teams seeking a single-container analytics tool: the documented Kubernetes deployment packages PostgreSQL and Redis and also needs shared storage, secrets, DNS, and HTTPS.

What are the alternatives to openreplay?

Highlight, PostHog, rrweb. Our OpenReplay backend installed 374 packages and built in 193 seconds, yet all 27 Go test packages failed to build in 47 seconds.

Setup2/5Build passed, but 27 test packages failed and deployment needs a cluster
Docs4/5Cloud, Kubernetes, tracker, TLS, access, and upgrade paths are documented
Community4/5Pushed September 3, 2026 with 128 issues and 51 PRs open
Maturity3/5Broad product and current releases, weakened by the failed Go suite

Who it’s for

Product and engineering teams that need session replay beside browser errors, network calls, and application state.
Organizations required to keep replay data in their own cloud or cluster.
Support teams that want live co-browsing and can govern who may access recorded sessions.
Platform teams already comfortable with Kubernetes, Helm, PostgreSQL, Redis, object storage, DNS, and TLS.

Who it’s NOT for

Small teams seeking a single-container analytics tool: the documented Kubernetes deployment packages PostgreSQL and Redis and also needs shared storage, secrets, DNS, and HTTPS.
Engineering organizations that require a clean backend test run before a pilot: all 27 Go test packages failed to build in our sandbox.
Community-edition users who need custom project and feature roles: the roles-and-access guide marks that function as Enterprise-only.
Legal teams that require one permissive license across the tree: the top-level license defaults much of the repository to AGPL v3, gives some directories MIT terms, and assigns ee/ its own license.
Products that cannot define and verify masking rules before collection: replays can include user actions, network activity, console output, application state, and technical events.
Teams that only need the recording primitive: rrweb offers a narrower library without OpenReplay's server estate.

Setup reality

Our sandbox installed 374 Go packages in 59 seconds from ./backend/, then built successfully in 193 seconds. Tests failed after 47 seconds: Go reported 0 passed and 27 failed out of 27, with the log tail listing package build failures. The 51.8 MB checkout contained 5,751 files and about 346,148 source lines.

A documented single-machine deployment needs Ubuntu Server 24.04 LTS, x86 hardware, a public IP, DNS, HTTPS, and at least 2 vCPUs, 8 GB of RAM, and 50 GB of storage. Kubernetes adds Helm, PostgreSQL, Redis, storage credentials, a JWT secret, and an RWX volume on multi-node clusters.

The browser app needs a project key and, for self-hosting, an ingest URL. Source maps, user identity, metadata, plugins, and backend-log integrations need deliberate configuration. Custom roles are an Enterprise feature, and operators must settle the repository's mixed licensing before modifying or redistributing it.

The roughly 26 KB tracker feeds a full observability stack

The README describes a roughly 26 KB Brotli-compressed tracker, but the server behind it is a broad system. OpenReplay records DOM activity and pairs it with console logs, JavaScript errors, network calls, application state, page-speed data, and CPU or memory signals. Developers can replay a journey with browser evidence beside it. Search and analytics group behavior into reusable segments and filters.

More than 40 metrics appear in the documented DevTools view. Spot records a bug report from a Chrome extension, and Assist adds live viewing plus WebRTC calls. Plugins connect popular app-state and request libraries, including Redux, Vuex, Apollo, and Axios. Sentry, Datadog, CloudWatch, Stackdriver, and Elastic integrations can connect backend evidence. That breadth is the reason to choose OpenReplay over a recording library, and the reason deployment is substantial.

What happened when we ran it

Our sandbox installed 374 Go packages from ./backend/ in 59 seconds. The build then completed successfully in 193 seconds. We used commit 5cf43dd in an unprivileged Debian container with 3 CPUs, 8 GB of RAM, and no secrets. The checkout occupied 51.8 MB and contained 5,751 files with roughly 346,148 source lines. Repository signals included 29 CI workflow files, a Dockerfile, and no top-level tests directory.

Go tests failed after 47 seconds with exit code 1. The summary reported 0 passed and 27 failed out of 27. Every package in the log tail was marked build failed, including geo-IP HTTP code, analytics charts and dashboards, the Assist proxy, jobs, replay services, authentication, session handling, and the Spot transcoder. The tail does not include the compiler messages that caused those failures, so it supports no narrower diagnosis.

The split result matters. A 193-second successful build says the backend can compile through the build command used by our measurement setup. A test command may compile packages under different tags or paths, and here none of its 27 packages passed. The supplied evidence does not say which difference was responsible. Before a pilot, reproduce the test command in the deployment toolchain and obtain the earlier compiler output rather than treating the standalone build as sufficient.

Production starts at 2 vCPUs, 8 GB, and 50 GB

OpenReplay's single-machine guide requires at least 2 vCPUs, 8 GB of RAM, and 50 GB of storage on x86, running Ubuntu Server 24.04 LTS. It also needs a public IP and domain. The Kubernetes path requires version 1.18 or newer and Helm 3.10 or newer, packages PostgreSQL and Redis, and asks multi-node clusters for an RWX volume writable by user ID 1001. Those requirements put it in data-platform territory.

HTTPS is mandatory because the tracker and dashboard will not work without it, according to the deployment guide. Operators must provide DNS and either their own certificate, a cloud load balancer, or a generated certificate. The cluster configuration asks for a PostgreSQL password, object-storage access and secret keys, and a JWT secret. Once the server exists, each instrumented application also needs a project key and the self-hosted ingest URL. Source maps and user metadata add more policy decisions.

More than 40 browser metrics raise the privacy stakes

A replay can contain user interactions, requests, console output, store state, and more than 40 technical metrics. OpenReplay provides controls for choosing what to capture, obscure, or ignore before data reaches the server. Those controls must match the application's sensitive fields, URL shapes, and authentication flow. Keeping data in your own cloud changes custody; it does not remove the need for retention rules, access review, masking tests, or notice to users where law and policy require it.

Custom roles add another boundary. The roles-and-access guide says project-level and feature-level role definitions are available only in the Enterprise edition. Community-edition evaluators should map the access model they actually receive before sending production sessions into the system. The v1.27.0 release added organization API-key rotation and tenant ownership transfer, administrative functions that do not replace granular authorization. Support staff viewing live screens should receive no broader session access than their work requires.

Version v1.27.0 is older than the latest code activity

Release v1.27.0 arrived on May 5, 2026 with reusable segments, replay element tags called Features, analytics breakdowns, tracker changes for iframes and URL sanitization, and backend pipeline work. It also moved the public API from Python to Go and added service health endpoints. GitHub then recorded a repository push on September 3, 2026, so the four-month release gap is not evidence that development stopped. Buyers should test a tagged release rather than mainline unless they need an unreleased fix.

GitHub listed 128 open issues and 51 open pull requests when fetched. Several recently updated pull requests were dependency bumps, while a new code-change pull request was opened and updated on September 3. That is clear maintenance activity alongside a large queue. With 12,655 stars, OpenReplay has wide visibility, though stars do not tell you whether maintainers can resolve a specific recorder, browser, or cluster problem on your schedule. Check relevant issue threads before choosing a rollout date.

AGPL v3 is the default outside named exceptions

AGPL v3 applies by default to content outside the repository's named exceptions. Some directories use MIT terms, third-party components retain their original licenses, and ee/ has a separate license. GitHub therefore reports no single SPDX license for the monorepo. A team that modifies the server or packages enterprise code should have counsel map the directories it will use. Calling the entire project simply MIT or simply AGPL would miss what the top-level license says.

The 374-package backend belongs with teams that already operate stateful infrastructure and can own privacy controls. Highlight is the closer choice when logs and traces drive the purchase; PostHog suits product analytics and experimentation; rrweb is the smaller recording primitive. OpenReplay makes sense when browser debugging, replay search, and self-hosted custody must live together. Our 27 failed test packages make a measured pilot mandatory before production data enters that stack.

Alternatives

ProjectWhat it isPick it when
HighlightAn open-source monitoring stack combining session replay, errors, logs, and traces.pick this instead when full-stack telemetry and distributed tracing should sit beside replay in one product.
PostHog gh↗A product platform with analytics, replay, feature flags, experiments, and error tracking.pick this instead when product analytics and experimentation matter more than developer-focused replay debugging.
rrwebA browser recording and replay library for teams building their own workflow.pick this instead when you need the capture and playback primitive without operating a full observability platform.
Sentry gh↗An error and performance monitoring platform that also supports session replay.pick this instead when error triage is primary and replay should attach to existing exception workflows.

What people are saying

  1. [github-trending] openreplay/openreplay

Sources

  1. OpenReplay repository and README
  2. OpenReplay v1.27.0 release
  3. OpenReplay Ubuntu deployment guide
  4. OpenReplay Kubernetes deployment guide
  5. OpenReplay tracker setup guide
  6. OpenReplay roles and access guide
  7. OpenReplay monorepo license
  8. OpenReplay security policy

More self-hosted reviews

kopia · MicYou · NetAlertX · Tasmota · lede · bitchat · the whole board →