← Back to blog

I ran my construction accruals off WhatsApp, until live capture fixed that

Your construction accrual is only as honest as the three records behind it: docket, site diary, goods received — captured live, not rebuilt at month-end.

Cameron Signorini

Early in my career, my cost tracking ran on WhatsApp.

Someone on site would type out the day's labour, plant and materials on a phone and send it through. I'd review it on my laptop. The job was to turn that log into money: separate my internal costs from external suppliers, then put a rate against every line — revenue or cost. That part was on me to work out. Excel helped. It didn't change the fact that every single day of works demanded a manual reconciliation.

Here's what took me a while to see. Every month I was really rebuilding one number — the accrual: the honest statement of what the job had cost but hadn't been invoiced yet. And that number doesn't stand on one record. It stands on three. On most jobs all three are reconstructed after the fact — off messages, memory, and a spreadsheet that's only as honest as the last person who touched it.

A true construction accrual comes down to capturing those three records as the work happens, not rebuilding them at month-end. Get that right and the rest of your cost tracking takes care of itself.

The three records behind your construction accrual

The docket — the record of work, whichever way the money runs

A docket records the same thing wherever you sit: a crew, their hours, their plant, the work done that day. The mistake is thinking it only points one way.

When a subcontractor sends you their docket, it's a cost — the basis of what you'll owe them. When you raise your own docket and claim up the chain, that same record is revenue — the basis of what you get paid. One document, opposite sides of the ledger, depending on where you stand in the contract. On a real job you're both at once: claiming up while you're paying down.

The problem is never that the work didn't happen. It's that the record arrives late, unpriced, and unsigned. A docket with no rate against it is just a story about a day. You can't accrue it, you can't claim it, and three weeks later you're arguing about hours nobody wrote down. (I've covered the claim side in substantiation is revenue — every unbacked line is revenue you don't collect.)

Priced and signed on the day, a docket is a number you can stand behind — whichever direction it's pointing. Reconstructed at month-end, it's a guess with a signature missing.

The site diary — what your own crews cost you

Where a docket can come from anyone in the chain, the site diary is the record of what your own forces did — your crews, your plant, your day.

On a self-perform job, the diary is the only thing standing between your cost report and a number built on memory. Nobody invoices you for your own labour, so if you don't capture it as it happens, it quietly disappears from the cost picture — right up until payroll runs and the money's gone anyway. It's a confidential record, it's yours, and it's the half of the cost story that has no paper trail unless you make one.

And it isn't only a cost. The same own-forces work is revenue you can claim up the chain — the diary has two sides.

Two records, one accrual — the work done by others and the work you did yourself. Miss either and the number's wrong.

Goods received — why you accrue the delivery, not the order

The third record is the one people get backwards, so it's worth being precise.

A purchase order is fundamental — but a PO is a commitment, not a cost. It's money you've promised to spend, not money you've spent. You don't accrue the PO. You accrue what's been received against it.

This is what that looks like in tectm. You raise the PO against a supplier, code every line to a cost code and — if you're running a program — a program activity, then issue it. From there, each load that turns up gets recorded as a delivery against the order:

A tectm purchase order for 600m of DN450 drainage pipe, coded to cost code 03-200 Stormwater Drainage and program activity Drainage Zone B, showing three logged deliveries totalling $43,200 received against $96,000 committed.
One PO, three deliveries logged against it: $43,200 received of $96,000 committed — and it's the received figure that belongs in the accrual.

That $96,000 sat as committed the moment the PO issued. But only the $43,200 that's actually turned up counts as cost — and as each load lands, that value moves out of committed and into actual on cost code 03-200, on its own. No double-count, no month-end keying, and not an invoice in sight yet.

$96k

Ordered

The PO — a commitment, not a cost

$43.2k

Received

270m across 3 deliveries — what you accrue

$0

Invoiced

Supplier bills next month — the cost is still real

Illustrative numbers — your job will differ. Off a WhatsApp log, nobody's tracking partial deliveries against open orders — which is exactly why the materials line ends up the softest number in the whole accrual.

The number was just there

That changed in my most recent role. Live capture was built into the commercial framework — dockets priced on the day, the diary logged as the crews worked, deliveries booked in against their POs as they landed. What it did was stop the accrual from being a reconciliation at all.

Your accrual is only as honest as the three records underneath it.

The whole lesson

The three records stopped being three end-of-month rebuilds and became one running total. The number was just there. A forecast is only as good as the data feeding it — and a confident number instead of a blanket estimate, in this industry, is a superpower.

There's no single right way to run a job

Here's what nobody admits: there's no fixed, correct method of construction. One company runs everything through the site diary and barely raises a docket. The next lives and dies by docket capture and treats the diary as an afterthought. A third splits it down the middle. None of them is wrong — it's just how they work.

The trap is buying a tool that's already decided for you — one that only does dockets, or only does diaries, or assumes you're forever the payer or forever the claimant. The day your job stops matching its opinion, you're back in Excel.

Where tectm fits

The gap between a WhatsApp log and a live record is a big part of why I built tectm — but the idea underneath it matters more: tectm doesn't impose a method. Capture work as a docket or in the diary, treat a record as cost or as revenue, claim up while you pay down — it bends to how you actually run the job, not the other way round. That flexibility is the foundation, not a feature.

  • Dockets are priced and signed at capture — as cost or as revenue — contract-aware rates on the day the work happened, charged to a code. Owe it to a subbie or claim it up the chain, the backing exists the moment the work does.
  • The site diary captures your own forces — cost and revenue — your internal works logged as the crews go, rated on both sides: what the day costs you, and what you can claim for it. That dual record is something I built, not a bolt-on — your own labour and plant finally show up on both halves of the ledger instead of vanishing from the cost report.
  • Goods received are booked against the PO — so the accrual counts what landed, not what was ordered, and your committed-vs-incurred position is live, not a month-end guess.

Three records, captured once, as the work happens — and the accrual stops being something you build and becomes something you can just read.