← All posts
How to

How to Track Project Budget vs Actuals (and Protect Margin)

Know if a project is making money before it ends. Track budget against actual spend room by room.

7 min read

Here's a truth most studios don't want to say out loud: you often don't know if a project made money until it's over. The client has moved in, the last invoice is paid, and only then, when you sit down to tally what you actually spent versus what you quoted, do you find out the master bedroom ate your margin alive.

That's a terrible way to run a business. By the time the project ends, every decision that leaked money is already made. You can't go back and un-order that imported wallpaper, or un-pay the carpenter for the rework.

The fix isn't complicated. It's just discipline plus a place to see the numbers. Track your budget against actual spend while the project is running, room by room, and you'll catch the leak while you can still do something about it.

Let me walk you through how to actually do this.

Why "we'll check the numbers later" always costs you

Interior and architecture projects are slow-motion cash machines. Money goes out over weeks and months, carpenter advances, tile deposits, transport, that one custom light the client fell in love with, site labour, a designer's time. It comes in over milestones. Somewhere in that gap, margin quietly disappears.

The classic ways it vanishes:

  • The client keeps adding "small" changes and nobody re-quotes them
  • Procurement pays a vendor more than the quoted rate and it slips through
  • A material gets ordered twice, or the wrong quantity
  • Site rework because a spec was unclear
  • Freight and wastage nobody budgeted for

None of these feel like a disaster on the day. A ₹4,000 overage here, a ₹12,000 change there. Add them across a ₹15 lakh project and you've quietly handed back an entire month's profit. I wrote about this in detail in 7 Places Your Design Studio Quietly Leaks Margin, the leaks are almost always small, boring, and invisible until you add them up.

The only real defence is visibility while the work is live. Not a post-mortem. A live scoreboard.

The core idea: budget vs actuals, room by room

Every studio already has half the answer. You quoted the job, that quote is your budget. What's missing is the other half: what you actually spent, tracked as it happens, mapped against that same budget.

Two columns. Budget. Actual. The gap between them is your margin health.

But here's the part most people get wrong, they track it at the project level. "Project budget ₹18 lakh, spent ₹16.2 lakh so far." That number is useless. It hides everything. You can be dead-on overall and still be bleeding in the kitchen while you over-saved on the living room.

Track it room by room. Kitchen budget vs kitchen actual. Master bedroom budget vs master bedroom actual. That's where the truth lives, because that's how you designed the project and how you buy for it.

If your specs are already broken up room by room, and they should be, this becomes easy. That's exactly why I bang on about building room-by-room FF&E specs clients understand. The same structure that makes your specs clear also makes your cost tracking possible. One structure, two jobs.

Step 1: Turn your quote into a real budget

Your quote is a promise about money. Break it down the way you'll actually spend it:

  • By room or zone (kitchen, master bed, living, common areas)
  • Within each room, by category, furniture, finishes, lighting, labour, soft furnishings
  • Each line with a quantity, a rate, and a budgeted total

This is your baseline. Lock it. When the project starts, this is the number every actual gets compared against. If your quote lives in a spreadsheet that gets overwritten every time you tweak a number, you've already lost your baseline. Freeze the approved version.

Step 2: Capture actual spend the moment it happens

This is where most studios fall down. The spending is real and continuous, but the recording is lazy and late. Bills pile up in a WhatsApp group, a folder, someone's wallet. Nobody enters them until month-end, and by then no one remembers what half of them were for.

Capture spend at the point of decision. Every purchase order you raise is a committed cost, that's spend, even before the money leaves your account. Every vendor bill, every labour payment, every transport charge gets tagged to a room and a category the day it happens.

The magic word here is "committed." Your real risk isn't what you've paid, it's what you've promised to pay. A PO you raised last week for imported hardware is already money gone, whether the invoice has landed or not. If you only track paid bills, you're always looking at a stale, too-optimistic number. Track committed cost and you see the wall before you hit it.

