Limited Offer! Get up to 30% OFF on your 1st order!

Homework & Study Tips

How to Calculate NPV and IRR (With Worked Examples)

Calculate NPV and IRR by hand on one capital-budgeting problem, find IRR by interpolation, dodge the Excel NPV trap, and know which rule wins when they clash.

13 min read

Net present value tells you how many of today's dollars a project adds. The internal rate of return tells you the percentage return that same project earns. They come out of one equation read two different ways: NPV fixes the discount rate and solves for a dollar amount, and IRR fixes the dollar amount at zero and solves for the rate. Once you can discount a single cash flow — divide it by (1 + r) raised to the power of the year — you can do both by hand. This guide takes one $120,000 project all the way through, so you can lay your own numbers out the same way and see where each figure came from.

🎯 Key Takeaways
  • NPV is the sum of every cash flow divided by (1 + r)t, including the negative one in year 0. Positive NPV means accept.
  • IRR is the discount rate that makes that same sum equal zero. Accept when IRR is above your cost of capital.
  • By hand, IRR needs two trial rates — one that gives a positive NPV, one that gives a negative one — then a straight-line estimate between them. A narrower pair of trial rates gives a much better answer.
  • A spreadsheet's NPV function does not include a year-0 outlay. Put it inside the function and you get exactly your correct answer divided by (1 + r), which still looks plausible.
  • When two projects are mutually exclusive and the two rules disagree, follow NPV.
  • A project with a negative cash flow after the positive ones can have two IRRs. NPV never has that problem.

What NPV and IRR Actually Measure

Capital budgeting asks one question: is this project worth the money it costs? A dollar arriving in four years is worth less than a dollar today, because today's dollar could have been invested in the meantime. So before you can compare a cost paid now against income arriving later, you have to translate the later income into today's terms. That translation is called discounting, and the rate you use is your discount rate — in a homework problem it is usually handed to you as the cost of capital, the required rate of return, or the hurdle rate.

NPV answers the question in dollars. Discount everything to today, add it all up including the money you spend at the start, and the leftover is the value the project creates. IRR answers the same question as a percentage. It is the discount rate at which the project exactly breaks even in present-value terms — the point where value created and value spent cancel out. OpenStax’s Principles of Finance 2e puts it geometrically: "The IRR is the discount rate at which the NPV profile graph crosses the horizontal axis."

Neither one is a forecast of what will happen. Both are arithmetic performed on cash-flow estimates somebody else made, which is why a finance problem set almost always hands you the cash flows and grades you on the discounting rather than the forecasting.

The Two Formulas, in Plain English

The NPV formula looks worse than it is:

NPV = CF0 + CF1/(1 + r)1 + CF2/(1 + r)2 + … + CFn/(1 + r)n

Read it left to right. CFt is the cash flow in year t, entered with its own sign — money going out is negative, money coming in is positive. r is the discount rate as a decimal, so 10% is 0.10. t is the year number, and year 0 means right now. Because anything raised to the power of zero equals 1, the year-0 cash flow is divided by 1 and enters the sum at full face value. That is the whole reason the initial investment is not discounted: it is already in present-value terms.

IRR is the same expression with the answer already filled in:

Find the value of r that makes CF0 + CF1/(1 + r)1 + … + CFn/(1 + r)n = 0

There is no algebra that isolates r once a project runs more than two years. You have to search for it. That is not a gap in your math background — it is a property of the equation, and it is why financial calculators exist.

Worked Example: NPV of a $120,000 Project

A company is buying a machine for $120,000, paid today. It expects the machine to generate net cash inflows of $35,000, $45,000, $50,000 and $40,000 over the next four years, each arriving at year end. The cost of capital is 10%. Find the NPV.

Build the table. For each year, the discount factor is 1 ÷ 1.10t, and the present value is the cash flow multiplied by that factor.

Year Cash flow Discount factor at 10% Present value
0−$120,0001.0000−$120,000.00
1$35,0000.9091$31,818.18
2$45,0000.8264$37,190.08
3$50,0000.7513$37,565.74
4$40,0000.6830$27,320.54
Subtotal, years 1–4  $133,894.54
Total (the NPV)  $13,894.54

The four inflows are worth $133,894.54 in present-value terms. Subtract the $120,000 you spend today and the NPV is $13,894.54. It is positive, so the project creates value at a 10% cost of capital and the decision rule says accept.

