Bulk pricing is real, and so is the cost of a compound full of material you cannot use for three months. The difference between the two is a delivery schedule.

Add wastage deliberately, not generously

Every trade has a working allowance, and rounding up "to be safe" on all of them at once is how a budget quietly grows by a tenth:

  • Floor and wall tiles: 10% on a simple rectangular room, 12–15% where there are diagonal laying, many cuts, or small rooms.

  • Blocks: around 5%, mostly breakage in handling and transport.

  • Reinforcement: depends on the bar schedule and stock lengths, not on a percentage. Take the cutting list to the supplier.

  • Cement: order to the pour, not to the project — it is the one material that degrades in storage.

Phase the delivery, fix the price

The useful negotiation is not "how much for everything" but "what price if I commit to everything and take it in three drops". You keep the volume price, the supplier keeps a confirmed order, and your site holds only what the next fortnight needs.

Get the schedule in the order itself: quantities per drop, dates, and what happens if a drop slips. A delivery that arrives a month early is a storage cost you agreed to without noticing.

Let storage set the limit

Before confirming any quantity, walk the site and answer three things: where it goes, what covers it, and who moves it. Material stored badly is material bought twice — and cement, tiles and timber all have shorter shelf lives on a wet site than anyone budgets for.

Keep a named surplus

Deliberately keep a small, labelled surplus of anything that must match later: tiles from the same batch, a bundle of the roof's own screws, a litre of the final paint. Everything else, order to the measurement.