This is exactly why procurement and budgeting have to talk to each other. When your POs and deliveries live in the same system as your budget, every PO instantly updates your actuals. I broke down that whole flow in how to run procurement from PO to delivery without chaos, the same PO that keeps your vendor honest is the one that keeps your budget honest.

Step 3: Watch the gap, not just the totals

Now you've got budget and actuals side by side, per room. Read them like a doctor reads a chart. For each room, three things matter:

  • How much of the budget is already committed? If the kitchen is 90% spent and cabinetry hasn't even started, you have a problem today.
  • Which categories are over? Finishes almost always drift. Lighting creeps. Find out which line is the culprit.
  • What's still to come? Committed plus estimated-remaining tells you where you'll actually land, not just where you are.

The number I care about most: projected final cost versus budget, per room. That's the early warning. If the master bedroom is trending 15% over with three weeks of work left, you know now, while you can still swap a finish, renegotiate a rate, or go back to the client with an honest change order.

Step 4: Every change becomes a re-quote, not a gift

Here's the single biggest margin killer in Indian studios: scope creep that never gets billed. The client asks for a "small change." You say yes because the relationship matters. You never re-quote it. You just absorb it.

Do that ten times a project and you've gifted away your profit out of politeness.

The discipline: every change to the spec is a change to the budget and a change to the price. Same moment. Client wants a different marble? New rate, new line, new approval. Not a favour, a documented change. When your quote, your specs, and your invoicing are one connected thing, this stops being awkward and starts being normal. It's just how you work. I go deeper on the mindset in how to protect your margin on every design project, but the mechanics come down to this: never let a spec change happen without a money change happening too.

Step 5: Close the loop at invoicing

Budget-vs-actuals isn't just a cost tool, it feeds your billing. When you invoice against milestones, you should be able to see, for that milestone, what you budgeted and what it actually cost. That tells you the margin on that slice before you send the bill, not after.

And when the numbers live together, turning an approved quote or milestone into a proper GST invoice with the right HSN codes and tax is a two-minute job, not a re-typing exercise. That's the workflow I laid out in turning a quote into a GST invoice in minutes. The through-line across all of this: one set of numbers, reused everywhere, from quote to spec to PO to invoice, never re-entered, never out of sync.

What this looks like when it's actually working

Picture your Tuesday. You open one screen. Six active projects. Each one shows a simple health signal per room, green where you're on budget, amber where you're drifting, red where you're over. You click into the amber master bedroom. Finishes are 20% over because the client upgraded the flooring three weeks ago and nobody raised a change order. You raise it now. You bill it now. Margin protected.

No spreadsheet archaeology. No waiting for month-end. No nasty surprise at project close. That's the whole point, move the moment of knowing from "after it's too late" to "while you can still act."

The honest bit

You can absolutely do all of this in spreadsheets. Plenty of good studios run on Excel and sheer willpower, and if that's you, at least start today: one sheet, budget column, actual column, split by room, updated the day money moves. That alone will change how you see your projects.

But spreadsheets rot. They get out of sync with your POs, your specs, and your invoices. Someone overwrites the baseline. The formulas break. And nobody updates them at 9 PM on site.

That's the exact problem Designa solves, one connected workspace where your quote becomes your budget, your POs and bills flow into actuals automatically, your specs stay room-by-room, and your GST invoices come straight off the same numbers. You see budget vs actual per room without maintaining a single formula.

One flat founding price: ₹2,299 + GST per year for the whole studio, up to 10 members, unlimited free client logins, done-for-you onboarding and data migration, 7-day money-back guarantee.

Stop finding out your margin after the project ends. See it live, room by room, while you can still protect it. Poke around the live demo at https://demo.designa.work, and when you're ready to run your studio on real numbers, grab the founding offer at https://go.designa.work.

Run your whole studio on Designa

One flat founding price for your whole team, every module included, with a 7 day money back guarantee. See exactly how it works, then get started today.