Skip to content

Freelance blog post - PostHog vs Langfuse#18134

Open
natalia-amorim wants to merge 29 commits into
masterfrom
freelance-posthog-vs-langfuse-blog-post
Open

Freelance blog post - PostHog vs Langfuse#18134
natalia-amorim wants to merge 29 commits into
masterfrom
freelance-posthog-vs-langfuse-blog-post

Conversation

@natalia-amorim

Copy link
Copy Markdown
Contributor

Changes

Comparison article for PostHog vs Langfuse (freelance submission)

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Deploy preview

Status Details Updated (UTC)
🟢 Ready View preview Jul 03, 2026 05:25PM

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Vale prose linter → found 3 errors, 99 warnings, 1 suggestions in your markdown

Full report → Copy the linter results into an LLM to batch-fix issues.

Linter being weird? Update the rules!

contents/blog/posthog-vs-langfuse.mdx — 3 errors, 99 warnings, 1 suggestions
Line Severity Message Rule
2:20 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
14:28 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
20:124 warning Capitalize 'Logs' for PostHog's product. Use 'logs' for the general industry concept. PostHogBase.ProductNames
22:24 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
26:6 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
26:164 warning Capitalize 'Experiments' for PostHog's product. Use 'experiments' for the general industry concept. PostHogBase.ProductNames
28:146 warning Capitalize 'Product Analytics' for PostHog's product. Use 'product analytics' for the general industry concept. PostHogBase.ProductNames
28:187 warning Capitalize 'Session Replay' for PostHog's product. Use 'session replay' for the general industry concept. PostHogBase.ProductNames
28:222 warning Capitalize 'Feature Flags' for PostHog's product. Use 'feature flags' for the general industry concept. PostHogBase.ProductNames
28:255 warning Capitalize 'Experiments' for PostHog's product. Use 'experiments' for the general industry concept. PostHogBase.ProductNames
28:284 warning Capitalize 'Error Tracking' for PostHog's product. Use 'error tracking' for the general industry concept. PostHogBase.ProductNames
28:319 warning Capitalize 'Surveys' for PostHog's product. Use 'surveys' for the general industry concept. PostHogBase.ProductNames
34:316 warning Capitalize 'Session Replay' for PostHog's product. Use 'session replay' for the general industry concept. PostHogBase.ProductNames
40:74 warning Capitalize 'Experiments' for PostHog's product. Use 'experiments' for the general industry concept. PostHogBase.ProductNames
42:14 warning Capitalize 'Experiments' for PostHog's product. Use 'experiments' for the general industry concept. PostHogBase.ProductNames
42:276 warning 'Frequentist' is a possible misspelling. PostHogBase.Spelling
55:4 warning 'Comparing PostHog and Langfuse' heading should be in sentence case, and product names should be capitalized. PostHogBase.SentenceCase
55:26 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
59:63 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
83:19 warning 'Langfuse's' is a possible misspelling. PostHogBase.Spelling
87:1 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
87:274 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
106:71 warning Capitalize 'Workflows' for PostHog's product. Use 'workflows' for the general industry concept. PostHogBase.ProductNames
106:173 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
110:74 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
110:124 warning Capitalize 'Workflows' for PostHog's product. Use 'workflows' for the general industry concept. PostHogBase.ProductNames
114:39 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
130:41 warning Capitalize 'Experiments' for PostHog's product. Use 'experiments' for the general industry concept. PostHogBase.ProductNames
130:91 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
151:138 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
153:268 warning Capitalize 'Product Analytics' for PostHog's product. Use 'product analytics' for the general industry concept. PostHogBase.ProductNames
157:32 warning Capitalize 'Workflows' for PostHog's product. Use 'workflows' for the general industry concept. PostHogBase.ProductNames
157:49 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
157:114 warning Capitalize 'Product Analytics' for PostHog's product. Use 'product analytics' for the general industry concept. PostHogBase.ProductNames
157:133 warning Capitalize 'Session Replay' for PostHog's product. Use 'session replay' for the general industry concept. PostHogBase.ProductNames
157:149 warning Capitalize 'Feature Flags' for PostHog's product. Use 'feature flags' for the general industry concept. PostHogBase.ProductNames
157:164 warning Capitalize 'Experimentation' for PostHog's product. Use 'experimentation' for the general industry concept. PostHogBase.ProductNames
185:30 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
187:27 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
199:4 warning 'When to choose PostHog vs Langfuse' heading should be in sentence case, and product names should be capitalized. PostHogBase.SentenceCase
199:30 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
207:84 warning Capitalize 'Error Tracking' for PostHog's product. Use 'error tracking' for the general industry concept. PostHogBase.ProductNames
208:42 warning Capitalize 'Session Replay' for PostHog's product. Use 'session replay' for the general industry concept. PostHogBase.ProductNames
208:58 warning Capitalize 'Experiments' for PostHog's product. Use 'experiments' for the general industry concept. PostHogBase.ProductNames
210:5 warning 'Choose Langfuse for AI observability if:' heading should be in sentence case, and product names should be capitalized. PostHogBase.SentenceCase
210:12 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
213:83 warning Capitalize 'Experiments' for PostHog's product. Use 'experiments' for the general industry concept. PostHogBase.ProductNames
214:80 warning Capitalize 'Workflows' for PostHog's product. Use 'workflows' for the general industry concept. PostHogBase.ProductNames
214:138 warning Capitalize 'Experiments' for PostHog's product. Use 'experiments' for the general industry concept. PostHogBase.ProductNames
223:37 warning Capitalize 'Session Replay' for PostHog's product. Use 'session replay' for the general industry concept. PostHogBase.ProductNames
223:53 warning Capitalize 'Feature Flags' for PostHog's product. Use 'feature flags' for the general industry concept. PostHogBase.ProductNames
223:72 warning Capitalize 'Error Tracking' for PostHog's product. Use 'error tracking' for the general industry concept. PostHogBase.ProductNames
223:297 warning Capitalize 'Experiments' for PostHog's product. Use 'experiments' for the general industry concept. PostHogBase.ProductNames
227:5 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
227:133 warning 'Langfuse's' is a possible misspelling. PostHogBase.Spelling
231:128 error Hi, Andy here... use an en dash ( – ) with spaces. On Mac, holding down the Option and hyphen key will give you an en dash. PostHogBase.EnDash
231:180 warning Capitalize 'Experiments' for PostHog's product. Use 'experiments' for the general industry concept. PostHogBase.ProductNames
233:33 warning 'LLMOps' is a possible misspelling. PostHogBase.Spelling
235:16 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
240:57 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
242:3 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
242:239 warning Capitalize 'Product Analytics' for PostHog's product. Use 'product analytics' for the general industry concept. PostHogBase.ProductNames
242:280 warning Capitalize 'Session Replay' for PostHog's product. Use 'session replay' for the general industry concept. PostHogBase.ProductNames
242:315 warning Capitalize 'Feature Flags' for PostHog's product. Use 'feature flags' for the general industry concept. PostHogBase.ProductNames
242:348 warning Capitalize 'Experiments' for PostHog's product. Use 'experiments' for the general industry concept. PostHogBase.ProductNames
242:377 warning Capitalize 'Error Tracking' for PostHog's product. Use 'error tracking' for the general industry concept. PostHogBase.ProductNames
244:49 error Hi, Andy here... use an en dash ( – ) with spaces. On Mac, holding down the Option and hyphen key will give you an en dash. PostHogBase.EnDash
244:81 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
244:118 warning Capitalize 'Workflows' for PostHog's product. Use 'workflows' for the general industry concept. PostHogBase.ProductNames
249:24 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
251:138 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
258:30 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
260:181 warning Capitalize 'Product Analytics' for PostHog's product. Use 'product analytics' for the general industry concept. PostHogBase.ProductNames
260:200 warning Capitalize 'Session Replay' for PostHog's product. Use 'session replay' for the general industry concept. PostHogBase.ProductNames
260:223 warning Capitalize 'Error Tracking' for PostHog's product. Use 'error tracking' for the general industry concept. PostHogBase.ProductNames
260:255 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
265:32 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
267:130 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
276:42 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
278:1 suggestion Avoid hedging. Be opinionated instead of saying 'It depends'. PostHogEditorial.Hedging
278:76 warning Use the Oxford comma before 'and' or 'or' in a list of three or more items. PostHogBase.OxfordComma
278:99 warning 'Braintrust' is a possible misspelling. PostHogBase.Spelling
280:52 warning Capitalize 'Product Analytics' for PostHog's product. Use 'product analytics' for the general industry concept. PostHogBase.ProductNames
280:120 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
289:3 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
304:3 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
311:13 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
313:3 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
315:20 warning Use 'GitHub' instead of 'github'. Vale.Terms
315:39 warning Use 'PostHog' instead of 'posthog'. Vale.Terms
316:3 warning 'Langfuse's' is a possible misspelling. PostHogBase.Spelling
316:21 warning Use 'GitHub' instead of 'github'. Vale.Terms
321:37 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
323:16 warning 'Langfuse's' is a possible misspelling. PostHogBase.Spelling
330:286 warning 'Langfuse's' is a possible misspelling. PostHogBase.Spelling
332:263 warning 'Langfuse' is a possible misspelling. PostHogBase.Spelling
339:78 warning 'Langfuse's' is a possible misspelling. PostHogBase.Spelling
344:17 warning Capitalize 'Session Replay' for PostHog's product. Use 'session replay' for the general industry concept. PostHogBase.ProductNames
346:1 warning Capitalize 'Session Replay' for PostHog's product. Use 'Session replay' for the general industry concept. PostHogBase.ProductNames
346:218 warning Capitalize 'Logs' for PostHog's product. Use 'logs' for the general industry concept. PostHogBase.ProductNames
351:17 warning Capitalize 'Feature Flags' for PostHog's product. Use 'feature flags' for the general industry concept. PostHogBase.ProductNames
353:1 warning Capitalize 'Feature Flags' for PostHog's product. Use 'Feature flags' for the general industry concept. PostHogBase.ProductNames
353:220 error Hi, Andy here... use an en dash ( – ) with spaces. On Mac, holding down the Option and hyphen key will give you an en dash. PostHogBase.EnDash

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Bundle report

