Running a single purchase order from quote to a job-coded bill in your accounting system takes a contractor around 27 minutes of hands-on work. At 100 invoices a month, that is roughly 45 hours every month and about 22,000 dollars a year in loaded labor. Nobody sends you a bill for it. You pay it anyway.
You can tell me what a sheet of plywood costs this week. You can probably tell me what your family spent on groceries. Here is the one you cannot answer off the top of your head: what does it cost your business to buy the plywood?
Not the price on the invoice. The labor. The time your PM, your super, and your bookkeeper spend building the order, chasing the price, entering the bill, matching it, and coding it to the right job. That cost never shows up on a statement. It is baked into salaries you already pay, spread across four people, invisible by design.
So it goes unmanaged. And anything unmanaged in a construction business tends to grow.
We call it the 27-Minute Tax. It is the quiet toll on every purchase order that runs through a manual process in your accounting system. Let us put a clock on it, one stage at a time, and watch it add up.
Let us put a clock on it
Here is the full trip a purchase order takes in a typical small-shop accounting workflow, from the moment someone needs material to the moment the cost is sitting correctly against a job. Watch the running total on the right climb.
Find the item, pull a price, key in the vendor and line items, get it approved. Independent process research puts a manual purchase order at eight to twelve minutes of hands-on effort, and that is before anyone shops a second price. The super in the field cannot start it either: your accounting system may not support purchase-order creation in the mobile app, so it waits until someone is back at a desktop.
Email it to the vendor, then track it somewhere outside the system, because there is no vendor portal. A sticky note, a text thread, a spreadsheet tab. The order is now officially out the door and officially off the books until a bill arrives.
The invoice lands, often a week or more later, sometimes several. Someone opens it, reads it, and re-keys it into your accounting system. Independent accounts-payable research suggests the average invoice sits in the pipeline more than nine days before it clears. That gap is time you are blind.
Does the invoice match what you ordered? Your accounting system may only support a manual two-way check, so a person compares line by line. When a price moved or a quantity is off, this stage balloons. This is the wildcard that turns a clean order into a phone call and turns 27 minutes into closer to an hour.
Now get the cost onto the right job and the right category. Your accounting system may give you only one project tag per line and no real cost codes, so anything more detailed than that gets improvised, or skipped. Skip it and your job costs quietly drift out of true.
Clean and simple, you might do it in 13. Messy, with a discrepancy to chase, you are past 54. The typical order lands right in the middle.
Twenty-seven minutes. On one order, that is nothing. You would wave it off. Which is exactly why it never gets fixed.
Now the bill comes due
A growing shop doing real volume is not running one order. The contractors we built this for are processing 100 or more invoices a month that need to land against a job. Run the tax across that volume and the shrug stops working.
About that 40-dollar rate, because it is where a stat like this usually gets soft. Forty dollars an hour is not a wage. It is a wage plus its burden: taxes, benefits, insurance, overhead. In Alberta, a bookkeeper runs near 30 dollars an hour base before burden; add the 25 to 40 percent that construction labor typically carries and you are at 40. That is our floor, and it assumes junior admin staff are doing the work. When your project manager is the one buried in it, and in a lot of shops that is exactly who it falls to, the same 45 hours cost a good deal more.
So 22,000 dollars a year is the conservative read. It is the full-time purchaser you never hired. Or the one you did hire, sitting inside four other people's job descriptions where you cannot see them.
"It has saved us the cost of a full-time purchaser, reduced admin time on invoice entry, and ensured nothing slips through the cracks."
Josh Paul, Operations Manager, Complete Power Solutions (Edmonton)
The estimated hands-on time to carry one purchase order from quote to a job-coded bill in an accounting system, across five stages: build, send, enter, match, and code.
Typical 27 minutes. Best case 13. Worst case past 54. At 100 orders a month, roughly 45 hours and about 22,000 dollars a year.
This is our figure, and we want to be straight about how we got it, because a number you cannot defend is a number that gets picked apart. There is no published study that clocks this exact construction accounting workflow, so we modeled it: we broke the job into its five real stages and timed each one against independent procurement and accounts-payable research, then built the total from the parts.
- The build stage is anchored to independent ROI research putting a manual PO at eight to twelve minutes of effort.
- The enter and match stages lean on Ardent Partners' 2025 accounts-payable benchmarks: 9.40 dollars to process one invoice and a 9.2-day average cycle time.
- The wide 13-to-54 spread mirrors APQC's 2026 finding that the cost to process a single purchase order runs from about 14 dollars to over 54 dollars depending on how clean the process is.
- The loaded labor rate is built from Government of Alberta and Government of Canada wage data plus standard construction labor burden.
The result is an estimate, not a law of physics. But every stage is sourced, the math is transparent, and the sources are listed at the end. Use it as ours.
Where the tax actually hides
Notice something about those five stages. The time is not really lost to typing. It is lost to the seams. The order leaves the system when you email it. The cost disappears until a bill shows up a week later. The match is done by eye. The job coding is improvised. Every leak is a place where the work leaves one person's hands and has to be picked back up by another, and picking it back up is where the minutes go.
That is the part an accounting system was never built to close, because it records what happened rather than running the procurement process. It records the result. It does not run the buying.
"QuoteToMe has cut my PO creation time by at least half."
Ryan Puszey, Site Superintendent, Buttcon (Calgary)
Common questions
How long does it take to process a purchase order in an accounting system?
For a construction contractor coding costs to jobs, a full purchase order from creation through to a matched, job-coded bill takes an estimated 27 minutes of hands-on work in a typical case. A clean order with no discrepancies can move in about 13 minutes; one with a price or quantity mismatch to chase can pass 54.
Why is it so slow?
The time is lost in the seams of the workflow, not the typing. Your accounting system may have no mobile PO creation, no vendor portal, only manual two-way bill matching, and no real cost codes beyond a single project tag. Each gap forces a handoff, and handoffs are where the minutes go.
What does that cost a year?
At 100 invoices a month, 27 minutes each works out to about 45 hours a month, or roughly 22,000 dollars a year at a 40-dollar fully loaded labor rate. That figure climbs when higher-paid staff such as project managers are the ones doing the work.
