Operations

The Estimate Nobody Revisited: A Guess With a Date on It

An estimate is a guess with an expiry date, and the date passes silently. The cost of an unrevised estimate is not that it was wrong; it is that nothing recorded that it had become wrong.

QuotingEstimatesScopeNox-Billings

A wrong estimate is a known problem. Everybody in the business has a story about the estimate that was wrong, and the story usually has a lesson attached. A stale estimate is a different animal, because a stale estimate is not known to be anything. It sits in a file, or in a list, or in a system, looking exactly as authoritative as the one written yesterday.

The distinction that matters is between an estimate that is wrong and an estimate that has stopped being true. The first is a failure of prediction. The second is a failure of maintenance, and it happens to estimates that were perfectly reasonable on the day they were written.

Nobody intends to rely on a two-year-old estimate. The problem is that the estimate does not carry the information that would let them notice they are relying on it. It is a number with no indication of the conditions that produced it, and because it looks like every other number in the system, using it feels like reading a figure rather than making an assumption.

A constructed exampleThe cost is not that it was wrong

Here is a worked example we constructed for this article. Every figure is invented so that a reader can check the arithmetic by hand. The 18% GST rate appears only to keep the totals checkable, and is described that way every time it appears; nothing here is guidance on how anything should be treated, and tax questions belong with your own chartered accountant.

In March, a business estimates a website rebuild at ₹4,00,000 taxable. It is a considered figure, built from a list of work items and some judgement about how long each will take. Nobody disputes it. The customer decides to wait, because of budget timing rather than doubt. The estimate sits in the system.

Eleven months later, the work starts. In the meantime, the person who built the estimate has left, two of the libraries the estimate was based on have changed, the customer's internal structure has changed, and the integration that was assumed to be straightforward is now the largest single risk in the job. The real cost of the work is ₹5,80,000 taxable.

Now the question, which is the only question this article is really about: is the original estimate wrong, or is it stale? Both are true and they have different remedies. The estimate is wrong in the sense that it did not predict the outcome. It is stale in the sense that the conditions it was priced against stopped existing eleven months ago, and nothing recorded that fact.

Compare the two numbers. ₹5,80,000 − ₹4,00,000 = ₹1,80,000. That is 45% of the original estimate, and we are deliberately not going to present that as a finding or invite comparison against any benchmark. It is one invented job. What is worth noticing is that the loss was not caused by bad estimating. It was caused by an estimate continuing to be treated as current after the basis for it had expired. A different estimate made in February, with the same level of care and the same information available, would have been wrong by almost exactly as much. The March estimate did not fail. It was simply used long after it was meaningful, and no record said so.

Four things that quietly expire, none of them visible in the number

An estimate goes stale for reasons that have nothing to do with the work itself, and the reason it goes stale is almost never recorded. These four cover most of what we have seen.

The first is time. Prices change, dependencies change, and the labour market changes. An estimate is a snapshot of a set of conditions, and conditions do not stay still for a year because the document is still in the folder. This is the one everybody half-knows about and nobody writes down.

The second is the person. An estimate carries the judgement of whoever made it, and judgement is not stored anywhere else. When that person leaves, the estimate does not become wrong automatically, but it becomes unreviewable, because there is nobody left who can say what it was based on or how much of it was a considered figure and how much was a round number. The estimate survives the person as a number and loses everything that made it meaningful.

The third is the customer's side of the equation. Scope drift is the usual culprit, and it is covered in detail elsewhere in this cluster. The structural point here is that drift destroys the basis of an estimate specifically, because the estimate was priced against a particular set of assumptions about what the customer would supply, decide, and confirm. When those change, the estimate is not slightly wrong, it is priced against a world that no longer exists.

The fourth is the work itself. The first three change the price. This one changes what the price was for. An estimate produced before a decision about scope, before an integration target was known, or before a compliance requirement was understood, is answering a question that has since been re-asked. It is not wrong. It is answering a different question, and it is filed under the old one.

Illustrative: a fresh estimate against a stale one (shape only, not a standard)

