mrkeyoor.com_
Tue 01 Sept 17:41 UTC
Dataevaluationupdated 26 Aug 2026

posthog review

PostHog is an all-in-one product data platform for understanding what users do and changing a product based on that evidence. It combines analytics, session replay, feature flags, experiments, error tracking, logs, surveys, data pipelines, AI observability, and agent-facing tools so a team does not have to assemble each capability from a different vendor.

+343stars / 7d
Verdict

Our PostHog install pulled 3,633 packages and occupied 3,615 MB, while the repository exposed no generic build or test target, so a self-hoster is taking on a very large system with limited evidence from our run. Product teams should still trial PostHog when analytics, replay, flags, experiments, and errors need one data model. Start with Cloud; treat the unsupported hobby deployment as a small, operator-owned installation.

We ran it

Lab card: what happened when we ran posthogScreenshot of posthog (posthog.com)
Install✓ · 261s3633 packages · 3615 MB
Buildn/ano build script
Testsn/ano test script
Repo45322 files~8,372,779 lines of source · 628.3 MB · 128 CI workflows · Dockerfile

Answers from our run

Does posthog build from source?

Dependencies installed in 261 seconds (3633 packages), and the project has no separate build step. We cloned commit 477457f into a clean Debian container with 3 CPUs and no project-specific setup.

Does posthog have tests you can run?

Not through a standard command: the project exposes no test script or target that our harness could run.

Who should not use posthog?

Self-hosters expecting the open-source deployment to handle a large production workload with vendor backing: the README calls it a hobby deploy, estimates about 100,000 events per month, and offers no support or guarantees.

What are the alternatives to posthog?

Plausible Analytics, Matomo, GrowthBook. Our PostHog install pulled 3,633 packages and occupied 3,615 MB, while the repository exposed no generic build or test target, so a self-hoster is taking on a very large system with limited evidence from our run.

Setup4/5Cloud starts quickly; useful instrumentation still takes design
Docs5/5Extensive product, SDK, deployment, and migration guidance
Community5/5Large adoption with active pushes and daily issue movement
Maturity4/5Broad proven suite, but self-hosting has explicit limits

Discussed on

  1. hnPosthog is closing their Slack community in favor of forum396 points
  2. hnLaunch HN: PostHog (YC W20) – open-source product analytics282 points
  3. hnShow HN: Laminar – Open-Source DataDog + PostHog for LLM Apps, Built in Rust203 points
  4. hnPosthog/.cursorrules193 points
  5. hnI rewrote PostHog's SQL parser, 70x faster, while barely looking at the code155 points

Who it’s for

Product engineering teams that want analytics, replay, flags, experiments, and error data in one place.
Startups that prefer a generous hosted free tier now but want an open-source escape route.
Teams willing to instrument events carefully and use SQL when the built-in views are not enough.
Organizations that want product context available through an MCP connection in Claude Code or another compatible agent.

Who it’s NOT for

Self-hosters expecting the open-source deployment to handle a large production workload with vendor backing: the README calls it a hobby deploy, estimates about 100,000 events per month, and offers no support or guarantees.
Organizations that require the main repository to be entirely under one permissive open-source license: the README says the ee directory has a separate license and points strict FOSS users to posthog-foss.
Small sites that only need basic traffic counts: PostHog's analytics, replay, flags, experiments, errors, logs, warehouse, pipelines, and workflows create far more surface area than a simple counter.
Teams that cannot budget for instrumentation and data governance: installing an SDK is only the start, while useful funnels, retention, replay, surveys, and warehouse data still require deliberate event and privacy design.

Setup reality

Our Node 22 sandbox installed 3,633 pnpm packages in 261 seconds and consumed 3,615 MB on disk. The repository exposed no build script or target and no test script or target to our runner, so both stages were skipped.

PostHog Cloud is the easy route: create a US or EU account, install an SDK, and send events. Self-hosting is a Linux and Docker hobby deployment; the README recommends 4 GB of memory, estimates about 100,000 monthly events, and offers no support or guarantees.

Commit 477457f was a 628.3 MB checkout with 45,322 files and about 8,372,779 source lines. Useful operation also needs event naming, identity rules, consent, replay masking, retention, and ownership.

What happened when we ran it

Our Node 22 sandbox installed 3,633 pnpm packages in 261 seconds. They occupied 3,615 MB on disk, while commit 477457f itself was a 628.3 MB checkout with 45,322 files and about 8,372,779 source lines. Those figures put the self-hosting decision in the right frame: PostHog is a product platform, not a small analytics service.

The monorepo exposed no build script or target and no test script or target to our generic runner, so both stages were skipped. It has 128 CI workflow files and a Dockerfile, but no top-level tests directory. Our run confirms a large dependency installation; it provides no passing build or test evidence for this commit.

One data model connects analytics, replay, flags, and errors

PostHog records events, page traffic, sessions, exceptions, logs, surveys, warehouse data, and language-model traces. It adds funnels, retention analysis, replay, feature flags, experiments, workflows, and pipelines. Slack, web, desktop, and an MCP connection give people and agents access to the same product context.

