Pricing a single construction package with twelve suppliers is a five-day job. Not because writing twelve emails is hard: that takes twenty minutes. It is five days because the moment they go out, the part that actually consumes time begins — waiting, checking who has replied, writing again to the ones who have not, deciphering answers that arrive in different formats and copying them into a spreadsheet by hand so they can be compared.
A site manager spends roughly five hours a week on exactly that. Not on deciding what to buy: on chasing the information needed to decide.
We built an agent that does that work. The same twelve-supplier round now closes in four hours. This article covers how, and why the same pattern shows up in businesses that have nothing to do with a building site.
Where the time actually was
The first thing we did was not automate anything. It was to time it. And the breakdown is surprising:
- Preparing and sending the requests: minutes. It is the part everyone tries to automate first, and the one that weighs least.
- Waiting for replies: hours or days. Dead time, but time somebody has to keep an eye on.
- Chasing the ones who go quiet: this is the bulk of it. It takes remembering, knowing who, and doing it several times.
- Normalising what arrives: one price comes in the body of the email, one in an attached PDF, one with different lead times or payment terms. All of it ends up typed by hand into the same table.
The operational conclusion is an uncomfortable one: automating the sending would not have moved the needle. The bottleneck was not issuing requests, it was chasing and sorting. Any tool that only sends emails in bulk leaves the problem exactly where it was.
A form or a bulk send performs an action when you tell it to. An agent watches a state — who has replied and who has not — and acts on its own when that state does not change. The difference between those two things is, literally, the five days.
How the agent works
Four stages, and none of them needs anyone sitting in front of a screen.
1. Read the bill of quantities
The project's bill of quantities comes in exactly as the construction firm produces it, with no template agreed in advance and no fixed format. A language model identifies each material with its quantity and unit. On the project running today that is 430 line items across 13 trade categories.
2. Distribute the requests
Each material is matched against the suppliers who work that category, and the agent emails an individual request for quotation. Up to here, nothing a decent script could not do.
3. Chase
This is the stage that earns the word "agent". The system keeps the state of every request and checks who is still silent. Whoever goes quiet gets written to again. And again. Without anyone remembering, without anyone pushing it, and without the social friction of nagging: the agent does not get tired of following up and does not feel awkward doing it a third time.
4. Consolidate
Replies come in by email in whatever format each supplier prefers. The agent interprets them, normalises them and turns them into comparable rows of one table: unit price, total, lead time, payment terms. Each offer is also compared against the reference price in the bill of quantities, and anything that drifts gets flagged.
The result is a board where you can see at a glance which supplier makes sense and why. The person comes in only at the end, to do the one thing that should not be delegated: award the work.
What is running today
On a live project, in production:
- 430 line items handled, across 13 categories.
- 552 quote requests issued.
- 460 replies received and processed automatically.
- 92 price-variance alerts raised without anyone going looking for them.
That last number is the one that usually goes unnoticed and the one worth the most money. Ninety-two times the system flagged an offer falling outside the expected range. Checking that by hand, across hundreds of line items, simply does not happen: you sign, and you find the overspend at final account.
What we learned building it
The dirty work is where the value is
The eye-catching part of a project like this is the AI extraction. The part that gives the money back is the follow-up, which is technically far less glamorous: storing states, counting days, retrying. If you have to choose where to put the effort, it goes there.
You have to design for messy replies
Nobody is going to answer in the format that suits you. The agent has to cope with a loose price in the body of an email, with an attachment, or with a counter-offer that changes the terms. If the system demands tidiness from the other side, it will not get used.
The decision stays with the person
The agent does not award. It prepares the decision and serves it up, but the signature is human. This is not decorative caution: it is what makes somebody trust the thing enough to let the rest of the process run without watching it.
Why this is not about construction
Change the words and see whether it sounds familiar:
Somebody on your team sends requests to third parties, waits for replies that come back late and out of order, chases the ones who do not answer, and then copies it all into a spreadsheet to be able to compare.
That is an accountancy practice chasing documents from clients every quarter. An agency requesting assets for a campaign. A clinic confirming appointments. A procurement department in any sector. A recruitment team coordinating interviews.
The pattern is always the same, and it is recognisable by three signals:
- The work consists of waiting for information from other people, not producing it.
- Somebody has to remember to follow up, and that is the part that slips most.
- What arrives ends up copied by hand into a spreadsheet so it can be compared.
When all three are present, there is an agent waiting to be built. And the saving is not in writing the emails faster: it is in removing the supervised waiting and the manual chasing, which is where the days go.