Total JS (gzip)

6.29 MiB (+1.4 KiB / +0.0%)

Largest changed named chunks
Chunk Gzip Δ vs master
app.js 1981.5 KiB +1.4 KiB / +0.1%

Eager graph (static-import closure per entrypoint)

Entrypoint Eager size Budget Modules
app 24.23 MiB (+5.7 KiB / +0.0%) report-only 5516
Largest modules in the app closure
Module Size
css ./node_modules/.pnpm/css-loader@5.2.7_webpack@5.101.3/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[1]!./node_modules/.pnpm/postcss-loader@4.3.0_postcss@8.5.6_webpack@5.101.3/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[2]!./src/styles/global.css 708.0 KiB
./src/components/Stickers/Stickers.tsx 696.4 KiB
./.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/31a094f140f119e73085d847ae81b99b.js + 2 modules 584.2 KiB
./node_modules/.pnpm/@radix-ui+react-icons@1.3.2_react@18.3.1/node_modules/@radix-ui/react-icons/dist/react-icons.esm.js 481.4 KiB
./node_modules/.pnpm/@codemirror+view@6.38.2/node_modules/@codemirror/view/dist/index.js 458.1 KiB
./node_modules/.pnpm/rehype-raw@7.0.0/node_modules/rehype-raw/lib/index.js + 29 modules 395.1 KiB
./node_modules/.pnpm/@posthog+icons@0.36.6_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@posthog/icons/dist/posthog-icons.cjs.js 364.8 KiB
./node_modules/.pnpm/@posthog+icons@0.36.6_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@posthog/icons/dist/posthog-icons.es.js 354.8 KiB
./src/hooks/useCustomers.tsx + 54 modules 353.9 KiB
./node_modules/.pnpm/react-markdown@8.0.7_@types+react@16.14.66_react@18.3.1/node_modules/react-markdown/lib/react-markdown.js + 88 modules 351.4 KiB
./node_modules/.pnpm/cloudinary-core@2.14.0_lodash@4.17.21/node_modules/cloudinary-core/cloudinary-core.js 281.9 KiB
./src/components/ProductComparisonTable/index.tsx + 116 modules 273.3 KiB
./node_modules/.pnpm/@codesandbox+sandpack-react@2.20.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@codesandbox/sandpack-react/dist/index.mjs 266.6 KiB
./node_modules/.pnpm/d3@7.9.0/node_modules/d3/src/index.js + 208 modules 247.4 KiB
./src/components/Pricing/PricingSlider/Slider.tsx + 87 modules 239.9 KiB