That consolidation is useful when a team can inspect a failed conversion, watch the session, correlate an error, release a fix behind a flag, and measure the result in one system. It also expands governance work. A small site that wants visitor counts will find far more product, data, and cost surface than it needs.

Cloud avoids owning an 8.3-million-line platform

The README is unusually direct about deployment. PostHog Cloud is the recommended path and offers separate US and EU signups. Its listed monthly free allowances cover one million events, 5,000 recordings, one million flag requests, 100,000 exceptions, and 1,500 survey responses. Those figures are allowances, not a promise that every product will remain free, because usage above them is billed per tool. Still, they make a real evaluation possible without operating the backend first.

Once an account exists, collection starts through a web snippet, one of the documented frontend, mobile, or backend SDKs, or the API. The README names JavaScript, React, Next.js, Vue, React Native, Android, iOS, Flutter, Python, Node, PHP, and Ruby, with additional guides for other frameworks. That coverage matters more than a clever dashboard because incomplete or inconsistent collection ruins every analysis downstream.

Self-hosting deserves a colder reading. The advertised one-line installer deploys a hobby instance on Linux with Docker and recommends 4GB of memory. The project says an open-source deployment should scale to about 100,000 events per month, then recommends moving to PostHog Cloud. It also states that open-source deployments receive no customer support or guarantees. That is honest, but it means the shell command is a trial path, not evidence of an easy production service.

The useful parts come with governance work

Product analytics and web analytics cover the common questions: acquisition, conversion, activation, retention, revenue, and behavior across cohorts. Session replay adds the missing visual explanation when a chart only shows that users failed. Feature flags and experiments then connect diagnosis to delivery. Error tracking and logs can keep technical failures next to the user journey rather than in a disconnected observability product.

This shared context is valuable only when its collection is trustworthy. Teams need an event dictionary, stable properties, identity rules, and a process for deleting or renaming bad events. Replays, surveys, warehouse sources, and external destinations widen the privacy boundary. Consent, masking, access controls, regional requirements, and retention must be decided before broad collection. PostHog supplies tools and documentation, but the operator remains responsible for what enters the system.

The licensing boundary also needs attention. The README says the repository uses the MIT expat license except for the ee directory, which has its own license. Organizations requiring a purely FOSS codebase are directed to the separate posthog-foss repository. That distinction is clear enough to evaluate, yet procurement teams should review it before treating every directory in this monorepo as identically licensed.

Too much product for a simple website

PostHog is a poor trade for someone who wants only daily visitors, referrers, and popular pages. Plausible is narrower and easier to reason about for that job. Matomo suits teams that want a mature, self-hosted web analytics application. GrowthBook is the sharper option when flags and experiments matter but an existing warehouse already holds the analytical truth.

PostHog makes more sense when several capabilities will actually share context. Its data warehouse connections can bring outside business data beside product events. Pipelines can transform incoming data or send it to more than 25 tools and webhooks. AI observability can capture model traces, generations, latency, and cost. Workflows can act on user or product signals. The MCP connection can expose PostHog to Claude Code, Cursor, and other compatible agents.

A very active project with a very large queue

The repository was pushed on August 26, 2026, and desktop-v0.61.35 was released the same day. That tag is specifically a PostHog Desktop build, not a version of the whole platform. GitHub listed 5,150 open issues and pull requests, while current work included warehouse parsing fixes, task sandbox routing, log filters, and transport retry behavior.

Those figures describe a fast-moving monorepo rather than a finished appliance. The same-day push, release, fixes, and reports show current activity. They also imply frequent change and a large triage surface. Cloud customers can let PostHog absorb much of that motion. Self-hosters must choose updates carefully and accept the README's support disclaimer.

PostHog is easy to recommend for a serious product organization willing to adopt several of its connected tools. Start in Cloud, instrument one important journey, and prove that replay, errors, flags, and experiments improve decisions before expanding collection. Self-host only when control is worth the operating burden and the stated hobby limits fit. The project is powerful because it connects product work end to end, not because every team needs everything it contains.

Alternatives

ProjectWhat it isPick it when
Plausible AnalyticsA focused web analytics product built around a small dashboard and privacy-conscious measurement.pick this instead when you want straightforward website metrics without session replay, flags, experiments, or a data warehouse.
MatomoA long-running self-hosted analytics platform with broad reporting and privacy controls.pick this instead when conventional web analytics and control of the hosting stack matter more than PostHog's product engineering suite.
GrowthBookAn open-source platform centered on feature flags and statistically guided experiments.pick this instead when experimentation and flag delivery are the main jobs and you already have an analytics warehouse.

What people are saying

  1. [github-trending] PostHog/posthog

Sources

  1. PostHog repository and README
  2. PostHog self-hosting documentation
  3. PostHog open-source licensing explanation
  4. PostHog Desktop v0.61.35 release
  5. Self-driving setup wizard GitHub issue
  6. Instagram warehouse connection GitHub issue

More data reviews

turso · TrackersListCollection · dash · getcontact-cli · awesome-zhuiju-free · iggy · the whole board →