August 13, 2026Langfuse v4 is live
Faster tables, dashboards, APIs, and evaluations with an observations-first data model built for agents at scale.
Langfuse v4 is live on Langfuse Cloud and generally available for self-hosted deployments. It makes tables, dashboards, APIs, and evaluations faster at scale. Dashboard load times for large projects improve by at least 10x.
Many Langfuse Cloud users do not need to change anything. If one of your projects requires an update, we will email its owners and admins separately with the exact actions detected for that project. You will have three months to complete them. Self-hosted users decide when to upgrade, and Langfuse v3 will receive security patches through January 2027.
With v4, you can find the failed tool call inside a long-running agent, isolate the model calls driving a cost spike, or evaluate one sub-agent directly. Filter the Observations table, turn that result into a chart, and save it to a dashboard without building a separate query.
Investigate any step across your agents
Agent traces can contain hundreds or thousands of operations. Langfuse v4 makes each operation directly searchable, so you can start with the question you need to answer instead of opening traces one by one.
Find the exact failure
Search inputs, outputs, and metadata across every tool call and agent step.
Spot cost and latency outliers
Use Pulse to jump from a spike to the observations that caused it.
Keep the views that matter
Turn a filtered table into a chart and add it directly to a dashboard.
Evaluate the relevant operation
Target one LLM call, tool execution, or sub-agent instead of only the trace.
The observations-first model makes queries faster
Every LLM call, tool execution, and agent step is now a first-class observation that you can query directly. Trace context such as user_id, session_id, tags, and metadata lives on each observation, so Langfuse does not need to join a trace table to an observations table when you filter or aggregate data.
Observations are also immutable for the main ingestion path. This removes costly read-time deduplication and lets ClickHouse scan the data efficiently. Initial table loads over large datasets go from seconds to milliseconds, while dashboards over longer time ranges load at least 10x faster.
![]()
The same model powers full-text search, alerts, the Observations API v2, and the Metrics API v2.
For the implementation story and performance work behind this release, read Simplifying Langfuse for Scale.
Trace-level concepts move to observations
Traces remain the way to inspect one request end to end. In v4, a trace is the set of observations that share a trace_id, and its root observation is the default row in the main table. Remove the Is Root Observation = true filter when you want to search every operation across traces.
The migration follows the same principle throughout the product:
| Previous interface | v4 interface |
|---|---|
| Trace-level input and output | Input and output on the relevant observation, usually the root observation |
| Trace-level LLM-as-a-Judge evaluator | Observation-level evaluator |
| Legacy dataset evaluator or dataset-run integration | Experiment target and Experiment runner |
| Legacy ingestion and read APIs | OpenTelemetry ingestion and the current public APIs |
| Legacy traces-and-observations export source | Enriched observations |
These changes follow the direction of agentic applications: evaluations can target any level of an observation tree, experiments no longer need to be tied to datasets, and each operation can be queried without first assembling its entire trace.
Upgrade Langfuse Cloud projects
New Cloud projects already use v4 and have nothing to migrate. For existing projects, open Action required in the Langfuse sidebar to see the checks that apply to your project. Organization owners can use Migration Status for a project-by-project overview.
![]()
Depending on what Langfuse detects, your checklist can include:
- Upgrade to Python SDK 4.7.0 or later or JS/TS SDK 5.4.0 or later for real-time v4 ingestion.
- Move custom REST or OpenTelemetry ingestion to the v4 OTLP/HTTP path.
- Replace deprecated API calls with the current Observations, Metrics, Scores, and Experiments APIs.
- Move trace-level evaluators to observation targets and legacy-dataset evaluators to experiment targets.
- Switch blob storage, PostHog, or Mixpanel exports to enriched observations.
We will send project owners and admins a separate email containing only the actions detected for their projects. Complete those actions within the three-month migration window. The Cloud upgrade guide has the instructions for every check.
Upgrade self-hosted deployments when you are ready
Langfuse v4 is generally available for self-hosted deployments. There is no forced cutover date, and the migration modes let you separate the server upgrade from the data-model cutover:
- Upgrade the required infrastructure, including ClickHouse 25.12 or later.
- Deploy the Langfuse v4 server in
legacyordualwrite mode to retain current behavior while you migrate. - Upgrade SDKs and migrate the APIs, evaluators, experiments, and exports that your deployment uses.
- Move historic data with the automated background backfill or keep dual writing for one retention period.
- Switch to the
events_onlywrite mode when the new data path is complete.
The self-hosted v3 to v4 guide covers infrastructure requirements, migration modes, historic data options, validation, and rollback. Check the compatibility matrix before choosing SDK and server versions.
Start using Langfuse v4
Read the Langfuse v4 overview, follow the upgrade guide, or ask a question in the dedicated GitHub Discussion.