The Math Behind Excel’s CUMIPMT() & CUMPRINC() Functions

I published the math behind the CUMIPMT() & CUMPRINC() functions at the bottom of my spreadsheet for the post Annuity – Excel Functions and Math. I think it got lost in all the annuity math. When I Google the math for these two functions, my blog doesn’t show up until the 6th or 7th page, depending on the wording of the search. I see the question asked without a real answer, so I am posting the formulas again by themselves. I am also doing it because it is my blog and I can.

Download “CUM



Also the math for a single row of a simple amortization schedule:

cum2Download “CUM

Don Pistulka
Don Pistulka

Retired Credit Union CFO - Finance
Background: over 40 years in investments, asset/Liability management, banking, securities trader.
Worked for: California Credit Union, WesCorp, CalFed S&L, Crocker Bank, Carroll McEntee, Federal Home Loan Bank Board (D.C.), Western Asset Management, Security Pacific National Bank.


  1. Hello!

    How did you get payment $2302?

    I’ve got 41666 by this calc 100000*5/(12*(1-pow((1+(5/12)),-48)))

  2. hello!

    how did you get payment $2302?

    is there anything wrong in my calculations 100000*5/(12*(1-pow((1+(5/12)),-48)))?
    I get 41667 everytime

  3. There is any way to use CumIPmt in a matrix range?
    Ex: {SUM(CumIPmt (i/q;n;p;b;e;0)}

  4. Dear Don

    Based on your excel file, CUMPRINC requires i,q,n,p,b,e for parameters. But your function requires i,q,m,p,b,e. How to convert “n” parameter in CUMPRINC to “m” parameter in cell G14/G17

      1. If we have rate of interest calculated on monthly basis, does this become
        m = balance * apr / (1 – 1 / ((1 + (apr)) ** term))

        1. Atul,


          Using the default data on my example:

          Unless you meant that the rate was divided by 12, before calculating the formula. Then your formula would work.


      2. Hello!

        How did you get payment $2302?

        this 100000*5/(12*(1-pow((1+(5/12)),-48))) gives me 41666.66895195165 not 2302

  5. Hi

    The CUMIMPT formula does not make use of the payment amount (m), however, your mathematical formula does use it. As much as you are getting the same result as the formula, I would imagine there is a different mathematical formula powering the function.

    1. Hi Keldon,
      The reason the Excel formula does not ask for M (payment) is that the inputs it does ask for are enough to calculate the payment. So asking for the payment is not necessary.

Leave a Reply

Your email address will not be published. Required fields are marked *