# Sub-agents

MAIA is a coordinated system of agents. The main agent runs the conversation, and when a question needs research on every row, it hands the tasks to a sub-agent. Hundreds run at once, in the background, and none of them holds up the main agent.

Updated: 2026-09-30. Source: https://maia-analytics.com/docs/capabilities/sub-agents

## One conversation, many researchers

You talk to one agent. Behind it is a system. When your objective needs a fact the data does not hold, for every place on a list, the main agent does not research the list itself. It writes the question once, hands the tasks to a sub-agent, and goes on with the conversation.

Sub-agents are the main agent's research tool. Each takes one row and one question, goes as deep as that row needs, and returns an answer with the evidence for it. Hundreds run at once, and their work lands in the table as it finishes.

## Built for the job

MAIA's sub-agents are not a general chatbot pointed at a row. We built them for this work and fine-tuned them on it, so each one knows how to read a parcel record, a company filing, or an overhead image, and when to stop. They are token-efficient by design: a sub-agent spends what the row needs and no more. That is what makes research on ten thousand rows practical, in time and in credits, and you will not find it elsewhere.

## What gets delegated

Anything that has to be found out about one place at a time.

| The question | What the sub-agent does |
| --- | --- |
| Is this roof ready for solar? | Reads the overhead image of that roof |
| Does the owner occupy this building? | Compares the owner with the occupant, in the records and on the web |
| Who runs this business, and how do I reach them? | Resolves the entity and finds the person |
| Has this company published an ESG commitment? | Searches the web and reads what it finds |

The main agent phrases the question, tests it on a few rows, and corrects it before it dispatches the rest. The kinds of question MAIA can research are on [Enrichments](https://maia-analytics.com/docs/enrichments/overview).

## What comes back

Every sub-agent returns the same three things, in one cell.

- **A value**, typed as yes or no, a number, a category, a link, or text.
- **The reasoning**, in one or two sentences that lead with the finding.
- **The sources** the answer rests on.

When a sub-agent finds nothing it can support, it says what it checked and returns no value. The cell reads **Unavailable**. It never fills the gap with a guess.

![Four enrichment columns side by side: Owner Residential Mailing Address, Single Tenant Facility, Public ESG Commitment, and Roof Solar Readiness. Cells read Enrich, Unavailable, True, False, and Excellent.](https://maia-analytics.com/product-shots/docs/table-mixed-cells@2x.png)

Four questions, answered row by row. Unavailable is where nothing supported an answer.

## Nothing waits on them

Sub-agents run on MAIA's servers, in parallel, and the main agent does not block on them. While rows fill in you can keep talking to it, open the map, or close the project and come back. The rows are still there, and so is the answer.

The one thing that waits is the main agent's answer. It reads the finished cells and checks the result before it quotes a value. See [Main agent](https://maia-analytics.com/docs/capabilities/main-agent).

## What MAIA checks

An answer from web research is screened before it is saved. One with no research behind it is rejected: the cell reads **Unavailable** and the row is not charged. An honest "could not determine" passes. The screen is for research that was never done, not for answers you would disagree with.

## Limits

- **No automatic retry.** A run skips Unavailable rows. Run them again with **Re-run unavailable rows** in the column menu, which spends credits.
- **Each question has a research budget.** A sub-agent stops when it reaches it, so a hard row comes back Unavailable rather than running on.

## Related

- [Run an enrichment](https://maia-analytics.com/docs/enrichments/run-an-enrichment) covers how a run is sized and how you start one.
- [Enrichments](https://maia-analytics.com/docs/enrichments/overview) covers what a researched column is.