Eager-graph budgets are report-only until a baseline is established. Sizes are gzip of public/**/*.js; eager size is webpack module source bytes.

@natalia-amorim natalia-amorim requested a review from ivanagas July 2, 2026 19:00
Comment thread contents/blog/posthog-vs-langfuse.mdx Outdated
Comment thread contents/blog/posthog-vs-langfuse.mdx Outdated
Comment thread contents/blog/posthog-vs-langfuse.mdx Outdated
Comment thread contents/blog/posthog-vs-langfuse.mdx Outdated
Comment thread contents/blog/posthog-vs-langfuse.mdx Outdated
Comment thread contents/blog/posthog-vs-langfuse.mdx Outdated
Comment thread contents/blog/posthog-vs-langfuse.mdx Outdated
Comment thread contents/blog/posthog-vs-langfuse.mdx
Comment thread contents/blog/posthog-vs-langfuse.mdx Outdated
Comment thread contents/blog/posthog-vs-langfuse.mdx
@natalia-amorim natalia-amorim requested a review from ivanagas July 3, 2026 17:28

@ivanagas ivanagas left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good, thanks for all your work on this one :)


"It works in the playground" is the "it works on my machine" of AI development. Everything's great, until it isn't.

A real user types something you never tested, your agent takes a hard left turn, and suddenly you're scrolling through raw logs trying to reconstruct what happened.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
A real user types something you never tested, your agent takes a hard left turn, and suddenly you're scrolling through raw logs trying to reconstruct what happened.
A real user types something you never tested, your agent takes a hard left turn, and suddenly you're scrolling through logs trying to reconstruct what happened.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

