Langfuse charges based on "ingested units"—traces, observations, or scores. You get 100,000 units/month for free, then pay $29/month for the Core plan (which unlocks 90-day retention), plus $8 per additional 100,000 units. For a production RAG application processing 2,000 queries daily with roughly 5 internal spans per query (retrieval, rerank, generation), you're burning ~300,000 units a month. On Langfuse, that bill is around $45/month. On LangSmith, similar volume often pushes past $150 due to steeper per-trace overages.
The platform's biggest shift in 2026 is the mandatory ClickHouse backend. Since the acquisition, Langfuse moved from a simple Postgres architecture to a dual Postgres (transactional) + ClickHouse (analytical) stack. This makes the analytics blazing fast—you can slice millions of traces by latency or token usage in sub-seconds. The tracing UI is dense but functional, allowing you to click into a specific RAG step and see the exact chunks retrieved alongside the LLM's response.
The trade-off is the self-hosting burden. In 2024, you could spin up Langfuse on a $5/month droplet. Now, self-hosting requires managing a ClickHouse cluster alongside Postgres and Redis. Minimum specs for a stable v3 instance are around 4 vCPUs and 16GB RAM. It’s no longer a "set and forget" Docker container for hobbyists; it’s infrastructure. If you don't have a platform engineer, the Cloud version is significantly cheaper than the time spent debugging ClickHouse migrations.
Competitively, Arize Phoenix offers better visualization for embedding clusters and drift, while LangSmith has tighter (almost magical) integration if you're deep in the LangChain ecosystem. But Langfuse remains the pragmatic middle ground: it doesn't lock you into a framework like LangSmith, and it handles scale better than the purely Postgres-backed alternatives.
Skip Langfuse if you're building a simple chatbot and don't want to manage heavy infrastructure or pay for a cloud tier immediately. Use it if you are a serious engineering team that needs full data sovereignty (self-hosted) or a cost-effective cloud alternative to Datadog for LLMs.
Pricing
The 100k unit free tier is generous but deceptive. A "unit" isn't a request; it's a trace component. A single complex Agent chain can generate 10-20 units (spans, generations, scores). A seemingly small app with 50 daily active users can hit the 100k limit in two weeks.
The "Core" plan at $29/month is the real entry point, adding 90-day retention and removing the strict rate limits of the free tier. The hidden cost is evaluation: running model-based evals (LLM-as-a-judge) inside Langfuse consumes your own API keys separately, doubling the cost for that specific workflow.
Technical Verdict
The SDKs (Python/JS) are low-overhead and use async batching to avoid blocking your main application loop. Integration is often just a decorator (@observe()). Reliability has improved massively with the ClickHouse backend, handling millions of rows without the UI timeouts common in v2. Documentation is excellent for cloud, but self-hosting docs assume you know your way around Docker Compose and database networking.
Quick Start
# pip install langfuse
from langfuse import Langfuse
langfuse = Langfuse()
trace = langfuse.trace(name="hello-world")
trace.span(name="generation", input="Hi").end(output="Hello there")
print(f"Trace URL: {trace.get_trace_url()}")Watch Out
- Self-hosting v3+ strictly requires ClickHouse; you cannot run it on Postgres alone anymore.
- One user interaction often equals 5-10 billable 'units' (trace + spans + scores), burning free credits faster than expected.
- Data retention on the Free tier is only 30 days; you lose history quickly unless you upgrade or export.
- The Docker Compose setup is resource-hungry; expect OOM kills on instances with less than 8GB RAM.
