how-to

How to Evaluate CrewAI Agents in 2026 - Task Completion, Handoffs and Per-Agent Scoring

A practical guide to evaluating CrewAI multi-agent crews - score the crew's final output, each agent's task completion, the handoffs between them, and the tool calls, so you know which agent to fix. With the tools that fit and their trade-offs.

Published:

CrewAI gives you a crew - a set of role-playing agents that pass work down a chain to produce one deliverable. That structure is exactly what makes evaluating it harder than evaluating a single agent. A crew can hand you a wrong final answer while every agent, judged alone, looks correct - and it can hand you a right answer while one agent quietly failed and another covered for it. So you cannot evaluate a crew at one level. You score the crew’s output and each agent’s contribution, and you check the seams between them. Here is how.

Start where every eval starts - define “good”

Before any metric, write down what a successful crew run looks like in specifics. Not “the report is good” - the report covers the three required sections, cites its sources, and contains no invented figures. The definition of success is the spec your metrics have to implement, and skipping it is the number-one reason multi-agent eval projects produce numbers nobody trusts. This is the same discipline as the general how to evaluate AI agents guide - it just has more moving parts here because a crew has more places to be right or wrong.

The two levels you have to score

Crew-level is the outcome the user cares about - the final deliverable. Did the crew complete the task? Is the output correct, faithful to its sources, and safe? This is what you would score if the crew were a black box.

Agent-level is where multi-agent evaluation earns its keep. Each agent has its own assigned task, its own tool calls, and a handoff to the next agent. You score:

  • Per-agent task completion - did this agent finish its own goal, independent of the crew’s result.
  • Tool-call accuracy - did it call the right tool with the right arguments in the right order.
  • Handoff quality - was the context it passed to the next agent complete and usable.

A crew failure is almost always a handoff failure, and handoffs are invisible unless you look for them specifically. The rest of this guide is about capturing them.

Step 1: Trace the whole crew first

You cannot score what you did not capture. Instrument the crew so you get one trace with a span per agent, in execution order, showing each agent’s inputs, outputs and tool calls. Langfuse is the open-source default for this - MIT-licensed, free to self-host, framework-agnostic, and it captures the run as nested spans so the trace mirrors the crew. It also gives you datasets and human annotation queues, which you need for the calibration step later. The operational catch is that its v3 self-host is a four-service stack, so the free cloud tier is the shortcut if you would rather not run it. The trace is your source of truth - every score below attaches to a span in it, and this is the same AI agent testing foundation any agent needs.

Step 2: Score deterministically where you can

Reach for the cheapest, most reliable checks first. Tool names, parsed tool arguments, and structured-output fields can be asserted exactly - these never drift and cost nothing, so use them for every seam you can. If agent two needs a budget field from agent one, assert that the field exists and is a number at the handoff. Deterministic handoff checks catch the compounding-error class of bug before you ever call a judge.

Step 3: Score open-ended quality with a calibrated judge

For the parts with no golden string - is the final report faithful, is each agent’s reasoning sound - you need LLM-as-judge. DeepEval fits CrewAI cleanly because it is framework-agnostic - you run the crew, capture each agent’s output and the final deliverable, and assert metrics on them in a pytest-style suite you can run in CI with deepeval test run. It ships 50-plus research-backed metrics including G-Eval, faithfulness, hallucination and tool-call correctness, so you rarely build the common ones yourself. The gotcha to plan for - nearly all its metrics are LLM-as-judge, so runs take minutes not seconds and big suites rack up API bills. Cost-model the judge calls before you scale the suite.

And do not trust a judge you have not calibrated. Collect human labels on a sample using Langfuse’s annotation queues, then tune the judge rubric until it agrees with the humans at a rate you accept. The full mechanics are in the LLM-as-a-judge guide. An uncalibrated judge is a guess with a number on it.

Step 4: Compare crew versions and gate merges

Agents are non-deterministic, so one pass is not a result - run each case several times and read the distribution. When you tweak an agent’s prompt or swap its model, you need to know whether the crew got better or worse. Braintrust is the most turnkey here - its autoevals library ships working scorers, its experiments view compares runs, and its CI/CD quality gates can block a merge on a statistically significant regression. The gotcha is billing - it meters processed data in GB with no hard cap, and verbose multi-agent crews are exactly the workload that burns it fastest, so set billing alerts on day one. Wiring these into a pipeline is the job of how to run LLM regression tests.

The short version

  1. Define “good” for the crew and each agent, in specifics.
  2. Trace the whole crew in Langfuse so every score has a span to attach to.
  3. Assert deterministic checks on tool calls and handoff fields.
  4. Score open-ended quality with DeepEval’s metrics, using a judge you calibrated against humans.
  5. Compare versions and gate merges in Braintrust, reading the distribution not one lucky run.

Evaluate a crew at both levels and check the seams, and “the crew is broken” turns into “agent two’s handoff is dropping the budget field” - a bug you can actually fix. Every price and date here was read from each vendor’s own pages on 23 July 2026, and this category ships breaking changes monthly.

Frequently Asked Questions

How do you evaluate a CrewAI crew?

On two levels at once. Crew-level, you score the final deliverable against what a good result looks like - did the crew complete the task, and is the output correct and faithful to its sources. Agent-level, you score each agent's individual task, the handoff to the next agent, and the tool calls it made. A crew can produce a bad final answer while every agent looks fine in isolation, and it can produce a good answer despite one agent failing - only per-agent scoring on top of the trace tells you which. Capture the full run first, then attach scorers at both levels.

Why did my CrewAI crew fail when each agent worked?

Usually a bad handoff. Agent one produces output that is fine on its own but missing a field or framed in a way agent two cannot use, so the error compounds down the chain and surfaces as a wrong final answer. This is invisible unless you trace the crew and score the handoffs - the output one agent passes to the next. Look at the span where control moves between agents and check whether the context handed over was complete and correct. Per-agent completion scores plus handoff checks localize the failure to the exact seam.

What metrics should I use for CrewAI agents?

A layered mix. Task success rate for the crew and for each agent - did they complete their assigned goal. Tool-call accuracy - right tool, right arguments, right order. Faithfulness and correctness on the final output, usually scored by an LLM judge with a rubric. And handoff quality between agents. Use deterministic checks wherever you can assert exactly, like tool names and structured fields, because they never drift and cost nothing, and reserve LLM-as-judge for the open-ended quality that has no golden string.

Can I use DeepEval with CrewAI?

Yes. DeepEval is framework-agnostic - it evaluates test cases built from inputs and actual outputs, so you run your CrewAI crew, capture each agent's output and the final deliverable, and assert metrics on them in a pytest-style suite. It ships 50-plus research-backed metrics including G-Eval, faithfulness and tool-call correctness, and runs in CI with deepeval test run. Budget for the API bills, since nearly all its metrics are LLM-as-judge and large suites compound cost.

Explore More

Free Newsletter

Get the LLM Evals Newsletter

Platform comparisons, pricing changes and eval technique deep-dives. No spam.

Related Articles