mortar.design
Budgeting

How to present a budget to clients without exposing trade pricing

Darren Clark · September 14, 2026 · 4 min read

Every designer who runs their budget in a spreadsheet has had the moment: screen-sharing in a client meeting, scrolling to the sofa line, and realising the columns to the right of it say trade, client, and margin. Nothing has gone wrong yet. But your heart rate says the document in front of the client was never built to be in front of the client.

budget-alerts

Search this problem and you'll find plenty of advice about whether you should mark up, how much, and how to feel about it. That's a pricing conversation, and it's been had. This is the other one, the one nobody writes down: the mechanics. You've set your pricing model; now what does the client-facing version of the budget contain, what stays yours, and how do you keep the two in sync without maintaining a second spreadsheet by hand?

Two views of one budget

The clean way to think about it: there is one budget, and two legitimate views of it.

Your view carries everything: trade cost, client price, margin per item and in total, supplier terms, the works. It's a management document. It answers "is this project making money?"

The client's view carries what the client is agreeing to: the items, the client prices (or just the room totals — more on that choice below), what's approved, what's remaining against their number. It answers "where does my money stand?" — and nothing else.

Every budget dispute that starts with "but the spreadsheet said…" is really a versioning failure between those two views. Which is why the standard fixes are all bad: a second "client copy" spreadsheet drifts the day you make it; hiding columns in the master gets undone by one Excel misclick or an export that ignores hidden columns; and a PDF snapshot is safe but stale — accurate the day you sent it, misleading three weeks later.

What belongs in the client view

Whatever tool you use, the client-facing budget earns trust by being complete on its own terms:

  • Client prices only. One number per line. If a client can subtract your cost from their price anywhere in the document, the document has failed.
  • A live total against their budget. The single number they care most about, current, not as-of-last-export.
  • Status they can act on. What's proposed and waiting on them, what's approved, what's ordered. A budget that's also a to-do list gets read.
  • No supplier commercials. Your trade terms and negotiated discounts are between you and the supplier.

And one deliberate choice: item prices or totals only? Some studios show every line; others — especially on fixed-fee or spec-and-procure arrangements — show room totals and keep line pricing out of the conversation entirely. Both are defensible. What matters is that it's a decision you make per client, not a formatting accident.

There's a timing dimension to all this too — when the number should first appear, and in what shape — which we've covered separately in how to present a budget to interior design clients. This piece is about what the document shows; that one is about when.

How Mortar does it

We built this straight into how budgets and the client portal relate. Every item in Mortar carries dual pricing — trade cost and client price, markup applied per item — and the portal is rendered from an allowlist: the client's view is built from fields they're allowed to see, rather than your view with some columns switched off. There's no export step where a hidden column can leak, because the trade side never leaves the building.

portal-budget-view

Each client share has a price visibility setting with three positions:

  • Full — client prices per item, plus room and project totals.
  • Totals only — room and project totals, no line pricing.
  • Hidden — no pricing at all; the portal is selections and approvals only.

That's the item-prices-or-totals decision from above, made per client link instead of per hand-built spreadsheet. The client sees a live budget that's always current, you keep one source of truth with margin intact, and the 11pm ritual of preparing the "client version" before tomorrow's meeting stops existing.

It's also why Mortar publishes its own pricing — subscription and payment fees, including our share — in full. A tool whose pitch is "your clients should see honest, current numbers" ought to hold itself to the same standard.

If you're staying in spreadsheets for now

No judgement — most studios start there. Three rules keep it survivable:

  1. Never present the master. The client version is a separate artefact, generated fresh each time, prices-only. Ours is free: the interior design budget template has a Client View tab built exactly for this — same numbers, no trade pricing, no margin, nothing on screen you'd have to explain away.
  2. Date every client copy. "Budget as at 14 September" reframes staleness as a snapshot instead of an error.
  3. Reconcile weekly, not eventually. The gap between master and client copy only ever grows.

The spreadsheet version of this is a discipline you maintain. The software version is a setting. But either beats the version where the margin column decides to introduce itself in a meeting.

Written by Darren Clark Founder of Mortar — 25+ years building software

Last updated September 14, 2026

Ready to feel like a designer again?

Join the interior designers who stopped drowning in spreadsheets and started creating the client experiences their work deserves.

  • 14-day free trial, no credit card required
  • Set up in an afternoon — fully self-serve
  • Cancel anytime