Why Use Bisection for an IRR?
An internal rate of return is a rate at which a project’s net present value is zero. For uneven cash flows, that rate may not be available from a convenient closed-form equation. If two trial rates have NPVs with opposite signs, bisection provides a systematic way to narrow the interval containing an IRR. It does not require a derivative or a carefully chosen initial guess: each step uses one midpoint rate and the sign of its NPV.
The method is especially useful when the main requirement is a reliable error bound. After enough bisections, the full interval is small, so its midpoint is guaranteed to be close to any IRR that remains inside it. This guarantee depends on maintaining a valid bracket; an arithmetic or sign error can destroy it.
The Bisection Update and Its Error Bound
For cash flows \(C_0,C_1,\ldots,C_n\) at times \(0,1,\ldots,n\), measured in equal annual periods, use the annual effective rate \(i>-1\) and calculate
The rate and cash-flow periods must match. If the cash flows are annual, \(i\) is an annual effective rate; if they are quarterly, the trial rate must be a rate per quarter. The formula applies to discrete cash flows at the stated times. It is continuous in \(i\) for \(i>-1\), since each denominator is positive and varies continuously there.
At a bisection step, let \(M=(L+U)/2\). If \(\operatorname{NPV}(M)=0\), \(M\) is an IRR and the search ends. If \(\operatorname{NPV}(M)\) has the same sign as \(\operatorname{NPV}(L)\), replace \(L\) by \(M\). Otherwise, replace \(U\) by \(M\). The endpoints of the retained interval still have opposite signs.
The width result follows because each step retains exactly one half of the preceding interval. For the error bound, an IRR \(i^*\) in the final interval satisfies \(L_k\leq i^*\leq U_k\). The midpoint is \(W_k/2\) from either endpoint, so
This is an interval-based guarantee, not a statement about how close the NPV at the midpoint is to zero. NPV may change rapidly or slowly with the rate; the rate error bound comes from the bracket width.
Worked Examples
Worked Example: Six Bisections for Uneven Annual Cash Flows
A hypothetical project requires an initial investment of $1,000 and pays $600 at the end of each of the next two years. Its annual effective IRR is known to lie between 10% and 20%. Perform six bisections, report the final midpoint estimate, and state its maximum possible error. Use unrounded values to determine NPV signs; display NPVs to the nearest cent.
Method. For a trial annual rate \(i\), the equation is \(\operatorname{NPV}(i)=-1000+600/(1+i)+600/(1+i)^2\). At 10%, the terms are \(600/1.10=545.4545\) and \(600/1.21=495.8678\), giving NPV \(=41.3223\), or $41.32. At 20%, the terms are \(500.0000\) and \(416.6667\), giving NPV \(=-83.3333\), or \(-$83.33\). The signs confirm the starting bracket \([10\%,20\%]\).
Step 1. The midpoint is 15%. The discounted payments are \(600/1.15=521.7391\) and \(600/(1.15)^2=453.6862\). Thus NPV \(=-24.5747\), or \(-$24.57\). Its sign matches the upper endpoint, so retain \([10\%,15\%]\).
Step 2. The midpoint is 12.5%. The discounted payments are \(600/1.125=533.3333\) and \(600/(1.125)^2=474.0741\). NPV \(=7.4074\), or $7.41. Retain \([12.5\%,15\%]\).
Step 3. The midpoint is 13.75%. The discounted payments are \(600/1.1375=527.4725\) and \(600/(1.1375)^2=463.7121\). NPV \(=-8.8154\), or \(-$8.82\). Retain \([12.5\%,13.75\%]\).
Step 4. The midpoint is 13.125%. The discounted payments are \(600/1.13125=530.3867\) and \(600/(1.13125)^2=468.8505\). NPV \(=-0.7628\), or \(-$0.76\). Retain \([12.5\%,13.125\%]\).
Step 5. The midpoint is 12.8125%. The discounted payments are \(600/1.128125=531.8560\) and \(600/(1.128125)^2=471.4513\). NPV \(=3.3073\), or $3.31. Retain \([12.8125\%,13.125\%]\).
Step 6. The midpoint is 12.96875%. The discounted payments are \(600/1.1296875=531.1203\) and \(600/(1.1296875)^2=470.1480\). NPV \(=1.2683\), or $1.27. Retain \([12.96875\%,13.125\%]\).
The final width is \(13.125\%-12.96875\%=0.15625\) percentage points. The midpoint estimate is \((12.96875\%+13.125\%)/2=13.046875\%\), with maximum error \(0.078125\) percentage points. Rounded to three decimal places, the estimate is 13.047%; the stated error bound is for the unrounded midpoint.
Check. The last lower endpoint has positive NPV and the upper endpoint has negative NPV, so the sign bracket is preserved. The estimate lies between those endpoints, as required. The common mistake to avoid is counting the initial bracket as a bisection: six midpoint evaluations, not five, produce the reported final interval.
Worked Example: Updating the Bracket for Uneven Payments
A hypothetical project costs $2,400 now and returns $1,000 at each of the ends of years 1 and 2, followed by $700 at the end of year 3. Annual cash flows use an annual effective rate. Starting with the bracket \([5\%,15\%]\), perform three bisections and give the midpoint estimate and its error bound. Round displayed NPVs to the nearest cent.
Method. Use \(\operatorname{NPV}(i)=-2400+1000/(1+i)+1000/(1+i)^2+700/(1+i)^3\). At 5%, the discounted inflows are \(952.3810\), \(907.0295\), and \(604.6863\), so NPV is \(64.0967\), or $64.10. At 15%, they are \(869.5652\), \(756.1437\), and \(460.2614\), so NPV is \(-314.0297\), or \(-$314.03\). These evaluations confirm the bracket.
Step 1. At the midpoint 10%, the discounted inflows are \(909.0909\), \(826.4463\), and \(525.9204\). NPV \(=-138.5424\), or \(-$138.54\). The upper endpoint becomes 10%, giving \([5\%,10\%]\).
Step 2. At the midpoint 7.5%, the discounted inflows are \(930.2326\), \(865.3327\), and \(563.4724\). NPV \(=-40.9623\), or \(-$40.96\). The bracket becomes \([5\%,7.5\%]\).
Step 3. At the midpoint 6.25%, the discounted inflows are \(941.1765\), \(885.8131\), and \(583.5945\). NPV \(=10.5841\), or $10.58. The bracket becomes \([6.25\%,7.5\%]\).
After three bisections the midpoint estimate is 6.875%, and the interval width is \(1.25\) percentage points. Its maximum error is half that width, or \(0.625\) percentage points. The calculation is checked by the opposite endpoint signs: positive at 6.25% and negative at 7.5%. The common mistake is to use the starting interval’s midpoint as the answer after later updates; the estimate must be the midpoint of the final interval.
Worked Example: Choosing the Number of Bisections
For a hypothetical investment, endpoint NPV evaluations establish that the annual effective IRR lies in \([4\%,12\%]\). Find the least number of bisections that guarantees a midpoint estimate within 0.025 percentage points of an IRR in the bracket. State the resulting width and error bound.
Method. The initial width is \(12\%-4\%=8\) percentage points. After \(k\) bisections, the midpoint’s maximum error is \(8/2^{k+1}\) percentage points. Require this to be at most \(0.025\):
Since \(2^8=256<320\) and \(2^9=512\geq320\), the least value is \(k=8\). The final interval width is \(8/2^8=0.03125\) percentage points, and its midpoint is at most \(0.015625\) percentage points from an IRR in it. This is below the required \(0.025\) percentage points.
The calculation is checked against the tolerance: \(0.015625<0.025\), while seven bisections would give a maximum error of \(8/2^8=0.03125\) percentage points, which is too large. The common mistake is to compare the full interval width with the requested midpoint error; the midpoint error bound is half the final width.
Practical Checks and Common Traps
Bisection is dependable only when each step uses the correct rate, cash-flow timing, and sign. Before beginning, verify that the endpoint NPVs are opposite in sign and that both trial rates use the same period convention as the cash flows. A bracket with endpoint NPVs of the same sign does not meet the bisection condition, even if the rates look plausible.
- Dropping the sign information. Do not retain a half-interval merely because its midpoint is numerically closer to one endpoint. Evaluate NPV and retain the half whose endpoint signs differ.
- Mixing rate and time units. Annual cash flows discounted at annual times require an annual effective rate. Applying a quarterly rate directly to those annual periods changes the equation.
- Rounding too early. Keep sufficient precision in discounted cash flows and NPVs to determine the sign. A small NPV near zero can change sign if rounded prematurely.
- Confusing percentage points with percent error. A change from 8.00% to 8.10% is 0.10 percentage points. State the error unit explicitly.
- Assuming a bracket proves uniqueness everywhere. Opposite endpoint signs and continuity guarantee at least one root in that interval. They do not, by themselves, establish that no other IRR exists outside it. For a conventional cash-flow pattern, the earlier result on uniqueness supplies that additional assurance.
When the required accuracy is specified, calculate the iteration count from the initial width before doing repeated NPV evaluations. When it is not specified, continue until the final interval is narrow enough for the intended reporting precision. A displayed rate should not imply more accuracy than the interval supports.
Check Your Understanding
For each problem, use the bisection update and interval-width rule as appropriate. Rates and interval widths are stated in percentage points unless noted otherwise.
- A bracket is \([3\%,11\%]\). After four bisections, what is the interval width and the maximum error of its midpoint estimate? (Answer: width \(0.5\) percentage points; maximum error \(0.25\) percentage points.)
- An initial bracket has width 5 percentage points. What is the least number of bisections needed to guarantee that the midpoint estimate is within 0.02 percentage points of an IRR in the bracket? (Answer: 7 bisections.)
- The endpoint NPVs in a bracket \([6\%,14\%]\) are positive at 6% and negative at 14%. The midpoint NPV at 10% is positive. Which interval should be retained? (Answer: \([10\%,14\%]\).)
- Quarterly cash flows use a rate per quarter, and a valid bracket has width 8 percentage points. After five bisections, what is the maximum midpoint error? (Answer: \(0.125\) percentage points.)
- A proposed bracket has NPVs of \(+$120\) at its lower endpoint and \(+$35\) at its upper endpoint. Can the analyst apply the standard bisection update on the basis of this bracket? (Answer: No; the endpoint NPVs do not have opposite signs, so the bracket condition is not met.)