How to price labour and products on industrial work (South Africa)
Build the number up from a rate and a markup, not from a gut feel.
Labour: workers × hours × rate × difficulty
Labour is the line most often estimated in bulk and most often wrong. Build it up instead: number of workers, hours (or minutes) each, the hourly rate for that labour type, and the difficulty factor for the conditions. A standard crew saved on an action means those labour lines seed themselves. You adjust the hours, not the whole build-up.
Products: cost, purchase quantity, markup
A product's selling price should be calculated, not typed. Record what it costs, the quantity you buy it in (per metre, per length, per kilogram), and your markup. Quotier works out the per-unit selling price and multiplies by the quantity on the line. Change the markup once and every future quote reflects it, while every already-sent quote keeps the price the client saw.
Difficulty: price the conditions once
Define the conditions you meet - confined space, elevated work, after-hours - as difficulty levels with a multiplier. Applying one scales the line's labour automatically, and optionally its products. This is how you stop giving away the hard, well-paid work by pricing it like the easy work.
Allowances: travel, standing time, accommodation
On a mine or plant job, allowances are real money. Put them on the quote as their own lines. They're included in the total and, deliberately, never scaled by a difficulty multiplier. A difficulty factor is about the work, not the drive to site.
VAT and rounding, so the PDF always adds up
Price every line to the cent, round per line, then add 15% VAT. Rounding per line (rather than once at the bottom) is what makes the line amounts on the PDF sum exactly to the total - no "the maths doesn't quite add up" phone call from the client's bookkeeper.
A worked line
Take an 85 m cable run. At a catalogue rate of R85/m the product is R7 225; apply an elevated-work factor of ×1.25 and the line is R9 031.25. Priced at bare cost, say R68/m, the same run is R5 780. That's R3 251 given away on one line by forgetting the markup and the difficulty factor. On a real job with a dozen lines, that's the difference between a job that pays and one that doesn't.