---
title: "Why multi-agent systems fail | Coordination gap | Len P. van der Hof"
description: "Adding agents often makes a small team slower. The failure is usually coordination: lost handoffs, unreviewed output, no shared board. CHORUS names the missing protocol."
image: "https://lenvanderhof.com/media/generated/blog-hero-coordination-gap-en-v2.69166d891ab2.wide.webp"
---

[AI Systems](https://lenvanderhof.com/en/blog/category/ai-systems/) Research guide

# Why multi-agent systems fail: the coordination gap

Capability arrived in an afternoon. The protocol never did. That gap is the whole story.

Len P. van der HofPublished 18 August 20266 min read

Capability arrived. The protocol never did.

Direct answer

Most multi-agent systems fail as coordination, not as models. A 2-to-15-person team adds specialised agents faster than it adds charters, handoff packets, review gates, and a shared view of state. Org charts name reporting lines. They do not name who holds context at the boundary. CHORUS is one protocol for that gap: Charter, Handoff, Orchestrate, Review, Update, Sync. A graph of model calls is not orchestration.

## Key takeaways

- The usual failure is a missing protocol, not a weak model.
- Handoffs fail first: no packet, no owner, no review.
- A swarm demo is not a team operating system.
- Lab MAS traces fail on design, alignment, and verification seams. That is not a company-project statistic.
- CHORUS is organizational protocol. The Multi-Agent Organization is the book. This page is the failure mode.

A small team adds three agents and the week gets slower. Inbox noise goes up. Finished work goes down. Someone says the models are not good enough. Usually the models are fine. The team never installed a protocol.

## The coordination gap

Capability is cheap. A specialist [AI agent](https://lenvanderhof.com/glossary/ai-agent/) that drafts, files, or researches can be standing by evening.

Coordination is expensive. Who holds the goal at the boundary. What context travels. What must be reviewed. How the board updates. How the team sees state on Monday.

[Agent orchestration](https://lenvanderhof.com/glossary/agent-orchestration/) is that work. A graph of model calls is not. If you cannot point at the packet that crossed a boundary, you did not orchestrate. You launched.

This is why “we tried multi-agent” often means “we tried a swarm demo.” The demo can look busy. The org cannot see who owns the output.

An [agentic workflow](https://lenvanderhof.com/en/blog/agentic-workflow-vs-automation/) still needs a goal, a charter, and a ceiling. A swarm without those is the same missing protocol, only louder.

Lab systems fail on the same seams. Cemri, Pan, Jun and colleagues annotated 1,642 execution traces across seven open-source multi-agent frameworks (arXiv 2503.13657v3, NeurIPS 2025 Datasets and Benchmarks). Task-failure rates on those systems sat between 41% and 86.7%. Their taxonomy groups the misses as system design, inter-agent misalignment, and task verification: role specs ignored, history dropped, other agents’ input skipped, verification missing or wrong. That is a laboratory result on named frameworks. It is not a survey of company projects. It is a rhyme. The operator repair is still a named skill, not a new model.

## Where it breaks

Six boring breaks, in the order I see them. Each one names a missing [CHORUS](https://lenvanderhof.com/glossary/chorus/) skill.

**Charter.** Work starts because someone typed a prompt. There is no written purpose, no authority ceiling, no escalation. Output appears that no chartered role was allowed to produce. That is a shadow agent.

**Handoff.** The first agent finishes. The second starts from a chat log. Constraints die in the paste. A six-field packet would have been enough: goal, constraints, inputs, provenance, acceptance, deadline. The charter is a different artifact (seven fields). Do not merge them.

**Orchestrate.** Two workers take the same task. Nobody named the merge. Two drafts arrive. Someone pastes the nicer one. A graph of calls looked busy. Nobody owned the join.

**Review.** Output ships because it sounded right. There is no written acceptance line. The [human in the loop](https://lenvanderhof.com/glossary/human-in-the-loop/) is a spectator. Near-100% approval is not a quality system. It is review theatre.

**Update.** The world moved. The agent roster did not. Old tools, old prompts, old customer facts. Plausible answers about a world that no longer exists.

**Sync.** Standup becomes a tour of model traces. A dashboard would have done it. The meeting exists because nobody can see state. Decisions live in chat. The board is a lie.

Named failure is fixable. “Agents disappointed us” is not.

## A packet that survives the paste

Here is the difference between a thread and a handoff.

The thread says: “Can you finish the launch note? Context is above.” The second worker invents tone, audience, and what “done” means.

The packet says:

- **Goal.** One launch note for existing customers, 180–220 words, announcing the Tuesday cutover.
- **Constraints.** No pricing. No comparison to a named competitor. No promise the onboarding team has not signed.
- **Inputs.** The cutover checklist dated 12 August. The last approved customer email. The support script for the first 24 hours.
- **Provenance.** Checklist owner is ops. Email owner is the founder. Support script is the only source for “what to do if login fails.”
- **Acceptance.** A named reviewer can reject it if it invents a feature, changes the cutover time, or addresses prospects instead of customers.
- **Deadline.** Monday 16:00, so the reviewer still has an hour before send.

That is six fields. Not seven. If you cannot fill them, you are not ready to hand the work to anyone, human or agent.

The [override doctrine](https://lenvanderhof.com/glossary/override-doctrine/) sits next to the packet, not inside it. The packet says what this task is. The doctrine says what the worker may never do: spend above a ceiling, speak as the company, change production data, close a judgment you still own. Write the doctrine before the tool that can send.

## A diagnostic you can run this week

TellMissing skillFirst fixOutput no one was chartered to produceCharterWrite purpose, ceiling, escalation before the next runThe second worker starts from a chat logHandoffFill the six fields. Refuse the task if a field is emptyTwo drafts, no named mergeOrchestrateOne owner of the join. Serial or fan-in, said out loudApproval with no written checkReviewOne acceptance line the reviewer can failAnswers about last month’s productUpdateDate the roster. Kill stale tools in publicStandup is a tour of tracesSyncOne surface. Read it. Do not narrate it

Ten minutes is enough to start. List every agent that touched work last week. For each one, write the last human who accepted its output. If you cannot name that person, you found the gap.

## What CHORUS is for, and what it is not

[CHORUS](https://lenvanderhof.com/frameworks/chorus/) is a six-skill protocol: Charter, Handoff, Orchestrate, Review, Update, Sync. Charter is seven fields that turn a vague intention into a contract. Handoff is the six-field packet. Orchestrate is serial steps, fan-out, fan-in, and a named human escalation. Review is a gate against written acceptance, not a vibe check. Update sends findings back into prompts, tools, and charters. Sync is one surface, read in a short weekly ritual.

It is for teams of 2 to 15 who already mix humans and specialised agent workers.

It is not a CrewAI tutorial. It is not a graph product. It is not an org chart. It is not a music or chat brand. It is not a protocol for a 200-person platform team; that org needs a different map. A [human in the loop](https://lenvanderhof.com/glossary/human-in-the-loop/) who cannot fail the output is decoration.

[The Multi-Agent Organization](https://lenvanderhof.com/books/multi-agent-organization/) is the book. The [introduction](https://lenvanderhof.com/en/blog/the-multi-agent-organization-introduction/) teaches the six skills in full. This page is only the gap: why the team got slower, and which missing skill did it.

If you install one triangle first, install this one.

- Days 1–30. Charter every role, costliest first.
- Days 31–60. One real review gate.
- Days 61–90. One weekly sync that is not a standup tour.

Then add agents, not before. A [SENSE](https://lenvanderhof.com/frameworks/sense/) layer will not save a team that cannot hand work across a boundary. An [MCP](https://lenvanderhof.com/glossary/mcp/) contract will not save a team that has no reviewer. Fill the charter before you add the fourth agent.

## Terminology

- [CHORUS](https://lenvanderhof.com/glossary/chorus/)
- [Agent orchestration](https://lenvanderhof.com/glossary/agent-orchestration/)
- [Human in the loop](https://lenvanderhof.com/glossary/human-in-the-loop/)

## Sources

1. [CHORUS framework](https://lenvanderhof.com/frameworks/chorus/)
2. [The Multi-Agent Organization](https://lenvanderhof.com/books/multi-agent-organization/)
3. [Agent orchestration (glossary)](https://lenvanderhof.com/glossary/agent-orchestration/)
4. [Why Do Multi-Agent LLM Systems Fail?](https://arxiv.org/pdf/2503.13657v3.pdf) · Cemri, Pan, Jun, et al. (arXiv 2503.13657v3; NeurIPS 2025 Datasets and Benchmarks)

## Related essays

- [What is an AI agent?](https://lenvanderhof.com/en/blog/what-is-an-ai-agent/)
- [The Multi-Agent Organization: introduction](https://lenvanderhof.com/en/blog/the-multi-agent-organization-introduction/)
- [An agentic workflow is not an automation](https://lenvanderhof.com/en/blog/agentic-workflow-vs-automation/)
- [What is CHORUS? Coordination, not a choir](https://lenvanderhof.com/en/blog/what-is-chorus/)

## Further reading

- [CHORUS](https://lenvanderhof.com/frameworks/chorus/)
- [The Multi-Agent Organization](https://lenvanderhof.com/books/multi-agent-organization/)
- [The Multi-Agent Organization (introduction)](https://lenvanderhof.com/en/blog/the-multi-agent-organization-introduction/)
- [An agentic workflow is not an automation](https://lenvanderhof.com/en/blog/agentic-workflow-vs-automation/)
- [What is an AI agent?](https://lenvanderhof.com/en/blog/what-is-an-ai-agent/)

About the author

## [Len P. van der Hof](https://lenvanderhof.com/en/authors/len-p-van-der-hof/)

Entrepreneur, AI Innovator and Venture Builder

Len P. van der Hof builds practical AI systems, digital ventures and evidence-informed tools for founders.

```json
{
	"@context": "https://schema.org",
	"@graph": [
		{
			"@type": "Person",
			"@id": "https://lenvanderhof.com/#person",
			"name": "Len P. van der Hof",
			"alternateName": [
				"Len van der Hof",
				"L.P. van der Hof",
				"Leendert Pieter van der Hof"
			],
			"honorificSuffix": "MSc",
			"url": "https://lenvanderhof.com/",
			"image": [
				"https://lenvanderhof.com/photos/len-portrait-1.jpg",
				"https://lenvanderhof.com/photos/len-portrait-2.jpg",
				"https://lenvanderhof.com/photos/len-portrait-3.jpg",
				"https://lenvanderhof.com/photos/len-portrait-4.jpg",
				"https://lenvanderhof.com/photos/len-speaking.jpg",
				"https://lenvanderhof.com/photos/len-hero.jpg"
			],
			"jobTitle": "Entrepreneur, AI Innovator and Venture Builder",
			"description": "Len P. van der Hof is a Dutch entrepreneur and AI innovator building ReasonKit, MindSesh, Undominated.ai, the fiction imprint LPH98.lifestyle, and technology ventures through LPH98.ventures.",
			"address": {
				"@type": "PostalAddress",
				"addressLocality": "Zwijndrecht",
				"addressCountry": "NL"
			},
			"alumniOf": {
				"@type": "CollegeOrUniversity",
				"name": "Rotterdam School of Management, Erasmus University"
			},
			"knowsAbout": [
				"Artificial intelligence",
				"AI agents",
				"Agentic AI systems",
				"LLM routing",
				"SEO",
				"Generative engine optimization",
				"Answer engine optimization",
				"Venture building",
				"Founder performance",
				"Founder psychology",
				"Evidence-based decision-making"
			],
			"sameAs": [
				"https://www.linkedin.com/in/lenvanderhof/",
				"https://x.com/LenvanderHof",
				"https://www.youtube.com/channel/UCTG20buKqYYbitqqf7l3zJA",
				"https://www.instagram.com/Lenvanderhof/",
				"https://www.threads.com/@lenvanderhof",
				"https://github.com/Lenvanderhof",
				"https://huggingface.co/LPH98",
				"https://www.npmjs.com/~lenvanderhof",
				"https://www.goodreads.com/author/show/70983905.Len_P_van_der_Hof",
				"https://www.amazon.com/author/lenvanderhof",
				"https://www.bol.com/nl/nl/b/len-p-van-der-hof-msc/609879394/",
				"https://bsky.app/profile/lenvanderhof.com",
				"https://mastodon.social/@Lenvanderhof",
				"https://crates.io/users/Lenvanderhof",
				"https://cursor.com/@Lenvanderhof",
				"https://medium.com/@Lenvanderhof",
				"https://gitlab.com/Lenvanderhof",
				"https://hub.docker.com/u/lenvanderhof/",
				"https://dev.to/lenvanderhof",
				"https://www.facebook.com/Lenvanderhof",
				"https://soundcloud.com/Lenvanderhof"
			],
			"affiliation": [
				{
					"@id": "https://lenvanderhof.com/#publisher"
				},
				{
					"@id": "https://lenvanderhof.com/#mindsesh"
				},
				{
					"@id": "https://lenvanderhof.com/#lifestyle"
				}
			]
		},
		{
			"@type": "WebSite",
			"@id": "https://lenvanderhof.com/#website",
			"url": "https://lenvanderhof.com/",
			"name": "Len P. van der Hof",
			"description": "Len P. van der Hof is a Dutch entrepreneur and AI innovator building ReasonKit, MindSesh, Undominated.ai, the fiction imprint LPH98.lifestyle, and technology ventures through LPH98.ventures.",
			"inLanguage": [
				"en",
				"nl"
			],
			"publisher": {
				"@id": "https://lenvanderhof.com/#person"
			}
		},
		{
			"@type": "Organization",
			"@id": "https://lenvanderhof.com/#publisher",
			"name": "LPH98.ventures",
			"url": "https://lph98.ventures",
			"founder": {
				"@id": "https://lenvanderhof.com/#person"
			}
		},
		{
			"@type": "Organization",
			"@id": "https://lenvanderhof.com/#mindsesh",
			"name": "MindSesh",
			"url": "https://mindsesh.net",
			"founder": {
				"@id": "https://lenvanderhof.com/#person"
			}
		},
		{
			"@type": "SoftwareApplication",
			"@id": "https://lenvanderhof.com/#reasonkit",
			"name": "ReasonKit",
			"url": "https://reasonkit.sh",
			"creator": {
				"@id": "https://lenvanderhof.com/#person"
			}
		},
		{
			"@type": "SoftwareApplication",
			"@id": "https://lenvanderhof.com/#undominated",
			"name": "Undominated.ai",
			"url": "https://undominated.ai",
			"creator": {
				"@id": "https://lenvanderhof.com/#person"
			}
		},
		{
			"@type": "Organization",
			"@id": "https://lenvanderhof.com/#lifestyle",
			"name": "LPH98.lifestyle",
			"url": "https://lph98.lifestyle",
			"founder": {
				"@id": "https://lenvanderhof.com/#person"
			}
		},
		{
			"@type": "ImageObject",
			"@id": "https://lenvanderhof.com/en/blog/why-multi-agent-systems-fail/#primaryimage",
			"url": "https://lenvanderhof.com/media/generated/blog-hero-coordination-gap-en-v2.69166d891ab2.wide.webp",
			"contentUrl": "https://lenvanderhof.com/media/generated/blog-hero-coordination-gap-en-v2.69166d891ab2.wide.webp",
			"representativeOfPage": true
		},
		{
			"@type": "BreadcrumbList",
			"@id": "https://lenvanderhof.com/en/blog/why-multi-agent-systems-fail/#breadcrumb",
			"itemListElement": [
				{
					"@type": "ListItem",
					"position": 1,
					"name": "Home",
					"item": "https://lenvanderhof.com/"
				},
				{
					"@type": "ListItem",
					"position": 2,
					"name": "Blog",
					"item": "https://lenvanderhof.com/en/blog/"
				},
				{
					"@type": "ListItem",
					"position": 3,
					"name": "AI Systems",
					"item": "https://lenvanderhof.com/en/blog/category/ai-systems/"
				},
				{
					"@type": "ListItem",
					"position": 4,
					"name": "Why multi-agent systems fail: the coordination gap",
					"item": "https://lenvanderhof.com/en/blog/why-multi-agent-systems-fail/"
				}
			]
		},
		{
			"@type": "WebPage",
			"@id": "https://lenvanderhof.com/en/blog/why-multi-agent-systems-fail/#webpage",
			"url": "https://lenvanderhof.com/en/blog/why-multi-agent-systems-fail/",
			"name": "Why multi-agent systems fail: the coordination gap",
			"description": "Adding agents often makes a small team slower. The failure is usually coordination: lost handoffs, unreviewed output, no shared board. CHORUS names the missing protocol.",
			"isPartOf": {
				"@id": "https://lenvanderhof.com/#website"
			},
			"primaryImageOfPage": {
				"@id": "https://lenvanderhof.com/en/blog/why-multi-agent-systems-fail/#primaryimage"
			},
			"breadcrumb": {
				"@id": "https://lenvanderhof.com/en/blog/why-multi-agent-systems-fail/#breadcrumb"
			},
			"inLanguage": "en-GB"
		},
		{
			"@type": "BlogPosting",
			"@id": "https://lenvanderhof.com/en/blog/why-multi-agent-systems-fail/#article",
			"mainEntityOfPage": {
				"@id": "https://lenvanderhof.com/en/blog/why-multi-agent-systems-fail/#webpage"
			},
			"headline": "Why multi-agent systems fail: the coordination gap",
			"description": "Adding agents often makes a small team slower. The failure is usually coordination: lost handoffs, unreviewed output, no shared board. CHORUS names the missing protocol.",
			"datePublished": "2026-08-18T09:00:00.000Z",
			"author": {
				"@id": "https://lenvanderhof.com/#person"
			},
			"publisher": {
				"@id": "https://lenvanderhof.com/#person"
			},
			"image": [
				"https://lenvanderhof.com/media/generated/blog-hero-coordination-gap-en-v2.69166d891ab2.square.webp",
				"https://lenvanderhof.com/media/generated/blog-hero-coordination-gap-en-v2.69166d891ab2.landscape.webp",
				"https://lenvanderhof.com/media/generated/blog-hero-coordination-gap-en-v2.69166d891ab2.wide.webp"
			],
			"articleSection": "AI Systems",
			"inLanguage": "en-GB"
		}
	]
}
```
