IRR/XIRR – Excel – Limitations of Calculating Complex Cash Flow Returns

Excel’s IRR and XIRR functions are often used to calculate the rate of investment returns. In this post, let us discuss the limitations of XIRR and IRR functions.

Credit:  This discussion is inspired by financial planner Mr. Hari who posted a video describing the limitations of IRR and XIRR on my XIRR calculator page. The video (a must watch for finance professionals) is linked below.

A couple of weeks ago, when the Chit fund returns calculator was published, I had mentioned that, for any investment, if the amount invested is less than the amount received, it might not be possible to calculate the rate of return.

Excels XIRR and IRR functions, or any other code for that matter, cannot handle such situations because there is more than one rate of return possible!

In order to understand what this means, let us review some basic definitions.

Cash flow:  For the purposes of this post, we define cash flow as receipts – payments.

So if you make a profit in any investment the cash flow is positive and if you incur a loss, the cash flow is negative.

IRR: IRR or internal rate of return is a function in Excel used to calculate the return for any periodic cash flow entries.  For example, if you pay insurance premium for 12 months and receive some cash back in the 13th month, you could calculate the monthly IRR and then convert to a CAGR (compounded annual growth rate)

XIRR: If the cash flow entries are not periodic, then XIRR may be used to compute CAGR straightaway using the dates of payments and receipts.

Both IRR and XIRR are approximation methods (we will see why this is necessary below).  Therefore, you may have to help them out buy entering a guess for the return.

Let us start a simple situation.

Lump sum investment

Suppose I invest Rs. 100 for 5 years and get Rs. 150 at the end of 5 years, what is the rate of return?

To determine this, we calculate

compound-interest-1

Compound Interest Formula

Here, rate is the rate of return we need to calculate.  First, we rewrite

compound-interest-2

That is, we can pull the rate to one side of the equation.

When this is possible, we can always determine the rate uniquely.  That is, there will only be one answer.

SIP investment

Suppose I run a monthly SIP of Rs. 1000 for 5 years and obtain a corpus of say, Rs. 70,000, what is the rate of return?

In this case, the formula gets a bit complicated!

SIP-compound-interest-4

compound-interest-3

Here, 12000 is the annual investment.  Unfortunately, in this case the rate cannot be pulled to one side of the equation.

  • Therefore, we have to estimate the rate of returns and cannot determine it as mentioned in my post on generating MF account statement with returns
  • Therefore, we need to estimate the returns from a SIP as mentioned in post on SIP account statement from NAV history

To do this, let us first denote

SIP-compound-interest-5

Here f(rate) simply means a quantity which depends on the rate.

We can now write the SIP formula as

C - f(rate)  =0

Here C is the corpus accumulated (Rs. 70, 000 in our example).  Now we start guessing the rate.

  • If our guess is incorrect, C - f(rate)  ≠ 0
  • If our guess if correct,   C - f(rate)  =0

Suppose I draw a graph between C - f(rate) versus all possible reasonable for the rate (say between -100% and +100%) then we might get something like this.

Estimating-investment-returns-postive-cash-flow

Notice that curve cuts the x-axis at only point.  At this point the value of the y-axis is zero (that is C - f(rate)  =0).

The corresponding value of the x-axis is the rate of return.

While this is a simple graphical way of calculating the return, there are many mathematical methods to calculate return. Excel’s IRR and XIRR uses a method known as Newton –Raphson method. Here is an excellent review on the subject (strongly recommend resource for all finance professionals)

Calculating rate using such methods work fine, provided the cash flow is positive. That is receipts should be greater than payments.

When the cash flow becomes negative (loss in investment) and in particular a large negative number (huge loss), the plot between C - f(rate)  versus rate may look like this.

Estimating-investment-returns-negative-cash-flow

Notice that the curve intersects the x-axis at three points. This means that there are 3 solutions.  That is three different rates correspond to our cash flow entries.

Many find this impossible to believe.  Unfortunately, this is not only possible but also quite natural.

If we knew what the three solutions are, we could check them using Excels XNPV function. This function returns a value of zero if the right rate of return is chosen.  XPNV will be zero for all possible solutions!

Next week I will post an Excel tool by which we can determine all possible solutions for a given cash flow statement.

Video mentioned above

A look at Excel's XIRR function

If you read the comments below the video, you may notice that I had an interesting discussion with the author.

Bottomline:

  • When the investment loss is huge, multiple rate of returns is possible.
  • All such solutions are equally correct
  • You cannot pick and choose a solution that you like!
  • Typically, for such situations, IRR and XIRR will return an error.
  • An error is better because, for some situations IRR and XIRR can produce one of the many possible solutions!  This is unfortunate because the user believes the answer without realizing that the result is wrong!

The solution: Do not lose money!  That way the cash flow is positive and the return will always be unique. Excels IRR and XIRR are then dependable!

Your view: Do spare a moment to let me know if you were able to follow the discussion.  What do you make out of all this? If you can add to this discussion in any way, please let me know.

Install Financial Freedom App! (Google Play Store)