Write the table out even when a calculator gives you the answer in one step. A grader who can see the discount factors can award credit for a correct method behind an arithmetic slip; a bare final number gives them nothing to award. If your assignment came with a scoring guide, it is worth reading the rubric line by line to see how many points sit on the working rather than the answer.

Tip

Your answer will differ from the answer key by a few dollars if you use rounded discount factors, and that is not a mistake. Multiplying by 0.9091, 0.8264, 0.7513 and 0.6830 — the four-decimal values a printed factor table gives you — produces $13,891.50 here, $3.04 below the unrounded $13,894.54. On a $120,000 project that gap is rounding, not error. Keep full precision in your calculator and round only the final figure, and say in your working which you did.

Worked Example: Finding the IRR by Hand

Same project. Because NPV is positive at 10%, the break-even rate has to be higher than 10% — raising the discount rate always shrinks the present value of future inflows, so NPV falls as r rises. Push the rate up until NPV crosses zero and you have bracketed the IRR.

Find a rate that leaves NPV positive.

Recalculate NPV at 12%. It comes to $8,133.46. Still positive, so the IRR is above 12%.

Find a rate that pushes NPV negative.

At 16% the NPV is −$2,260.73. The break-even rate is now trapped between 12% and 16%.

Interpolate between the two.

Take the lower rate and add the share of the gap the positive NPV represents: IRR ≈ 12% + 4 × ($8,133.46 ÷ $10,394.19) = 12% + 3.13% = 15.13%. The $10,394.19 is the distance between the two NPVs — $8,133.46 plus $2,260.73, because one is above zero and the other below it.

Tighten the bracket and repeat.

15.13% is close, so test the rates around it. NPV at 15% is $207.19 and at 16% it is −$2,260.73, which gives 15% + 1 × ($207.19 ÷ $2,467.92) = 15.08%.

The true IRR of this project is 15.0827%, so the wide 12%–16% bracket overshot by about 0.05 percentage points and the narrow 15%–16% bracket landed within roughly 0.001. Both round to 15% and only one rounds to 15.08%, which matters if your assignment asks for two decimal places.

Watch out

Straight-line interpolation is always high for a normal project — one outflow up front, inflows afterward. The real relationship between NPV and the discount rate is a falling curve that sags below any straight line drawn across it, so the straight line you draw between two points sits above the curve and crosses zero slightly to the right of the true rate. Both estimates above are high, and that is the rule rather than a coincidence. If a multiple-choice option sits just below your interpolated figure, it is probably the right one.

NPV at 14%, for the record, is $2,759.58, which is another way to confirm you are closing in from the correct side. There is no shortcut past this arithmetic. As OpenStax's finance text puts it, "Calculating IRR without a financial calculator is an arduous, time-consuming process that requires trial and error to find the discount rate that makes NPV exactly equal zero." Being able to do it anyway is worth the practice, because a closed-book exam and a proctored exam sitting often restrict you to a basic calculator.

The Decision Rules, and What They Really Say

For a conventional project — one outflow at the start, inflows afterward — considered on its own, the two rules always agree:

  • NPV > 0 → accept. The project is worth more than it costs, measured in current dollars.
  • NPV < 0 → reject. It destroys value at that discount rate.
  • IRR > cost of capital → accept. The project earns more than the money costs.
  • IRR < cost of capital → reject.

Those are the same statement. Our project has an IRR of 15.08% against a 10% cost of capital, and an NPV of $13,894.54 — both say accept, and they say it for the same reason. If you ever get a positive NPV and an IRR below the cost of capital on a single conventional project, you have made an arithmetic error somewhere, and checking that consistency is the fastest self-check available to you.

Payback period, which usually appears in the same problem set, answers a different question: how long until you have your money back. Here the cumulative cash flow turns positive during year 3, giving a payback of 2.8 years. Notice that it ignores the discount rate entirely and ignores everything that happens after year 3, which is exactly why it is taught as a supplement rather than a decision rule.

The Spreadsheet Trap That Quietly Changes Your Answer

Most students check their by-hand work in Excel or Google Sheets, and this is where a correct method produces a wrong number that looks entirely reasonable. The NPV function does not calculate net present value as your textbook defines it. It discounts every value you hand it, starting one full period out.

Microsoft's own documentation says so plainly: "The NPV investment begins one period before the date of the value1 cash flow and ends with the last cash flow in the list," and "If your first cash flow occurs at the beginning of the first period, the first value must be added to the NPV result, not included in the values arguments." Google Sheets works the same way, and its documentation labels the argument "The first future cash flow." OpenStax spells out the consequence for students: the function "fails to include the initial investment at time period zero at the beginning of the project," and adds a note: "Because of the nonstandard use of the term NPV by Excel, many users prefer to use the method described above rather than this predefined function." The method described above is the one you just did by hand — discount each year in its own row and add the column up.

