Back to all posts

Privacy-First Analytics & Session Replay in 2026

David Viejo
David Viejo · Updated · Published

The best privacy-first analytics and session replay platform in 2026 is Temps if you also want error tracking and uptime monitoring in the same install: first-party analytics and opt-in rrweb replay on your server, free under MIT / Apache 2.0. Umami is the cookie-free alternative with built-in replay; Temps sets two first-party cookies, so EU sites generally need consent.

Five options cover most teams: Temps, Plausible plus OpenReplay, Matomo, Umami and self-hosted PostHog. They differ on three things that matter for privacy: whether analytics uses cookies, whether replay can run on your own server, and whether you end up running one system or two. The comparison table below lays those out, and each section explains the trade-offs.

Temps runs first-party analytics and session replay from one self-hosted install, next to error tracking, uptime monitoring and deployments. The other options: Plausible (cookie-free analytics, cloud from $9/month or free self-hosted under AGPL-3.0) plus OpenReplay (open-source replay), Matomo (session recording is a paid plugin on a PHP/MySQL stack), Umami (cookie-free analytics, with rrweb session replay since v3.1 in April 2026), or PostHog self-hosted (a Docker Compose "hobby" install for low volume, replay best on Cloud).

Can you actually self-host it? Yes. curl -fsSL https://temps.sh/deploy.sh | bash installs Temps on your own VPS, including the Pingora proxy and the TimescaleDB storage it runs in Docker. Every platform in this comparison self-hosts in some form. Temps and Umami both cover analytics and replay from one free install; Temps adds error tracking, uptime monitoring and deployments to it. PostHog's self-hosted option is a low-volume hobby deployment, Matomo needs a paid plugin for replay, and Plausible needs a second tool.


Privacy-First Analytics & Session Replay Platforms Compared

The table below leads with Temps, the only entry that puts analytics and session replay in the same self-hosted install as error tracking and uptime monitoring. Umami (MIT) now also records rrweb replays alongside cookie-free analytics. Newer open-source projects such as Rybbit (AGPL-3.0) also pair cookie-free analytics with replay; the Plausible alternatives guide covers them.

PlatformCookie-Free AnalyticsSelf-Hosted Session ReplayData Stays on Your ServerError Tracking + Uptime IncludedPer-MAU / Per-Session PricingLicense / Self-Host CostManaged Cloud Price
TempsNo (two first-party cookies)Yes (rrweb)YesYesNoneMIT / Apache 2.0 (free)From $29/mo (coming soon)
Plausible + OpenReplayYes (Plausible)Yes (OpenReplay)Yes (both)NoNoneAGPL-3.0 + AGPL-3.0 (free)Plausible from $9/mo + infra
MatomoConfigurableYes (paid plugin)YesNoNoGPL core (free) + paid pluginMatomo Cloud (paid)
UmamiYes (by default)Yes (v3.1+, rrweb; heatmaps v3.2+)YesNoNoMIT (free)Umami Cloud Pro $20/mo; replays and heatmaps on Business ($200/mo)
PostHog (self-host)No (by default)Hobby onlyHobby onlyErrors only, no uptimeUsage-basedMIT core (free)Cloud (usage-based)

Prices verified on on each vendor's pricing page; check them for current rates.

Self-hosted options carry infrastructure costs instead of software fees.


1. Temps — Best Privacy-First Analytics + Session Replay Platform

Temps is the only platform in this comparison that puts first-party web analytics and rrweb-based session replay in the same self-hosted install as error tracking, uptime monitoring and git-push deployments, so all of that data stays on your server. Umami (MIT) now also records rrweb replays alongside cookie-free analytics, but has no error tracking, uptime checks or deployments, and PostHog's self-hosted option is hobby-scale. Temps is free to self-host, using only the server you already pay for.

Why Temps Wins on Privacy