overall nice though, thanks!


### Prompt management

Langfuse built prompt management as a core pillar from day one. However, PostHog is playing catch-up with a [Prompt Management](/docs/prompt-management) tool (currently in beta). But while it already covers versioning, runtime fetching, and A/B testing of prompt versions, Langfuse is still further along with features like labels, playground testing, and composable prompts.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

core pillar and day one are both cliche, so lets just have one of them

Suggested change
Langfuse built prompt management as a core pillar from day one. However, PostHog is playing catch-up with a [Prompt Management](/docs/prompt-management) tool (currently in beta). But while it already covers versioning, runtime fetching, and A/B testing of prompt versions, Langfuse is still further along with features like labels, playground testing, and composable prompts.
Langfuse had prompt management from day one. However, PostHog is playing catch-up with a [Prompt Management](/docs/prompt-management) tool (currently in beta). While PostHog's tool already covers versioning, runtime fetching, and A/B testing of prompt versions, Langfuse is still further along with features like labels, playground testing, and composable prompts.

/>
</p>

**Worth noting:** Right now, PostHog's prompt management handles core workflows like creating versioned prompts for fetching them at runtime with caching and fallback. But Langfuse still has deeper features, such as environment-based deployment labels and composable prompt chains. If you really need in-depth metrics *just for LLM* features, Langfuse is the stronger pick.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this duplicates a lot of what's said in the sentence above. The in-depth metrics bit maybe doesn't even make sense to include here.