DimensionAn estimate that is still currentAn estimate nobody revisited
The conditions behind the numberRecorded and still true. Somebody can say what was assumed and check whether it still holds.Unrecorded or expired. The number survives; the reasoning behind it does not.
The dateA date the reader interprets, because the surrounding conditions are known.A date that means nothing, because nothing marks the point after which the estimate is no longer evidence.
The person who can explain itAvailable, and can say which parts were measured and which were judged.Left, or unavailable, so the estimate is a number with no author in any practical sense.
How it is used laterRead as a current figure, with the reader aware it is an estimate.Read as a current figure, with the reader unaware they are relying on a year-old assumption.
What happens when it proves wrongThe estimate is compared against reality and the gap is understood.The gap is treated as a pricing failure, when it was really a maintenance failure, so the lesson is learned in the wrong place.

Illustrative: three ways a stale estimate gets mistaken for a current one

It is quoted back

The customer asks for the same job again at the same price, and because the number is sitting there in a readable format, it gets copied. The staleness is completely invisible because the document looks identical to a fresh one.

It is used as a benchmark

A new piece of work is priced by comparison with an old job. If the old job's number was produced under conditions that no longer hold, the new job inherits a price that nobody justified for the current circumstances.

It is used as a target

The stale number becomes the goal, so the team is measured against a figure that was never a plan. This one is the most corrosive, because it converts a maintenance failure into a performance problem for the people doing the work.

What has to happen for a stale estimate to be visible rather than merely out of date

Out of date is a fact about the calendar. Visible is a fact about the workflow. The two are not the same, and most businesses have the first and not the second: everyone knows the estimate is old, and nobody can point to the moment it became unreliable.

There are four things that have to be recorded, and all four are cheap. The first is the conditions, meaning the assumptions the estimate rests on: what was assumed about the customer, the dependencies, the exclusions, the timeline. Not the reasoning chain, just the assumptions, written short. The second is a review date, which is a deliberate choice rather than a default, and which should be short enough to be useful. The third is the basis, meaning the unit prices or the effort basis, so a later reader can see whether those still apply without asking anybody. The fourth is the trigger, meaning the events that should force a look at it before the date arrives: a change of scope, a change of the person who raised it, a change in the price of something it depends on.

With those four recorded, a stale estimate is a different object from an old one. It is an estimate with visible warnings on it, and a person reading it can tell in seconds that they are about to make a decision rather than read a fact. Without them, the estimate is a number with a date, which is the least useful format available for something that is going to be relied upon.

Illustrative: making an estimate's expiry visible, in sequence

  • Write the assumptions the estimate rests on, next to the number, in a form a person can read without context. If the assumptions cannot be stated, the estimate is a guess with extra steps.
  • Set a review date deliberately rather than inheriting the creation date, and choose a date short enough that acting on it is realistic.
  • Record the basis, so a later reader can see whether the unit prices or effort figures behind the estimate still hold.
  • Name the events that force an earlier review, and make them part of the normal process rather than a thing somebody has to remember.
  • Reuse the original estimate deliberately when you quote again, and mark it as a reuse. A reused number that is marked is a decision, and a reused number that is not marked is an accident.
  • When you price new work against an old job, check the old job's conditions against the current ones before treating the number as a reference. Comparing prices across different conditions is how a stale figure becomes a policy.
  • Keep a visible list of estimates that are past their review date, and treat it as a work list rather than as a report. The point is to close items, not to observe them.
  • Never let an old estimate become a target. If the original number is going to be used as an aim, re-derive it first so that the target is a current judgement rather than a historical accident.

What revising an estimate actually means in the system

It is worth being direct about the product boundary, because an expiry feature is exactly the kind of thing a reader assumes exists and it does not work that way here.

NoxOrigin has no change-request record, no milestone record, no deliverable record, no contract editor, and no e-signature. There is no automated staleness flag on a quote, no reminder when a review date passes, and no wizard that walks somebody through re-estimating. What exists is the structure underneath: a quote is a priced record attached to a project, and a revised estimate is a NEW QUOTE raised against that same project. The old estimate stays exactly as it was, and the new one sits beside it.

That structure is not the same as an expiry feature, and we would rather say so than describe a capability we do not have. What it does give you is the thing an expiry feature cannot: the ability to see, later, what the estimate was when it was made and what it became when somebody re-examined it. The visibility described in the previous section is mostly a matter of how a business chooses to use that structure, not of what the software enforces.

Two other boundaries are relevant. Merge policy is a setup decision: if a customer or project record is detected as a candidate for merging, it is flagged and a human reviews it, and nothing merges automatically. And shift close and day-end reconciliation are assisted-setup maturity rather than self-serve switches, so the periodic review that would catch a drifting estimate is arranged deliberately with help rather than being a toggle you can throw in an afternoon. It does not file GST returns or any other statutory return, and it has no timesheet record and no payroll module, so an estimate priced on labour cannot be checked against hours worked anywhere in this platform. Expenses are Nox-Billings only; purchasing is in Commerce.

The one-line version.

  • An estimate is a guess with an expiry date, and the expiry is not a formality.
  • Being wrong is a prediction failure. Being stale is a maintenance failure, and only one of them is avoidable by estimating better.
  • Record the assumptions, a review date, the basis, and the triggers. Then staleness becomes visible.
  • An invoice and a payment are different records; paid is a projection of allocations.
  • There is no automated expiry flag. A revised estimate is a new quote against the same project.

The review this leads to

The practical outcome is a small standing work list rather than a report: the estimates that are past their review date, the ones whose assumptions have changed, and the ones whose author has left. Closing those three lists is the whole mechanism, and it works because each item is a small action with a clear end rather than a judgement call about a large number.

The companion failure modes in this cluster are worth reading together, because an unrevised estimate is usually where several of them meet. The quotation that was never a scope is the first article, and an estimate without exclusions is an estimate that will be stale by definition, since nobody can tell what changed it. The concession taken twice is the second, and a stale number re-quoted without comment is a concession granted by inattention. And the work that genuinely cannot be priced in advance is the fourth, because a business that only ever prices work it can scope will invent scope for the work it cannot, and then estimate that invented scope badly.

The related question of whether quoted and invoiced scope can be trusted to correspond at all is covered in the article on scope drift between the agreed scope and the invoiced scope.

Frequently asked questions

How often should an estimate be re-examined?

Often enough that acting on it is realistic, which usually means a short review date rather than a comfortable one. The important part is that the review is a decision somebody makes, not a number that quietly ages. If nobody revisits an estimate, it should not be reused, and the cheapest fix is usually to mark reused figures as reused.

Is our estimate wrong or just old?

Both, and the distinction matters because the remedies differ. Being wrong is a prediction failure, fixed by estimating differently. Being old is a maintenance failure, fixed by recording when the conditions behind the number stopped holding. A business that treats every old estimate as a bad estimate learns nothing from the cases where estimating was fine.

Does NoxOrigin warn us when an estimate gets old?

No. There is no automated expiry flag, no reminder, and no re-estimate wizard. What the platform provides is the record structure: quotes attach to a project, and a revised estimate is a new quote against the same project with the original preserved, so the history of what was believed and when is readable later.

What about estimates that depend on somebody's time?

There is no timesheet record and no payroll module in NoxOrigin, so an estimate priced on hours cannot be checked against hours worked inside this platform. If checking labour against the estimate matters to you, that has to happen in a system that records time, and the honest answer is that we are not that system today.

Does an old estimate have any tax consequences we should know about?

That is a question for your own chartered accountant. We do not file GST returns or any other statutory return, and this article is about the maintenance of a pricing assumption rather than about how it should be presented.

Sources and further reading

Continue reading

Looking for the rest of this topic? More in GST billing and POS →

OperationsScope drift: why the agreed scope and the invoiced scope divergeRead guide →OperationsThe Scope Nobody Wrote Down: When a Job Was Agreed in a CorridorRead guide →BillingQuote to cash: what each step has to carryRead guide →