On our project, the damage looks like this. Selecting all five cells — the −$120,000 along with the four inflows — returns $12,631.40 instead of $13,894.54. It is positive, it is the right order of magnitude, and it is wrong by $1,263.14.

The tell

The wrong answer is always exactly the right answer divided by (1 + r), because every cash flow has been pushed one year further into the future. Here, $13,894.54 ÷ 1.10 = $12,631.40 to the cent. So if your spreadsheet result times (1 + r) equals your hand calculation, you included the year-0 cell. The finance-education site TVMCalcs uses the same identity as a fix rather than a diagnosis: leave the outlay in the range and "multiply the result by (1 + i), where i is the per period discount rate."

The cleaner habit is to exclude year 0 from the function and add it back outside: point NPV at the four inflow cells only, then add the negative outlay to the result. Both routes give $13,894.54.

The IRR function has no such quirk — OpenStax notes it "properly uses all the project’s cash flows, including the initial cash outflow at time 0, in its calculation, unlike the NPV function." It does have two requirements worth knowing. Microsoft states that "Values must contain at least one positive value and one negative value to calculate the internal rate of return," so a range of all-positive inflows returns an error rather than an answer. And the search is iterative: it "cycles through the calculation until the result is accurate within 0.00001 percent. If IRR can't find a result that works after 20 tries, the #NUM! error value is returned." A #NUM! usually means your cash flows do not cross zero the way the function expects, not that your spreadsheet is broken.

When NPV and IRR Disagree

The rules only line up for one project judged alone. Put two mutually exclusive projects side by side — you can fund one or the other, not both — and they can point in opposite directions.

Both of these projects cost $60,000. Project S returns its money early; Project L returns more of it late. The cost of capital is 10%.

  Project S (front-loaded) Project L (back-loaded)
Year 0−$60,000−$60,000
Years 1–4$36,000 / $24,000 / $12,000 / $6,000$6,000 / $18,000 / $30,000 / $36,000
NPV at 10%$5,675.84$7,458.51
IRR15.86%14.44%

NPV picks L. IRR picks S. The two rules genuinely disagree, and the disagreement comes from timing. Project S's cash arrives early, and that matters most when the discount rate is high: a high rate punishes late money hardest, so S loses less ground than L as the rate climbs. So the ranking depends on the discount rate, and there is one rate at which the two projects are worth exactly the same — the crossover rate.

You find it by discounting the differences between the two projects. Subtract S's cash flows from L's and you get 0, −$30,000, −$6,000, $18,000 and $30,000. The IRR of that incremental stream is 12.4464%, and at that rate both projects are worth about $3,189. Below 12.4464% the back-loaded project L wins on NPV; above it, S wins on both measures and the conflict disappears. At our 10% cost of capital we are below the crossover, which is exactly why the two rules split.

When they split, take NPV. NPV measures dollars of value added, which is what the firm is trying to maximize; IRR measures a percentage and is blind to size, and it carries an assumption most students are asked to state on an exam. In OpenStax's words, "The IRR assumes that the cash flows are reinvested at the internal rate of return when they are received. This is a disadvantage of the IRR method." A 15.86% project only stays a 15.86% project if the cash it throws off can be put back to work at 15.86%, and there is usually no reason to believe that.

When IRR Stops Working At All

Everything above assumes a conventional project: one outflow at the start, inflows afterward. Change the sign pattern and IRR can stop giving a single answer. OpenStax works a case that shows it cleanly. A company builds a facility for an Olympic competition at a cost of $350 million, earns $950 million from it in the following year, then has to spend $620 million converting it into a public park the year after. Money out, money in, money out again.

Plot NPV against the discount rate for those cash flows and it starts negative, rises above zero, and falls back below. At 0% the NPV is −$20 million; at 20% it is $11.11 million; at 40% it is $12.24 million; at 80% it is −$13.58 million. Because the line crosses zero twice, "there are two IRRs. In other words, there are two interest rates at which NPV equals zero." Those cash flows make a quadratic — 350x2 − 950x + 620 = 0, where x = 1 + r — and solving it ourselves gives the two rates exactly: 9.18% and 62.25%. Neither is more correct than the other, and the rule "accept if IRR beats the cost of capital" no longer means anything.