Install Freefincal Retirement Planner App! (Google Play Store)

book-footer

Buy our New Book!

You Can Be Rich With Goal-based Investing A book by  P V Subramanyam (subramoney.com) & M Pattabiraman. Hard bound. Price: Rs. 399/- and Kindle Rs. 349/-. Read more about the book and pre-order now!
Practical advice + calculators for you to develop personalised investment solutions

Thank you for reading. You may also like

About Freefincal

Freefincal has open-source, comprehensive Excel spreadsheets, tools, analysis and unbiased, conflict of interest-free commentary on different aspects of personal finance and investing. If you find the content useful, please consider supporting us by (1) sharing our articles and (2) disabling ad-blockers for our site if you are using one. We do not accept sponsored posts, links or guest posts request from content writers and agencies.

Blog Comment Policy

Your thoughts are vital to the health of this blog and are the driving force behind the analysis and calculators that you see here. We welcome criticism and differing opinions. I will do my very best to respond to all comments asap. Please do not include hyperlinks or email ids in the comment body. Such comments will be moderated and I reserve the right to delete  the entire comment or remove the links before approving them.

22 thoughts on “IRR/XIRR – Excel – Limitations of Calculating Complex Cash Flow Returns

  1. Hari

    Sir, Thank you very much. Of course it's too technical. Hence wait for your next post.:)
    "Next week I will post an Excel tool by which we can determine all possible solutions for a given cash flow statement."

    Reply
  2. Hari

    Sir, Thank you very much. Of course it's too technical. Hence wait for your next post.:)
    "Next week I will post an Excel tool by which we can determine all possible solutions for a given cash flow statement."

    Reply
  3. Gaurav Agarwal

    Dear Pattu, many thanks for sharing
    I want to know how we can calculate composite XIRR and CAGR for a portfolio.
    Let say, I have a portfolio consisting of three different funds with uneven inflows and outflows.
    I find out XIRR and CAGR for all three funds separately. How these individual returns will be composite to show a return (XIRR and CAGR) on Portfolio.

    Reply
    1. pattu

      Hi Gaurav, There are two ways one can do it.

      (1) Fund A gives 10% return and constitutes 40% of investment value
      fund B 11% return and 30% weight
      fund C 12% return and 30 weight

      So net XIRR is = 10%*0.4+11%*0.3+12%*0.3
      This is known as a weighted sum

      (2) The other way is to integrate the cash flow for all funds get a single XIRR. This is what I do for my NPS account.

      if you send me a file with sample data, I can show you how to put it together.

      Keep visiting.

      Reply
  4. Gaurav Agarwal

    Dear Pattu, many thanks for sharing
    I want to know how we can calculate composite XIRR and CAGR for a portfolio.
    Let say, I have a portfolio consisting of three different funds with uneven inflows and outflows.
    I find out XIRR and CAGR for all three funds separately. How these individual returns will be composite to show a return (XIRR and CAGR) on Portfolio.

    Reply
    1. pattu

      Hi Gaurav, There are two ways one can do it.

      (1) Fund A gives 10% return and constitutes 40% of investment value
      fund B 11% return and 30% weight
      fund C 12% return and 30 weight

      So net XIRR is = 10%*0.4+11%*0.3+12%*0.3
      This is known as a weighted sum

      (2) The other way is to integrate the cash flow for all funds get a single XIRR. This is what I do for my NPS account.

      if you send me a file with sample data, I can show you how to put it together.

      Keep visiting.

      Reply
  5. Gaurav Agarwal

    Dear Pattu,

    I think the second way is the correct method to find out exact return on a portfolio. In most of the cases the investment date or withdrawal date of various assets is different. Then how we can get actual return via using simple weighted average method.
    Please provide you e-mail id so that I can send you a sample excel sheet which comprises of three funds having different inflows & outflows and have different dates of contribution and withdrawal.

    Reply
  6. Gaurav Agarwal

    Dear Pattu,

    I think the second way is the correct method to find out exact return on a portfolio. In most of the cases the investment date or withdrawal date of various assets is different. Then how we can get actual return via using simple weighted average method.
    Please provide you e-mail id so that I can send you a sample excel sheet which comprises of three funds having different inflows & outflows and have different dates of contribution and withdrawal.

    Reply
  7. B.Panczak

    Finally, an explanation of the "XIRR bug". You might be the only one to have explained it.
    Now I can sleep again.
    Thanks

    Reply
    1. pattu

      Thanks. There are two issues:

      1> Multiple solutions which make XIRR return an error. this is not a bug.
      2> incorrect convergence. This is a bug.

      I will soon be post a XIRR solution validator. Stay tuned!

      Reply
  8. B.Panczak

    Finally, an explanation of the "XIRR bug". You might be the only one to have explained it.
    Now I can sleep again.
    Thanks

    Reply
    1. pattu

      Thanks. There are two issues:

      1> Multiple solutions which make XIRR return an error. this is not a bug.
      2> incorrect convergence. This is a bug.

      I will soon be post a XIRR solution validator. Stay tuned!

      Reply

Do let us know what you think about the article