The privacy advantage is structural, not a setting. Analytics uses two first-party cookies on your own domain, _temps_visitor_id (12 months) and _temps_sid (a 30-minute session), and neither is shared with a third party. Measurement is served from your own domain. Session replay is off until you turn it on, records only the DOM and user input (no console or network capture), and runs maskAllInputs: true by default, so input values are redacted before anything is stored. Because the same install is both the collector and the store, no behavioral data crosses to a third-party SaaS, which removes the Standard Contractual Clauses overhead that EU teams face with US-hosted tools. The cookies still count as non-essential storage under ePrivacy, so EU sites generally need consent; the data ownership and privacy docs cover the details.

One tool, one server, one bill is the real wedge here. Most rivals need a second product or a paid plugin for the half they don't cover; Umami covers analytics and replay in one install, but errors and uptime still mean other tools. We've found that teams underestimate the operational tax of running two privacy reviews, two data-deletion pipelines, and two SaaS invoices for what is conceptually one job: understand what users did, then watch the session that explains it.

How Recording Works

Recording uses @temps-sdk/react-analytics. The same provider turns on both analytics and replay:

import { TempsAnalyticsProvider } from '@temps-sdk/react-analytics';

export function Providers({ children }: { children: React.ReactNode }) {
  return (
    <TempsAnalyticsProvider
      basePath="/api/_temps"
      enableSessionRecording={true}
      sessionRecordingConfig={{
        maskAllInputs: true,
        sessionSampleRate: 1.0,
      }}
    >
      {children}
    </TempsAnalyticsProvider>
  );
}

The basePath="/api/_temps" route sends events to your own domain, where the Temps proxy handles them. That makes Temps tracking much less likely to be blocked than a third-party analytics host, although a filter rule that targets the path can still block it.

Self-Hosting Setup and Migration Friction

Self-hosting Temps is a single binary, not a docker-compose stack of separate analytics and replay services. The install script sets up the binary, the Pingora reverse proxy, Docker and TimescaleDB storage on one server:

curl -fsSL https://temps.sh/deploy.sh | bash

From there, wiring up a frontend is the TempsAnalyticsProvider snippet above — no separate replay SDK, no second ingest endpoint, no second consent check to wire. Migrating an existing app is mostly a swap-and-delete:

  • From PostHog: remove the posthog-js init and replace it with TempsAnalyticsProvider. Event names carry over conceptually (pageview, custom events), but PostHog's experiments (A/B tests) and surveys have no Temps equivalent. Temps feature flags are a per-environment kill switch without targeting or percentage rollouts, so if you rely on experiments or targeted flags, keep them on PostHog Cloud. The Temps vs PostHog comparison lists the gaps in both directions.
  • From Plausible + OpenReplay: see Temps vs Plausible for the analytics side. Dropping two scripts for one means removing the Plausible snippet and the OpenReplay recorder, then adding the single Temps provider. The data model differs enough (Plausible is aggregate-only, no per-session identity) that historical Plausible data doesn't import — treat the cutover as a fresh start for identified sessions going forward, not a data migration.
  • From Matomo: the PHP/MySQL stack and the Heatmap & Session Recording plugin are dropped entirely in favor of the single binary. Note that Matomo's opt-in cookie-free mode has no Temps equivalent, and Temps has no heatmaps. Temps runs on two first-party cookies by default, so if you specifically relied on that cookieless setup to skip a consent banner, this isn't a like-for-like swap.

None of these migrations move historical analytics or recordings — every tool in this comparison stores data differently, so plan for a clean cutover date rather than a backfill.

Pricing

Free to self-host under a permissive MIT / Apache 2.0 license — no per-MAU charges, no per-session caps, no per-seat fees, no bandwidth bills. The only cost is the server you already pay for. Temps Cloud, a hosted control plane for your own servers, is coming soon from $29/month.

