Langfuse vs LangSmith vs Braintrust vs Phoenix
The interesting divide is not open versus closed, it is tracing versus evaluation. Most teams buy a tracing tool and then discover they still cannot answer whether a change helped.
Short answer
If you cannot send traces outside your infrastructure, self-host Langfuse and stop deliberating. Otherwise pick on evaluation rather than tracing, because tracing is table stakes and evaluation is what you will actually rely on.
By Lattice editorial · Licence and cost facts verified · method
- LangfuseSelf-hostable tracing, prompts and evals in one.
- LangSmithDeep LangChain integration, strong dataset tooling.
- BraintrustEval-first, with built-in scorers and a data flywheel.
- Arize PhoenixOpen-source, OpenTelemetry-native evaluation.
| Dimension | Langfuse | LangSmith | Braintrust | Arize Phoenix |
|---|---|---|---|---|
| Best for | Self-hosting, or a privacy constraint | Teams already deep in LangChain | Making evaluation the primary workflow | OpenTelemetry-first, open-source everything |
| Self-hostable | Yes | Enterprise plan | Yes, paid | Yes, fully open |
| Open standards | OTel export | Partial | Proprietary | OTel-native throughout |
| Prompt management | First-class, with versioning and A/B | Basic | Yes | Limited |
| Evaluation | Datasets, scorers, CI-friendly | Strong offline and online eval | The strongest eval story of the four | Strong, trace-derived datasets |
| Where it loses | Depth of framework-specific debugging | Cost, and vendor lock-in at higher tiers | Traces are secondary to evals | Polish and support |
Scroll the table sideways to see every tool.
What this table is not. These are editorial judgements, not benchmarks: Lattice has not run these tools head to head, and no cell uses GitHub stars or vendor benchmark claims as evidence. Licence and cost facts are re-checked on a schedule the build enforces — the receipt is public.
The recommendation
Which should you choose: Langfuse, LangSmith, Braintrust or Arize Phoenix?
If you cannot send traces outside your infrastructure, self-host Langfuse and stop deliberating. Otherwise pick on evaluation rather than tracing, because tracing is table stakes and evaluation is what you will actually rely on. Whatever you choose, make sure traces carry the full request and response — that is the input to every future decision.
Rules of thumb
- Tracing answers 'what happened'. Only evaluation answers 'is this better'. Buying one and expecting the other is the common mistake.
- Check that model names, versions and per-hop latency are captured, or your cost and regression analysis will be wrong.
- Adopting OpenTelemetry as the export format keeps your future options open at close to no cost.
Quick answers
- When should you use Langfuse, and when should you skip it?
- Use Langfuse when: self-hostable tracing, prompts and evals in one place. Skip it when: you want a fully managed product with a support contract.
- When should you use LangSmith, and when should you skip it?
- Use LangSmith when: teams already deep in LangChain needing tracing and datasets. Skip it when: traces cannot leave your infrastructure.
- When should you use Braintrust, and when should you skip it?
- Use Braintrust when: making evaluation, rather than tracing, the primary workflow. Skip it when: you need open formats and self-hosting.
- When should you use Arize Phoenix, and when should you skip it?
- Use Arize Phoenix when: OpenTelemetry-native evaluation you can run yourself. Skip it when: you want a vendor support contract behind it.