Do I need an AI agent or just a workflow?
If the task follows rules, you need a workflow. It will be cheaper to build, cheaper to run, faster, and it will behave identically every time. You need an AI agent only when the task requires reading and interpreting language that arrives in an unpredictable shape — sorting messy inbound email, summarising a long document, drafting a reply, pulling structured facts out of free text.
Most businesses need mostly workflows with a small amount of AI at the edges. The single most common and most expensive mistake in this market right now is putting a language model where an if statement belongs.
The one-question test
Could a sufficiently detailed rule handle this? Then use a rule.
That is the whole test. Not "would AI be impressive here" but "is there genuine ambiguity that rules cannot express."
A model that is right 94% of the time is remarkable technology and completely unacceptable for posting invoices to a ledger. The same model is excellent at deciding which of six folders an email belongs in, because the cost of a mistake is that somebody drags it to the right place.
The question is never how good the model is. It is what a wrong answer costs, and how often you can tolerate one.
What actually differs
| Deterministic workflow | AI agent | |
|---|---|---|
| Behaviour | Identical every run | Varies; correct most of the time |
| Build cost | From $8,000 | From $10,000 — the extra is evaluation, not code |
| Running cost | Fractions of a cent per run | Cents per run; adds up at volume |
| Speed | Milliseconds | Seconds |
| Debugging | Read the logic, find the bug | Inspect logs, adjust prompt or retrieval, re-measure |
| Handles | Structured, predictable input | Messy language, unpredictable shape |
| Fails by | Stopping visibly | Producing something plausible and wrong |
That last row is the one that matters most and gets discussed least. A broken workflow throws an error and alerts you. A misfiring agent quietly returns a confident, wrong answer that looks exactly like a right one. Designing for that difference is most of the work in building agents responsibly.
Worked examples of each
Workflow, clearly
- A form is submitted, so create a CRM record, notify the owner, send an acknowledgement.
- An order is marked complete, so raise the invoice, code it to the right account, update the project.
- It is Monday at 7am, so pull these five numbers and post the summary to Slack.
- A payment is more than 30 days overdue, so send reminder one; at 45 days escalate to a human.
- Sync these twelve fields between the CRM and the accounting system whenever either changes.
Every one of these has a defined trigger and a defined outcome. Putting a model anywhere in them adds cost, latency and unpredictability in exchange for nothing.
Agent, genuinely
- Read an inbound email of arbitrary length and decide whether it is billing, technical, sales or spam.
- A prospect writes three paragraphs about their situation; extract company size, budget signals, timeline and use case into structured fields.
- Summarise a 60-page tender against our go/no-go checklist and quote the relevant clauses.
- Draft a reply to a routine question using our own documentation, for a person to approve.
- Turn a call transcript into decisions, owners and dated action items.
These share one property: the input is human language whose shape you cannot predict. No rule set covers it, because the space of things a person might write is unbounded.
Most real systems are both
The framing of "agent versus workflow" is slightly false, because the good design is almost always a workflow with a model doing one specific job inside it.
Take support email triage. The workflow receives the message, logs it, routes it, applies the SLA clock, notifies the owner and updates the ticket — all deterministic. One step in the middle asks a model: what is this about, how urgent does it sound, and what account does it reference? The model returns structured fields. The workflow takes over again and does something predictable with them.
That is the shape to aim for. The model handles the language; the workflow handles the consequences. If a system's diagram is mostly model calls, something has been over-engineered.
Count the steps in the process. If more than about one in five needs genuine language understanding, question the design. If none do, you do not need AI at all — and a firm telling you otherwise is selling something.
If you do use an agent
Six things that separate an agent that survives contact with production from a demo.
- Structured output, always. The model returns typed, validated fields, not prose for something downstream to parse. Output that fails validation goes to a review queue, never into your CRM.
- Confidence thresholds. Every classification carries a score. Below your threshold it routes to a person. You choose where the line sits, and you can move it once you have real numbers.
- Humans approve consequences. Anything that spends money, signs something, or sends an external message keeps an approval step unless you have explicitly decided otherwise in writing.
- Evaluate before launch. Build a test set from your real historical examples and measure accuracy against it. If nobody can tell you the accuracy number, nobody has measured it.
- Ground it in your documents. Knowledge assistants should answer from your content with citations. If the answer is not in your documents, the correct response is "I don't know."
- Log everything. Input, output and confidence for every decision, so you can audit what happened and improve on evidence rather than anecdote.
The right comparison is never "perfect versus the agent." It is "the agent versus a tired human doing the same task at 4pm on a Friday." Measure both before you launch.
Bring us the task, not the technology
Describe the work you think needs AI. We will tell you honestly whether it does, or whether a workflow at a third of the price does it better.