Suggested change
**Worth noting:** Right now, PostHog's prompt management handles core workflows like creating versioned prompts for fetching them at runtime with caching and fallback. But Langfuse still has deeper features, such as environment-based deployment labels and composable prompt chains. If you really need in-depth metrics *just for LLM* features, Langfuse is the stronger pick.


### Evals and datasets

Both tools score outputs with LLM-as-a-judge and custom code evaluators. Langfuse goes further into pre-deployment quality workflows: annotation queues for scoring specific parts of a trace, curated datasets, and experiment runs across them.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Both tools score outputs with LLM-as-a-judge and custom code evaluators. Langfuse goes further into pre-deployment quality workflows: annotation queues for scoring specific parts of a trace, curated datasets, and experiment runs across them.
Both tools can score outputs with LLM-as-a-judge and custom code evaluators. Langfuse goes further into pre-deployment quality workflows: annotation queues for scoring specific parts of a trace, curated datasets, and experiment runs across them.


PostHog has whole-trace human reviews rather than span-level annotations, and dataset-based eval runs are on the roadmap.

For pre-deployment quality assurance, Langfuse is the stronger pick right now.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's let people decide that themselves 😅

Suggested change
For pre-deployment quality assurance, Langfuse is the stronger pick right now.


A real user types something you never tested, your agent takes a hard left turn, and suddenly you're scrolling through raw logs trying to reconstruct what happened.

Both [PostHog](/) and [Langfuse](/blog/best-langfuse-alternatives) exist for this exact moment. They both show you [what your LLMs are actually doing](blog/what-is-ai-observability) in production – traces, token costs, latency, the works.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Both [PostHog](/) and [Langfuse](/blog/best-langfuse-alternatives) exist for this exact moment. They both show you [what your LLMs are actually doing](blog/what-is-ai-observability) in production – traces, token costs, latency, the works.
Both [PostHog](/) and [Langfuse](/blog/best-langfuse-alternatives) exist for this exact moment. They both show you [what your LLMs are actually doing](/blog/what-is-ai-observability) in production – traces, token costs, latency, the works.


1. **Langfuse** is a dedicated [AI observability](/blog/what-is-ai-observability) platform with deep tracing, prompt management, evaluation pipelines, and dataset experiments. It's open source (MIT licensed), self-hostable, and built for teams that want to own every layer of their AI stack. It was acquired by ClickHouse in January 2026.

2. **PostHog** is a developer platform for building self-driving products. [AI observability](/ai-observability) is one of many tools alongside [product analytics](/product-analytics), [session replay](/session-replay), [feature flags](/feature-flags), [experiments](/experiments), [error tracking](/error-tracking), [surveys](/surveys), and more. It's built for AI-pilled teams who want discover issues wherever they exist, make improvements fast, and evaluate that they actually work.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
2. **PostHog** is a developer platform for building self-driving products. [AI observability](/ai-observability) is one of many tools alongside [product analytics](/product-analytics), [session replay](/session-replay), [feature flags](/feature-flags), [experiments](/experiments), [error tracking](/error-tracking), [surveys](/surveys), and more. It's built for AI-pilled teams who want discover issues wherever they exist, make improvements fast, and evaluate that they actually work.
2. **PostHog** is a developer platform for building self-driving products. [AI observability](/ai-observability) is one of many tools alongside [product analytics](/product-analytics), [session replay](/session-replay), [feature flags](/feature-flags), [experiments](/experiments), [error tracking](/error-tracking), [surveys](/surveys), and more. It's built for AI-pilled teams who want to discover issues wherever they exist, make improvements fast, and evaluate that they actually work.


### 2. We let you A/B test prompts and AI features on real users

