Both sit in the observability & evals layer with similar commercial terms, so the practical split is language: Langfuse targets Python and promptfoo targets Python.
Open-source tracing, prompt management and evals. Self-hostable in one compose file.
Local eval and red-team harness that runs in CI. No account needed.
Its red-team mode doubles as your prompt-injection regression suite.
| Langfuse | promptfoo | |
|---|---|---|
| Licence | Open source | Open source |
| Pricing | freemium | open source |
| Self-hostable | Yes | Yes |
| Languages | Python, TypeScript | TypeScript, Python |
| Install | pip install langfuse | npm install -g promptfoo |
| Keys required | LANGFUSE_PUBLIC_KEY, LANGFUSE_SECRET_KEY | None |
Both sit in the observability & evals layer with similar commercial terms, so the practical split is language: Langfuse targets Python and promptfoo targets Python. Langfuse: Open-source tracing, prompt management and evals. Self-hostable in one compose file. promptfoo: Local eval and red-team harness that runs in CI. No account needed.
Langfuse can run on your own infrastructure. promptfoo can run on your own infrastructure.
Langfuse is open source (freemium). promptfoo is open source (open source).
Every page here answers to Accept: text/markdown and returns the same content at roughly a tenth the tokens. No separate site, no toggle — same URL.
curl -s -H "Accept: text/markdown" https://newagent.build/compare/langfuse-vs-promptfoo