🇯🇵 Langfuse Cloud Japan is live →
DocsEvaluation workflow
DocsEvaluationEvaluation workflow

Evaluation workflow

Langfuse evaluation follows a continuous improvement loop with four jobs:

  1. Instrument -> Collect representative traces with Langfuse Observability.
  2. Annotate -> Turn traces into evaluation assets with human annotations, annotation queues, scores, and datasets.
  3. Deploy -> Validate changes before shipping with experiments, benchmarking, and CI/CD regression checks.
  4. Monitor -> Score production behavior with automated online evaluators, analyze results in Score Analytics, and feed new failures back into annotation.

Work through the loop continuously: collect traces, turn them into failure modes, validate changes against those failure modes, and use production monitoring to find the next examples to annotate.

The Continuous Evaluation/Iteration Loop

Instrument

Collect the evidence you need to evaluate your application. Start with traces that show what users asked, what your system did, and where the output came from.

Annotate

Turn raw traces into reusable evaluation assets. Annotate representative examples, name the failure modes, and convert them into datasets and score definitions.

  • Build an initial dataset from representative traces or observations. Aim for roughly 100 diverse, high-quality examples when possible.
  • Use Annotation Queues, manual scores via UI, and TEXT scores for open coding: review traces and write short notes about the first thing that went wrong.
  • Group notes into failure modes (axial coding), then convert stable categories into score types and score configs.

For a detailed walkthrough, use the error analysis guide to open-code traces, cluster failure categories, label examples, and decide which failures should become evaluators.

When you find a failure, reduce it to a reusable test case. For conversational systems, add the minimal reproduction or the N-1 turns before the failure to a dataset. Over time, your dataset becomes a regression set built from real-world behavior.

Deploy

Ship tested changes with measurable impact. Use experiments to confirm that a prompt, model, retrieval configuration, agent implementation, or evaluator variant improves quality without introducing regressions.

Experiments are useful in three common deployment workflows:

WorkflowUse experiments to
Active iterationHill climb on a prompt, model, or agent implementation while engineering a change.
BenchmarkingCompare multiple implementations on the same dataset and scoring criteria.
Releasing / deployingRun regression checks before merge or deploy so quality drops do not ship.

Monitor

Monitor production with the failure modes you already annotated. Use online evaluators to score live behavior, catch quality issues after deployment, and discover the next examples to review.

  • Turn annotated failure modes into online evaluators with LLM-as-a-Judge or custom scores via API/SDK.
  • Prefer observation-level evaluators when the failure can be judged on a specific model call, tool call, retrieval step, or final generation.
  • Use Score Analytics and custom dashboards to track distributions, trends, evaluator agreement, and regressions; when monitors reveal new patterns, send them back to annotation.

Start with a small number of high-signal LLM-as-a-Judge or custom evaluators derived from known failure modes, then expand coverage as new failures appear.

Which Langfuse feature should I use?

If you want to...Use this Langfuse feature
Capture application behaviorObservability, traces and observations
Segment traces for later reviewTags, metadata, users, sessions, environments, releases
Review examples manuallyAnnotation Queues, Scores via UI
Open Coding: capture open-ended notesTEXT scores, Annotation Queues
Axial Coding: derive failure modesScore configs, categorical/boolean scores
Create reusable test casesDatasets
Compare changes before shippingExperiments via UI, Experiments via SDK
Gate pull requests or deploysCI/CD experiments
Monitor production qualityLLM-as-a-Judge, Scores via API/SDK
Analyze evaluator resultsScore Analytics, custom dashboards

Was this page helpful?