Phoenix if you want the lightest tracer to run yourself, built on OpenTelemetry. Langfuse if you want a fuller platform, a cheap managed plan and an MIT licence. That answers the question. It’s also the smaller decision, because both are recorders, and neither tells you whether your agent is any good.
Arize Phoenix vs Langfuse at a glance
| Arize Phoenix | Langfuse | |
|---|---|---|
| Licence | Elastic License 2.0 (source-available) | MIT core |
| Self-hosting | Free, a container image; SQLite, or Postgres for production | Free; Postgres, ClickHouse, Redis and blob storage |
| Instrumentation | OpenTelemetry with OpenInference auto-instrumentation | OpenTelemetry plus native SDKs |
| Ownership | Arize AI | ClickHouse, since January 2026 |
| Managed free tier | Arize AX Free: 25k spans, 1 GB, unlimited users, 15 days | Hobby: 50k units, 2 users, 30 days |
| Entry paid plan | Arize AX Pro: $50 per month, 50k spans, 30 days | Core: $29 per month, 100k units, unlimited users, 90 days |
| Evals | arize-phoenix-evals library; AX aligns judges to human labels | LLM judges, datasets, annotation queues; Score Analytics (beta) |
Sources: Phoenix on GitHub, Phoenix self-hosting, Arize pricing, Align evals to human feedback, Langfuse pricing, Langfuse self-hosting. Checked 9 Nov 2026.
Where they’re the same
Both record nested spans, LLM calls, tool calls, tokens and cost over OpenTelemetry. Both let you run LLM-as-judge evals over those traces, build datasets and compare runs. Both can run entirely on your own servers for free. For most agents, either will capture everything you need.
So pick on the three things below.
Where they differ
How much you run. Phoenix is the lighter install: a container image that starts on SQLite, with Postgres recommended once it matters. Langfuse is a heavier stack: Postgres, ClickHouse, Redis or Valkey, and blob storage, with Helm for production. If one engineer is going to own the tracer in their spare time, that difference is real.
The licence. Langfuse’s core is MIT, so you can build on it, fork it or embed it with few questions asked. Phoenix uses the Elastic License 2.0. You can self-host it freely, but it’s source-available rather than open source, and the licence restricts offering it as a managed service. For most teams that never matters. For a team building a product on top, it does.
The paid path. Langfuse’s paid plans are the same product, hosted, with more units and longer retention: $29 a month for Core, $199 for Pro with 3 years of data. Phoenix’s paid path is Arize AX, a separate commercial platform. AX has its own free tier and a $50 Pro plan, and Enterprise adds self-hosting, SSO and HIPAA. Moving from Phoenix to AX is a move between products, not an upgrade in place.
Where both stop
You don’t run a tracer to have traces. You run it to make the agent better. On that job, both stop in the same places.
You can record it, but can you see it?
Three founders have told me they couldn’t see what their agent was doing in Langfuse. They had the traces. They couldn’t read them. A support conversation should read like a chat, with the moment it went wrong in front of you. Langfuse lets you build views like that, but configuring them is tiresome. A good product knows what you need to see for each use case and shows you that by default.
Agreement is a check, not a method
Both sides now report how often a judge agrees with human labels: Langfuse in Score Analytics (beta), Arize in AX. That’s useful. It isn’t a method. Annotating every trace isn’t an option, so you need to know which traces to label, how many, and how to turn a few dozen labels into a corrected rate for the whole population, with error bars, kept up as your judges drift. More on that in what makes a good LLM judge.
The outcome isn’t in your traces
One customer runs a sales agent whose success is measured in sends. Sends live in their product database. None of them are in the traces. Evals without outcomes give you a well-behaved agent. To move the number the business cares about, you need to know which evals predict it. Arize’s own guidance is to join outcome data in a warehouse first. Langfuse doesn’t offer the join either.
The longer version of this argument is in LangSmith vs Langfuse.
Which should you choose?
- You want the lightest self-hosted tracer: Phoenix. A container image, OpenInference instrumentation, no licence fee.
- You want a managed tool that’s cheap at volume, or an MIT licence: Langfuse. Core is $29 a month with unlimited users.
- You’re building a product on top of the tracer: Langfuse, for the licence.
- You own whether the agent is any good: keep whichever tracer you run and add an agent quality layer on top. That’s what TwoTail is. It connects to Langfuse with a pasted key and no code change, and takes OpenTelemetry from anything else.
Disclosure: I build TwoTail, so weigh the last bullet accordingly. Other comparisons: Braintrust vs Langfuse, LangSmith vs Langfuse pricing.