OpenStax names the trigger: this "can happen when negative cash flows occur in more than one period in the project." It is not guaranteed — plenty of projects with a late outflow still have one IRR — but the possibility is why the exam answer to "which method is more reliable" is NPV. NPV returns one number for one discount rate, every time, whatever the sign pattern does.

A Check Before You Submit

Run these five checks on any capital-budgeting answer:

  • Is year 0 in the sum, undiscounted, and negative? An easy point to lose here is an initial outlay that was discounted, dropped, or entered as a positive number.
  • Does the sign of the NPV match the IRR verdict? Positive NPV with an IRR below the cost of capital means something is wrong upstream.
  • Does substituting the IRR back into the NPV formula give roughly zero? This is the definition of IRR and it takes thirty seconds.
  • If you used a spreadsheet, did you leave year 0 out of the NPV range? Multiply the result by (1 + r) and see whether it matches your hand figure — if it does, the year-0 cell was inside the function.
  • For two mutually exclusive projects, did you say which rule you followed and why? "NPV, because the projects are mutually exclusive and IRR ignores scale and timing" is often worth a point on its own.

None of this is conceptually difficult, and that is precisely the frustration: the ideas take an afternoon and the arithmetic takes the whole week, especially when a problem set moves from a single project into replacement analysis, incremental cash flows and depreciation tax shields in the space of four questions. If the volume rather than the concept is what has you stuck, working through a finance problem set with someone who does these daily is a faster way back to the material than another evening spent re-entering cash flows. Either way, the habit that carries you through the exam is the one this article is built on: lay the years out in a column, discount them one at a time, and let the total speak for itself.

Frequently Asked Questions

NPV and IRR come from the same equation, read in two directions. NPV fixes the discount rate you were given and returns a dollar figure: the value the project adds in present-value terms, after subtracting what it costs. IRR fixes that figure at zero and returns the discount rate that produces it, so it is the project's break-even rate of return. For a conventional project — one cash outflow at the start, inflows afterward — a positive NPV at your cost of capital always comes with an IRR above that cost of capital, so the two rules never disagree on a single project judged alone.

Find two discount rates that bracket the answer, then estimate between them. Calculate NPV at a rate that leaves it positive and at a higher rate that turns it negative; the IRR sits somewhere in between. Then interpolate: lower rate + (gap between the rates) × (positive NPV ÷ the distance between the two NPVs, added as absolute values). For a normal project — one outflow up front, inflows afterward — the straight-line estimate always comes out slightly high, so narrow the two trial rates to about one percentage point apart before you trust a two-decimal answer.

Almost always because the year-0 investment was inside the NPV function. Microsoft's documentation states that "The NPV investment begins one period before the date of the value1 cash flow", so every value you pass gets discounted, including the outlay you already paid at the start. Google Sheets behaves the same way and labels its first argument "The first future cash flow." The fix is to point the function at the future cash flows only and add the year-0 amount to the result outside the function. The tell is that the wrong answer equals the right answer divided by (1 + r).

Use NPV. With conventional projects — one outflow up front, inflows afterward — the two rules can only disagree when you are choosing between mutually exclusive ones, and NPV measures dollars of value added, which is what a firm is trying to maximize. IRR returns a percentage that is blind to project size and timing, and it assumes cash the project throws off can be reinvested at the IRR itself — an assumption that rarely holds for a high-IRR project. NPV also survives the unconventional case: when a project's cash flows turn negative again after the inflows, that one project can have two IRRs and "accept if IRR beats the cost of capital" stops meaning anything, while NPV still returns exactly one number for any one discount rate. Naming the reinvestment assumption is usually what an exam question on this is actually testing.

Yes. When a project has negative cash flows in more than one period — typically an upfront cost, inflows, then a large closing or cleanup cost at the end — the NPV curve can cross zero twice, giving two discount rates at which NPV equals zero. Neither is more correct than the other, so "accept if the IRR beats the cost of capital" stops meaning anything. NPV has no equivalent problem: for any one discount rate it returns exactly one number, which is one of the main reasons textbooks treat it as the more reliable rule.

Stay in the loop

Get Study Tips in Your Inbox

Free writing guides, citation cheat-sheets and deadline-beating advice — a short, useful email now and then. No spam, unsubscribe any time.

🔒 We respect your privacy — your email stays with us and never gets shared.

👥
people reading
this article right now
⏱
13 minute read
Estimated time to read this article