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?

Disclosure: I build TwoTail, so weigh the last bullet accordingly. Other comparisons: Braintrust vs Langfuse, LangSmith vs Langfuse pricing.