A workflow runs a fixed set of steps that you decide in advance. An AI agent gets a goal and some tools, and decides its own steps as it goes. Most business automations should be workflows, with an AI model called in for the one or two steps that need judgment. An agent is worth it when people need to talk to it in plain language, or when the work needs a model to choose between many tools.
That's my answer after building automations for clients since 2020, and most people don't expect it. Everyone wants an AI agent right now. Almost nobody needs one.
This post is part of my guide to AI automation for small business.
The difference between an AI agent and a workflow
A workflow works like a recipe: the same steps in the same order on every run. Some steps are plain code (copy this data into a spreadsheet, send this email) and some can call an AI model (read this customer message and decide which department it belongs to). You know exactly what will happen, because you wrote the steps.
An agent is an AI model with access to tools, like searching the web or calling your other software. You give it a goal, and it decides which tools to use and in what order, looping until it thinks the job is done. Every run can take a different path.
| Workflow | AI agent | |
|---|---|---|
| Who decides the steps | You, when it's built | The AI model, on every run |
| Same input, same result? | Yes, for the plain-code steps | Not guaranteed |
| Cost per run | Close to nothing, plus any AI steps | AI model usage at every step |
| How it fails | At a known step you can find in the logs | It can quietly do the wrong thing |
| Best for | Repetitive work with known steps | Open-ended requests, many tools to pick from |
If you want the basics of how AI models and agents fit together, I explain them in LLMs, RAG and AI agents, the simplest explanation.
Why AI agents disappoint
Agents are powerful, and I use AI every day. But they have problems that matter a lot more in a business than in a demo.
AI models make things up. It happens less with every new model, but it's part of how they work and nobody has removed it. Send the same prompt twice and you can get two different answers. An agent that picks its tools with that same model will sometimes pick the wrong one.
The result is that somebody has to watch it. If a person has to check every result an agent produces, all you've done is swap one kind of work for another. In a 2024 study by the Upwork Research Institute, 77% of employees who used AI said it had added to their workload, and I'm not surprised.
Then there's the bill. An agent pays for AI model usage on every step of every run, and frontier models are expensive. A plain-code step costs close to nothing however many times it runs.
The math of chaining agents
A lot of agent setups chain several agents together, so the output of one becomes the input of the next. One researches a lead and the next drafts an email to them, and so on down the line.
Say each agent gets its step right 90% of the time, which is generous. The chance that the whole chain gets it right drops with every agent you add:
| Agents in the chain | Chance the whole run is right |
|---|---|
| 1 | 90% |
| 2 | 81% |
| 3 | 73% |
| 4 | 66% |
| 5 | 59% |
| 7 | 48% |
By the seventh agent you're below 50%, so you could flip a coin instead. And one bad step early on gets passed down the chain, so the agents after it build on a mistake. I go through this in more detail in AI agents are overrated.
When an agent is the right call
There are two situations where I'd build an agent.
The first is when people need to ask open-ended questions in plain language and still get work done. I built an AI coach into Jumprope Tracker, my jump rope fitness app, and it's an agent for exactly this reason. Users ask it anything about their training, and it can read their workout history and act on it, like updating a goal or logging a workout. Nobody could write a fixed workflow for every question a person might ask. I explain how it works in how my cardio AI agent works.
The second is when the work has many moving parts and a model has to choose the right tool for each one. If the steps really do change from one run to the next, a fixed workflow can't follow them.
If your automation doesn't fit either of those, you probably want a workflow.
What I build instead
Most of what I build for clients is a workflow that's mostly plain code, with an AI model called only for the steps that need real thinking. In my experience about 80% of any workflow can be plain code, and only 10 to 20% needs an AI model.
The trick is that I still use AI heavily, to write the code. An AI coding tool writes the automation once, and then that code runs thousands of times, the same way every time, without spending anything on AI. If a bug turns up, the AI fixes it and writes a test so it can't come back.
When a client's process is still vague, I'll sometimes start with an AI model doing most of the steps. After 10 or 20 runs, it becomes clear what each step actually involves, and I replace those steps with code one by one. A lot of what looks like reasoning turns out to be simple if-else rules in disguise.
Browser work is a good example. When I need to automate a task on a website, I let an AI work out the steps once. Then I have it write a script that repeats those exact steps without any AI. I do a lot of web scraping this way: the scraping itself is plain code, and an AI only comes in afterwards if I want the saved data analyzed. More on this in AI agents are just hype, focus on reliability.
Sometimes the AI step disappears completely. The quotation app I built for Mastersealer has no AI in it at all. The process was simple enough for plain code, and I didn't want a model anywhere near the numbers on a customer's quote. It saves them more than 10 hours a week.
If you do use an agent, fence it in
When an agent is the right tool, I put limits around it that don't depend on the agent behaving.
Those limits are written in code. The agent can't make permanent changes to your database by itself, for example, because the code doesn't let it, whatever the agent decides. An agent without protections like that is a ticking time bomb, as I put it in build deterministic protections into your workflows.
For anything sensitive, a person approves the action before it happens. The agent does the work, and a human makes the final call on anything that reaches a customer or can't be undone. I cover this in how to make AI automations reliable.
Questions to ask before you pay for an agent
If someone is pitching you an AI agent, ask them these first:
- Do the steps really change every time, or could someone write them down?
- Does a person need to talk to it in plain language?
- What happens when it gets something wrong, and how would you find out?
- Who checks its work, and how long does that take?
If the steps can be written down and nobody needs to chat with it, you want a workflow. It'll be cheaper to run and easier to trust. I also explain why not everything needs to be an AI agent.
If you're not sure which one fits your business, start with what to automate first, or look at what AI automation costs to see how the choice affects your running costs. And if you'd like me to build it, here's how I work.