Although both have prompt playgrounds, PostHog goes further with [prompt experiments (beta)](/docs/prompt-management/prompt-experiments) let you pit two or more versions of a prompt against each other. It splits users between them [via a feature flag](/docs/feature-flags) and reports cost, latency, eval pass rate, and usage analytics per variant, with a confidence interval against the control.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Although both have prompt playgrounds, PostHog goes further with [prompt experiments (beta)](/docs/prompt-management/prompt-experiments) let you pit two or more versions of a prompt against each other. It splits users between them [via a feature flag](/docs/feature-flags) and reports cost, latency, eval pass rate, and usage analytics per variant, with a confidence interval against the control.
Although both have prompt playgrounds, PostHog goes further with [prompt experiments (beta)](/docs/prompt-management/prompt-experiments) that let you pit two or more versions of a prompt against each other. It splits users between them [via a feature flag](/docs/feature-flags) and reports cost, latency, eval pass rate, and usage analytics per variant, with a confidence interval against the control.

<details>
<summary>How do feature flags make AI rollouts safer?</summary>

Feature flags let you roll out new AI features, prompts, or model versions gradually. You can release to a small percentage of users, monitor traces and product metrics, and roll back instantly if something looks wrong — without redeploying code.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Feature flags let you roll out new AI features, prompts, or model versions gradually. You can release to a small percentage of users, monitor traces and product metrics, and roll back instantly if something looks wrong without redeploying code.
Feature flags let you roll out new AI features, prompts, or model versions gradually. You can release to a small percentage of users, monitor traces and product metrics, and roll back instantly if something looks wrong without redeploying code.


- **PostHog or Langfuse** – You can use Langfuse for the LLM engineering team's inner loop (prompt iteration, evals, dataset management, quality assurance). And add PostHog for the product team so that they can measure business outcomes after shipping the feature. They solve different problems for different people in the organization,

## Frequently asked questions

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A good FAQ might be PostHog events vs Langfuse units.

Here's Claude:

Good question — it's the crux of why the comparison is tricky. Here's the distinction:

Langfuse units

A unit is any single record Langfuse stores, of three types:

Units = Traces + Observations + Scores

  • Trace — the top-level container for one request (e.g. one chatbot turn). 1 per request.
  • Observation — every step inside the trace: each LLM call (generation), each retrieval/function step (span), each event. A trace with 3 LLM calls + 2 retrieval steps = 5 observations.
  • Score — an evaluation attached to a trace/observation: LLM-as-judge results, human annotations, experiment scores.

So the trace itself is billed as its own unit, plus everything in it, plus every eval you run on it. That's why one trace ≈ ~7 units in their example (1 trace + ~6 observations + a fraction of a score).

PostHog events

PostHog bills per event, and every captured item is a separate $ai_* event:

  • $ai_generation — one LLM call (the primary/most common event)
  • $ai_span — an operation within a trace (retrieval, function call)
  • $ai_trace — the trace-level record
  • $ai_embedding — a vectorization call

There's no separate "score" event type the way Langfuse has — evals in PostHog aren't billed as a distinct ingestion unit in the same way.

The practical differences

Langfuse unit PostHog event
Trace container billed (1 unit) billed ($ai_trace)
Each LLM call billed (observation) billed ($ai_generation)
Each span/step billed (observation) billed ($ai_span)
Evals / annotations billed (score) not a billed ingestion unit
Rate $8 per 100k $6 per 100k ($0.00006 each)

Bottom line: the two count instrumentation items almost identically (trace + every observation/span), so for the same app they land at roughly the same volume — which is why applying the same ~7× multiplier to both is fair. The two real divergences are:

  1. Scores. If you run lots of evals/annotations, Langfuse's unit count climbs faster than PostHog's event count, because those are billable units in Langfuse but not billable events in PostHog.
  2. Instrumentation depth. If you only wrap LLM calls and skip spans, both drop — but PostHog can drop further if you don't emit the trace/span wrapper events.

So "units" and "events" are conceptually the same idea (one billed record per captured thing), differing mainly in what counts as billable (Langfuse adds scores) and the per-item price ($8 vs $6 per 100k).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants