Key takeaway

A single returned IRR is not proof of a unique return. For cash flows that change sign more than once, inspect the NPV profile and the timing and obligations behind every payment.

A later cash outflow changes the return question

An attractive license payment may be followed by a costly refresh or fulfilment obligation. If the project cash flows move from negative to positive and back to negative, one reported internal rate of return can conceal another solution to the same equation.

Microsoft’s IRR documentation describes a calculation for cash flows at regular intervals, using the order of the values and an iterative process with a starting guess. Its NPV documentation separately explains discounting future equally spaced, period-end cash flows. An initial time-zero amount is added outside that NPV function.

These function conventions do not decide whether an obligation exists or which discount rate is suitable. The first task is to establish a complete, dated cash-flow schedule from the actual proposal. A spreadsheet percentage cannot repair an omitted future cost.

Supporting referencesIRR functionNPV function

One invented license with two positive roots

Hypothetical example: at time zero, a company spends USD 10,000: ten staff hours at USD 100, USD 6,000 engineering and USD 3,000 outside review. Under the stipulated signed-contract scenario, it receives USD 23,000 at the end of year one and pays USD 13,200 at the end of year two.

The final cost comprises 100 fulfilment hours at USD 100 plus USD 3,200 storage. Assume no other external fees, recurring costs, tax or financing. All amounts are in USD. This is an invented cash schedule, not a quote, actual license or estimate of what a dataset can earn.

Its NPV equation is −10,000 + 23,000/(1+r) − 13,200/(1+r)². Both r = 10% and r = 20% make that expression zero. Multiplying through by (1+r)² gives a quadratic with those two roots. The positive rates describe the same three cash flows, not two different business outcomes.

Illustrative rate per yearNPV of the same cash flowsInterpretation within this model
5%−USD 68.03Below zero at this entered rate
10%USD 0.00One root
15%USD 18.90Above zero between the roots
20%USD 0.00A second root
25%−USD 48.00Below zero again
Supporting referencesIRR functionNPV function

Put the time-zero amount outside Excel’s NPV range

If cells A2, A3 and A4 contain the time-zero, year-one and year-two cash flows, the stated Excel convention gives =A2+NPV(rate,A3:A4). Putting A2 inside the NPV range would discount the initial amount by another period and shift the schedule.

The arithmetic here was checked directly from the equation, rather than by claiming an executed Excel workbook. IRR’s guess can affect which solution an iterative calculation finds. Changing the guess to obtain a more flattering result is not an economic explanation or evidence that the other root disappeared.

The NPV table is deliberately small enough to inspect. The nominal cash sum is minus USD 200, while the NPV at 15% is slightly positive because the late negative cash flow is discounted more heavily. That timing effect is why an unexplained positive IRR is an incomplete decision summary.

Supporting referencesIRR functionNPV function

Review the obligation and the no-deal branch separately

For a real decision, verify the future work’s trigger, scope, cost basis, currency and timing. If amounts are uncertain, test explicit alternative schedules. If dates are irregular, do not present the regular annual-period example as a calculation for those dates. Rate selection and legal interpretation require their own actual assessment.

In the hypothetical no-contract branch, the initial USD 10,000 preparation spend is lost and the later receipt and contractual obligation are assumed not to arise. That branch is separate from the signed-contract NPV table; it has not been probability-weighted into the displayed returns.

Use offer comparison and earnings to preserve the dated net cash flows, the future-cost assumptions and the chosen decision criterion together. Multiple roots do not automatically reject the proposal, but they do prevent one selected IRR from serving as a complete ranking. VOID has not established the receipts or obligations in this illustration.

Supporting referencesIRR functionNPV function

Tools for this decision

Earnings calculator →Offer comparison →