Field note progress0%
← All field notes

Evaluation / 5 min

How to evaluate AI agents in production

Evaluate production agents with outcome metrics, behavioral signals, cohort analysis and sampled human review without confusing an LLM judge with ground truth.

Production evaluation asks whether an agent works for real users under real conditions. It combines direct outcomes, deterministic checks, model-based evaluation, behavioral signals and human review. Each source has a different confidence level.

Start with the decision

Do not begin by collecting scores. Begin with the decision the team needs to make: ship a model change, fix a recurring failure, expand a capability, investigate one cohort or decide whether an MCP tool is reliable enough for a workflow.

That decision determines the population, time window, outcome and evidence required.

Use an evidence hierarchy

EvidenceBest useMain limitation
Verified business outcomeTask completion and valueNot available for every intent
Deterministic checkStructured correctness, policy and tool stateCovers only specified rules
Human reviewNuance and disputed casesSlow and subject to reviewer variation
LLM evaluatorScalable quality estimatesModel bias, calibration and prompt sensitivity
Behavioral signalFrustration, looping, drift, abandonmentUsually evidence of risk, not ground truth alone
Technical statusAvailability and execution healthDoes not establish user success

Prefer the strongest available evidence. Keep unknown outcomes unknown. Never relabel missing feedback as positive feedback.

Build a representative evaluation population

Offline test sets are valuable for regressions and known edge cases. Production evaluation adds the workflows nobody predicted. Sample across common intents, high-value tasks, long sessions, low-frequency failures, new users, repeat users, languages, plans and releases.

Record the denominator. "Twelve bad sessions" means something different out of twenty sessions than out of two hundred thousand.

Calibrate evaluators against people

If you use an LLM judge, create a reviewed set with clear rubrics. Measure agreement by intent and failure type, not only overall. Inspect false positives and false negatives. Version the evaluator prompt and model just like application code.

Use model-based evaluation to prioritize review, not to make irreversible decisions without evidence.

Evaluate complete trajectories

Agents act across turns and tools. Score the complete path when the task depends on previous constraints or external actions. A final answer may look correct while the required tool never ran. A tool may fail once, recover, and still produce a successful outcome.

For MCP workflows, evaluate the user intent, tool path, call results, loop count and final outcome together.

Monitor behavioral quality continuously

Watch for changes in issue-free sessions, explicit negative feedback, repeated requests, abandonment, unsupported completion claims, drift and cohort-level gaps. Link each aggregate to examples so the team can distinguish a real pattern from detector noise.

Verify changes after deployment

Attach release, model, prompt and experiment identifiers to sessions. Compare matched production populations and inspect exact examples on both sides. Report confidence limits or at least denominators. Check whether telemetry coverage changed before crediting the release.

A defensible production scorecard

  1. Task outcome rate by important intent
  2. Issue-free session rate with a visible denominator
  3. Quality and safety evaluator results, with calibration notes
  4. Explicit feedback and abandonment
  5. Tool-call success, latency, retries and outcome coverage
  6. Results by user cohort, environment and release
  7. Human-reviewed examples for the most consequential decisions

Flowlines connects these operating questions to production sessions. It does not replace eval suites or human judgment. It makes the unreviewed population visible and gives evaluators a path back to evidence.

Read the monitoring framework or compare production releases.

Worked example: compare two releases without hiding unknowns

Use this synthetic evaluation sheet for one intent, one environment and comparable user cohorts:

WindowEligible sessionsKnown outcomesCompletedCompletion among known
Before1201008080%
After1251008888%

The observed difference is eight percentage points. Outcome coverage is 83.3% before and 80% after. Do not report the result as “the release improved success by eight points” without investigating why outcome coverage fell and whether the populations are comparable.

Sample both successful and unsuccessful sessions from each window. Include unknown outcomes as their own stratum. Otherwise the review systematically excludes the sessions your telemetry understands least.

Define a reviewer rubric

For a support agent, ask reviewers three separate questions:

  1. Did the agent address the original request?
  2. Was a required external action confirmed by its tool result?
  3. Did the final answer accurately describe completion, failure or remaining work?

Store each answer separately with a short rationale and session reference. A correct explanation of a denied refund can pass answer quality while the requested refund remains uncompleted. Collapsing these into one score hides an important product decision.

Calibrate automated judgments

Build a small, consented review set with straightforward successes, hard failures, partial outcomes and ambiguous examples. Have two reviewers independently label it and resolve disagreements. Compare any automated evaluator against this set before expanding coverage.

Inspect false positives and false negatives by intent, not only the average agreement rate. A judge that misses unsupported completion claims is not suitable for a refund workflow even if it scores well on polite responses. Version the rubric, evaluator prompt and model so future changes can be explained.

Decide what would block the release

Set the decision rule before looking at the result. For example, a new unauthorized action is a blocker, while a small movement in average response quality requires more review. Choose sample requirements based on risk and expected effect size; there is no single sample count that proves every release safe.

For an observational comparison, use cautious language: “completion was higher in the reviewed window.” A randomized comparison can support stronger causal conclusions only if assignment, logging and analysis are valid. Neither a green chart nor a high LLM-judge score replaces those checks.

Compare release evidence and review why offline evals are not enough.

Last reviewed Sep 7, 2026

Keep reading

Guide

How to monitor AI agents in production

Engineering

MCP server observability: a practical OpenTelemetry guide

Engineering

How to debug AI agents in production

Start free

Apply behavioral observability to your production agent.