The critical path, explained on a Bengaluru villa (and why your Excel plan hides it)
In one week on a Whitefield villa site, three things went wrong. The tile vendor pushed delivery by four days. It rained for two. And the structural consultant sat on an RFI about the staircase for five. The owner asked the obvious question: “So how late are we?”The PM's honest answer — after an evening with the Excel sheet — was “I'm not sure.”
The right answer was: five days late, because of the staircase RFI, and only that.The tiles and the rain cost nothing. Knowing which delay matters — and which ones are free — is exactly what the critical path method (CPM) computes. Here's how it works, with no textbook notation.
Every schedule is a chain of promises
Footing can't start before excavation ends. Columns can't start before footing cures. The slab needs the columns. Write those dependencies down for a whole villa and you get a network of chains running from “start” to “handover.” Some chains are long, some short. The longest chain is the critical path — it alone decides the finish date. Delay any task on it by a day, and handover moves by a day. Delay a task off it, and (up to a point) nothing happens.
That “up to a point” has a name: float. A task with 4 days of float can slip 4 days before it starts hurting. A task with 0 days of float is the critical path.
The villa, worked through
Take the structure phase of that villa, with working-day durations:
- Excavation — 6 days → Footing & PCC — 5 days → Columns — 8 days → Slab shuttering — 6 days → Slab cast (milestone)
- In parallel: Plumbing rough-in — 4 days, needed only before the slab cast
- Also in parallel: the staircase detail — consultant RFI, then 3 days of steel work, needed before the slab cast
The long chain (excavation → footing → columns → shuttering) adds to 25 working days. Plumbing needs 4 of those 25 — it has roughly 21 days of float. The staircase chain looked harmless too, until the RFI sat unanswered for five days: its float ran out, it becamethe longest chain, and the slab cast — and everything after it — moved.
The critical path is not fixed. Every delay re-runs the race, and yesterday's harmless task can be today's bottleneck. That's why a plan drawn once in January is fiction by March.
Why the Excel sheet hides this
A spreadsheet stores dates, not dependencies. When the tile vendor slips, someone edits a cell — and every downstream date silently becomes wrong, with no way to tell which ones. Nobody re-counts the chains by hand at 9pm on a Tuesday. So every delay gets treated as equally urgent, the PM spends goodwill expediting tasks that had float to spare, and the one chain that actually mattered is discovered at handover.
Three details make this worse on Indian sites. First, working days: a “10-day” task spanning two Sundays and a festival is 13 calendar days, and sheets rarely count that honestly. Second, the monsoon: rain days are calendar days — a buffer, not work — and mixing them into task durations corrupts every chain they touch. Third, payment gates: on many contracts the next stage cannot start until the previous RA bill is paid; that's a dependency too, and it lives in your billing, not your plan.
What to do about it, tool or no tool
- Write dependencies, not just dates. Even on paper: every task gets a “can't start until”.
- Count durations in working days, on a calendar that knows your Sundays and festivals.
- Keep monsoon contingency as a separate buffer in calendar days — never padded into tasks.
- Freeze a baseline when the client signs. Slip is only measurable against a promise.
- When something slips, re-find the longest chain before you spend a single phone call expediting.
Doing that by hand is a weekend per re-plan, which is why nobody does. It is, honestly, why we built the Schedule in Rebaar: a Gantt where you drag a bar and the critical path recomputes as you move, float shows on every task, monsoon buffers stay off the chain, and a stage waiting on an RA-bill payment shows a padlock with the reason. If your plan already lives in Excel, it imports as-is — predecessors and all.
But the method matters more than the tool. Next time three things go wrong in one week, ask the only question that matters: which of these is on the longest chain?