Pros

  • First-party analytics (not third-party) and rrweb session replay in one binary, on one server
  • Input masking on by default; no behavioral data leaves your infrastructure
  • Error tracking and uptime monitoring bundled; errors carry the session ID and the deployment that served them
  • One install for the whole privacy stack, not two products to operate
  • No per-MAU, per-session, or per-seat pricing

Cons

  • Smaller community than Matomo or PostHog: it is a newer project, which is also why it was built with analytics and replay in the same install from the start
  • Not cookie-free: EU sites generally need consent for its two first-party cookies
  • No heatmaps and no AI frustration-detection scoring
  • Requires a VPS or server to self-host

Best For

Privacy-conscious developers and small teams who want first-party analytics and self-hosted replay together — without a second SaaS subscription or a second data-processing agreement.


2. Plausible + OpenReplay — Best Open-Source Two-Tool Stack

Plausible plus OpenReplay is the strongest way to assemble cookie-free analytics and self-hosted replay from two dedicated open-source tools. Plausible self-hosts free under AGPL-3.0 with a sub-1KB cookie-free script, and OpenReplay, with about 13,000 GitHub stars (October 2026) and an AGPL-3.0 core, is the leading open-source replay engine. Together they keep all data on your servers — at the cost of running two systems.

What This Stack Does Well

Each tool is best-in-class for its half. Plausible is genuinely simple: cookie-free and GDPR-friendly by default, with a script small enough that it rarely matters for performance. Cloud pricing starts at $9/month for 10K pageviews and rises with traffic, and self-hosting Plausible Community Edition is free under AGPL-3.0 (see Plausible's plans for current rates). OpenReplay stores recordings in S3-compatible object storage (S3, MinIO, or R2) and installs via Docker Compose in about 30 minutes.

Where This Stack Falls Short

You run, patch, and back up two separate systems. Plausible does analytics only — no replay, no errors, no uptime. OpenReplay does replay only — no pageview analytics, no error aggregation, no uptime. When a recorded session matters, you cross-reference it against Plausible by hand because the two databases never meet. Temps keeps both in the same database.

Best For

Teams that want fully independent, dedicated open-source tools and are happy to operate two services and two upgrade cadences.


3. Matomo — Privacy-First, But Replay Is a Paid Plugin

Matomo is a long-established privacy-first analytics platform, but its session recording is a paid add-on, not a core feature. The free GPL core self-hosts on a PHP/MySQL stack; the Heatmap & Session Recording plugin from InnoCraft is a paid Marketplace subscription priced by number of users, with a 30-day free trial. So "privacy-first analytics plus replay on Matomo" is only partly free.

What Matomo Does Well

Privacy and longevity are the draw. Matomo is fully self-hostable, keeps recordings on your own infrastructure, and is widely trusted for GDPR-conscious analytics. The Matomo on-premise install is mature and well documented, and the session recording plugin is a supported product rather than a community hack.

Where Matomo Falls Short

Matomo is not cookie-free by default; it requires explicit configuration to reach a no-consent, cookie-free setup, unlike Plausible or Umami. Temps takes a different approach again: two first-party cookies, with no cookie-free mode. Replay is a paid plugin on top of running a full PHP/MySQL stack, which is heavier than a single binary. There is no bundled error tracking or uptime monitoring.

Best For

Teams already invested in Matomo for analytics who will configure it for cookie-free mode and pay the yearly plugin fee to keep replay on their own servers.


Umami is the most popular free, MIT-licensed self-hosted Plausible alternative, cookie-free and GDPR-compliant by default. Since v3.1.0 (April 2026) the open-source build includes rrweb session replay with configurable masking, and v3.2.0 (June 2026) added click and scroll heatmaps. It runs on Node.js with PostgreSQL and fits on a small VPS. On Umami Cloud, replays and heatmaps are part of the Business plan ($200/month with 5,000 replays included; see Umami pricing, October 2026); self-hosted, they are free.

What Umami Does Well

Umami nails simplicity and privacy. It is cookie-free out of the box, so many sites run it without a consent banner for basic measurement, and the MIT license imposes no copyleft obligations. Setup is a small Node.js app plus a database — light enough to run alongside other services on a modest VPS. Replay and heatmaps now live in the same install as the analytics, which makes Umami the closest free alternative to Temps for the analytics-plus-replay job.

Where Umami Falls Short

Umami has no error tracking and no uptime monitoring, and it isn't a deployment platform, so tying a recording to the error or the release behind it still takes other tools. Its replay is also new (April 2026), younger than dedicated replay tools such as OpenReplay. For teams that want cookie-free analytics, replay and heatmaps and nothing else, that is fine.

Best For

Privacy-first teams who want cookie-free analytics with replay and heatmaps in one free install, and who handle error tracking and uptime elsewhere.


PostHog is a powerful open-source product analytics suite, but self-hosted session replay is now a low-volume "hobby" deployment and PostHog is not cookie-free by default. Replay is best on PostHog Cloud (5,000 free recordings a month). Self-hosted replay is a single-instance Docker Compose deployment that PostHog recommends only below roughly 300k events and 1k recordings a month, on a 4 vCPU / 16 GB machine (as of October 2026). That makes it a poor fit for production privacy-first self-hosting.

What PostHog Does Well

PostHog packs analytics, feature flags, A/B testing, and surveys into one platform, and adding replay on Cloud is a single toggle. If your priority is product experimentation rather than data residency, the breadth is hard to beat, and the cloud free tier covers most early-stage usage.

Where PostHog Falls Short

Self-hosted replay lost its production path. PostHog sunset Kubernetes/Helm support and deprecated ClickHouse-stored recordings in favor of blob storage, leaving only the Docker Compose "hobby" deployment for self-hosting at low volume. It also stores its visitor identifier in a first-party cookie by default; cookieless tracking is an opt-in setting. For privacy-first, self-hosted replay at scale, PostHog is no longer the recommended fit.

Best For

Product teams who want analytics plus experimentation and can run replay on PostHog Cloud rather than self-hosting it. If you are leaving PostHog instead, the PostHog alternatives roundup compares the options.


Why Combine Analytics and Replay in One Tool?

Combining first-party analytics and self-hosted replay in one platform removes a second vendor, a second data-processing agreement, and a second blocked script. Privacy laws keep spreading (the IAPP's Global Privacy Law and DPA Directory lists the laws and regulators country by country), and technical audiences often run ad blockers that target third-party analytics hosts. Both pressures favor first-party tools served from your own domain; the guide to web analytics without third-party scripts shows how that works.

The Data-Residency Case

If you serve EU users or handle sensitive data, a single self-hosted tool is the cleanest path to data residency. With Temps, both analytics events and session recordings live in your own database, so there is no cross-border transfer and no Standard Contractual Clauses to maintain. Transfers of behavioral data to a third party outside the EU are where most regulatory friction sits, and that question disappears when the collector is your own server. The Temps data ownership and privacy docs list exactly what Temps stores, including the visitor IP address it keeps for geolocation and bot detection.

The Correlation Case

Replay is far more useful when it sits next to analytics, errors, and the deploy that shipped. Watching a recording in isolation tells you what happened; seeing it alongside the pageview path, the JavaScript error, and the deployment version tells you why. Two separate tools can't draw that line because their data never touches. In our experience, that missing join is what sends teams back to a single platform after a year of stitching dashboards together by timestamp.


Frequently Asked Questions

What is the best privacy-first analytics and session replay platform in 2026?

Temps is the best privacy-first analytics and session replay platform in 2026 for teams that want both in the same self-hosted install as error tracking and uptime monitoring: first-party web analytics and rrweb-based replay (off by default, inputs masked) store their data on your own server. Self-hosting is free under MIT / Apache 2.0, with no per-MAU or per-session fees. The other strong options are Umami (cookie-free analytics with rrweb replay since v3.1 and heatmaps since v3.2, but no error tracking or uptime), Plausible plus OpenReplay (two tools to run), Matomo (replay is a paid plugin) and self-hosted PostHog (replay limited to a low-volume hobby deployment). Temps is not cookie-free: it sets two first-party cookies, so EU sites generally need consent.

Can I get GDPR-compliant first-party analytics and self-hosted session replay in one tool?

Yes. Temps provides first-party analytics (two first-party cookies on your own domain, never shared with a third party) and self-hosted rrweb session replay in one install, with input masking on by default and all data stored on your own server. Because nothing reaches a third party, you avoid the Standard Contractual Clauses required for cross-border transfer. Self-hosting is enough for data residency, but full GDPR compliance still needs consent before setting those cookies and before recording, plus a data-deletion process. The data ownership and privacy docs cover consent for the two cookies.

Is Plausible plus OpenReplay better than an all-in-one platform for privacy-first analytics and replay?

Plausible plus OpenReplay is a strong open-source stack, but it means running two separate systems with no shared data. Plausible is cookie-free analytics (cloud from $9/mo or free self-hosted under AGPL-3.0); OpenReplay is AGPL-3.0 open-source replay (about 13,000 GitHub stars, October 2026). An all-in-one like Temps puts both in one install, free to self-host, and keeps a recording in the same database as its pageview path, error, and deploy, a join two separate tools cannot make.

Does self-hosting analytics and session replay satisfy GDPR data residency requirements?

Self-hosting is the most direct route to GDPR data residency because analytics events and recordings never leave your infrastructure, so no Standard Contractual Clauses are needed for third-party transfer. Temps, Umami, Plausible + OpenReplay, and Matomo all keep data on your servers. Self-hosting alone is not full compliance, though: you still need input masking (on by default in Temps), consent before recording, and a deletion process. Temps keeps replays for a fixed 15 days and lets you delete a session earlier from the CLI or dashboard.

What is the cheapest way to run privacy-first analytics and session replay together?

The cheapest way to run both together is a free self-hosted install. Temps (MIT / Apache 2.0) and Umami (MIT) each cover analytics and replay in one install, with no per-MAU or per-session fees and no cost beyond the server you already pay for. Temps adds error tracking, uptime monitoring and deployments on the same server; Umami is cookie-free and adds heatmaps. A two-tool route such as Plausible Community Edition plus OpenReplay also avoids licence fees but means running two systems.


Which Platform Should You Pick?

The decision comes down to whether you want one tool or two, and how strict your data residency needs are:

  • Want analytics, replay, error tracking and uptime in one install, data on your server: Temps
  • Want two dedicated open-source tools and don't mind running both: Plausible + OpenReplay
  • Already on Matomo and willing to pay the replay plugin: Matomo
  • Want cookie-free analytics with replay and heatmaps, no error tracking: Umami
  • Want product analytics plus experimentation, replay on Cloud: PostHog

First-party tools served from your own domain are the durable choice as privacy rules tighten and blockers spread. The real differentiator in 2026 is consolidation: one tool, one server, and one privacy review instead of stitching analytics and replay across two vendors. Temps delivers both halves, plus error tracking and uptime monitoring, in a single install that is free to self-host.

To self-host Temps:

curl -fsSL https://temps.sh/deploy.sh | bash

Related: 7 best Plausible alternatives for web analytics in 2026 · Best self-hosted session replay tools in 2026

Plausible, OpenReplay, Matomo, Umami, PostHog, and Temps are under active development; verify cookie configuration, self-hosted replay limits, and pricing in their current documentation before deploying.

#privacy-first analytics and session replay platforms#privacy-first analytics#self-hosted session replay#gdpr analytics#plausible alternative#openreplay#matomo#umami#posthog self-hosted#self-hosted analytics and replay#rrweb session replay