2024 Canadian Retirement Benefits Calculator (CPP and OAS)

 

 

Note: this tool was last updated on March 1st, 2024, to reflect the latest 2024 figures for max pensionable earnings (for CPP), and max benefit (for OAS)

Download the Excel version here (recommended!)

Download the Google Sheets version here

 

Retirement Benefits for Canadians (CPP and OAS)

The Canadian government operates two main programs to provide financial assistance to Canadians who have reached retirement age. These programs are the Canada Pension Plan (CPP) program and the Old Age Security (OAS) program.

Let’s be clear – the CPP and OAS retirement programs will likely not be able to fund your living expenses in their entirety.

However, they do provide a great safety net. Canadians receiving benefits from these programs today are able to receive a maximum payment of over $20,000 per year.

Getting a good grasp on what these government benefits are and how they are calculated will help us get an accurate assessment of how prepared we are for retirement.

 

Overview of the Canada Pension Plan (CPP) Benefit

The Canada Pension Plan (CPP) is a program that working Canadians pay into during their career, and receive benefits from when they reach retirement age. Money is deducted directly from each paycheck, and the government in turn provides payments back to you when you reach retirement age.

Nearly all Canadians who work in the country contribute to this program (or the Quebec Pension Plan – QPP – if you work in Quebec).

The main features of the CPP program are:

Starting in 2019, the CPP program will begin to be ‘enhanced’. Working Canadians will begin to contribute a higher percentage of their income towards the CPP, and in exchange they will receive a higher CPP payment during retirement age.

The Canadian government also has a CPP calculator on their website; however, the advantages of using my calculator are:

This calculator does not currently include QPP calculations for those who work in Quebec; however, the CPP and QPP programs provide similar benefits, so the CPP calculations can be used as a proxy for what you’d receive from the QPP.

 

How to Calculate Your CPP Benefit

If you haven’t done so already, please download the tool. Links for the Excel / Google Sheets versions are at the top of this post; I’d recommend using Excel if possible. Navigate to the “CPP” tab of the spreadsheet. You’ll need to fill in a few assumptions, and the spreadsheet will then spit out the answer. Input your assumptions in any cell which is highlighted in yellow.

CPP and OAS assumptions: age, income, retirement age, life expectancy, discount rate

You will also need to input your income earned from age 18 up until the current year, starting on cell D34 of the spreadsheet.

Your projected income over time

The calculator will then forecast your future income based on the assumptions you entered earlier. As an optional feature, if you want to manually ‘override’ your forecasted income in a particular year, you can do that in column F (e.g., you can enter $0 for years in which you don’t plan on working).

You can also use the “Child-Rearing” drop out (CRDO) in column G. The CRDO allows Canadians to exclude certain low-earning years from their CPP calculation as long as the following rules are met:

The “Results” section of the spreadsheet will now give you your estimated CPP payment results. There is detail on the CPP amount you’d receive annually / monthly, your payment as a % of the max payment you could receive, how your payment would change based on if you started receiving it at age 60 up until 70, and the “optimal” age to start receiving your payment.

The optimal age shows you what age would maximize the present value of your future CPP payments, based on your assumed life expectancy and discount rate. Your ‘discount rate’ assumption represents how much less you value money in the future compared to money today. A 5% discount rate means that one dollar next year is worth 5% less to you than one dollar this year. I’d suggest using a discount rate of 3% to 7%, reflecting the annual investment return that could be earned on your money.

Your Canada Pension Plan (CPP) benefit. Shows how your payment would change if you start taking it at age 60 to 70.

Overview of the Old Age Security (OAS) Benefit

The OAS program is much simpler, and it is also much easier for Canadians to get the maximum benefit. The amount of money that you will earn from the OAS program in retirement age is based purely on the number of years in which you’ve lived in Canada. There is no requirement that you were earning income in any of those years.

The main features of the OAS program are:

How to Calculate Your OAS Benefit

Navigate to the “OAS” tab of the spreadsheet. Once again, fill in the assumptions in the cells which are highlighted in yellow.

Your Old Age Security (OAS) assumptions

After this, your OAS payment results will be shown in the “Results” section.

Your Old Age Security (OAS) payment results.

Final Thoughts

For further reading on these retirement benefit programs and instructions on how to apply (note that you need to apply to actually get your payments!), see these links for the CPP program and for the OAS program.

 

Many thanks and credits given to Doug Runchey, whose articles on the CPP program were an immense help in building this calculator.

Header image credit: Canada Currency

     

Moonshine Money: A Do-It-Yourself Guide to Personal Finance

A simple yet comprehensive guide to everything you need to know about managing your money, tracking your spending, getting out of debt, building wealth, and more. 100% free, like everything else here!

Comment Section

54 Responses to “2024 Canadian Retirement Benefits Calculator (CPP and OAS)”

  1. J. Barber says:

    I downloaded the spreadsheet and entered all required data. I then compared the results to the CPP site as I expected the values to be close. Unfortunately, the values are quite a bit off. Eg: CPP says at age 65 I should get 2 cents shy of the max per month but the spreadsheet says about $40 less per month. For age 60, the difference is about $190 per month. I have maxed out for 33 years and the other 2 are 97.8% and 99.8% after the drop outs. Any suggestions on what I can check as I have already triple checked all my values.

    Thanks!

    • Hi J,

      I went through the spreadsheet this morning and realized that I had to roll-forward one part given that it is now 2019 (happy new year!).

      Can you re-download a fresh version of the spreadsheet above and try again?

      The results will never exactly match the government calculator given that their formulas are not 100% transparent. However, I’m surprised to hear that the age 60 results are so far off.

      If there continues to be a big gap in results after you use the new spreadsheet, could you email your file to me at themeasureofaplan@gmail.com?

      I’d be happy to take a look and troubleshoot.

  2. J. Barber says:

    Thanks for taking the time to review / change the spreadsheet. Latest version has increased my monthly values for age 60 by $143 / month, age 61 by $158 / month, age 62 by $174 / month and age 63 by $189 / month. No changes to age 64 or 65.

    Does this mean the spreadsheet requires some “maintenance” each year on your part?

    Thanks again for all your work!

    J. Barber

    • Thanks for letting me know, glad to hear it is closer to what the CPP website is giving you.

      As it stands, the tool does require “maintenance” once a year. I’ll try to tinker around in search of a workaround.

  3. Gino S. says:

    I came across Doug Runchey’s article (https://retirehappy.ca/how-to-calculate-your-cpp-retirement-pension/) recently and appreciate that you have taken the time to develop this program based on. My simplified attempt didn’t compare well the estimate supplied by the Gov’t of Canada. Yours came a lot closer, although it is about $36/mth lower than theirs.
    Some suggestions: 1) In column D, instead of asking for actual income (for us older people, that might not be handy), ask for Pensionable Earnings. The Gov’t website provides this information by year since age 18 when you log in. The calculation actually doesn’t require one’s actual income. 2) In Assumptions section, your cell comment restricts entry to current age or later. Actually, it does work when you enter an earlier age. In my case, I am 61 and retired at 58. 3) In Assumptions sections, I don’t know if the Projected Future Annual Income cell is intended for employment income only. In my case, it would be nice to enter investment income here. I tried it by entering a figure but I did not change anything in the worksheet. Ideally, it would populate column F for post-retirement years.
    I haven’t yet checked out the features not directly related to the CPP calculation. Will comment if appropriate.
    Thanks again for this.

    • Hi Gino,

      Thank you for the thoughtful comments.

      – I’ve adjusted the column D label to be “Your Actual Income / Pensionable Earnings”
      – I’ve removed the requirement to enter a retirement age which is greater than your current age, in the assumptions section
      – The projected future income is supposed to be your estimate for pensionable earnings in the future (I have adjusted the label to make this clearer). Investment income does not count towards pensionable income.

      See this Government of Canada link on contributions:
      https://www.canada.ca/en/services/benefits/publicpensions/cpp/contributions.html

      Cheers.

  4. J. Barber says:

    I downloaded your latest spreadsheet (version 4) and entered age 59 in cell D5. I then tried to enter age 57 in cell D10 but got the error “Enter a valid whole number greater than or equal to your current age”. Based on your comment #2 to Gino above (I’ve removed the requirement to enter a retirement age which is greater than your current age, in the assumptions section), I expected this to work. Can you please advise if I am doing something working or have misunderstood your comment.

    Thanks,

  5. J. Barber says:

    Last year you mentioned the Canadian Retirement Benefits Calculator tool requires “maintenance” once a year. I’m checking in to see if it has been updated for 2020.

    Also, if it’s not too much trouble, possible to outline what requires changing each year?

    Thanks,

    J. Barber

  6. J. Barber says:

    Thanks for creating and maintaining these awesome tools!

  7. A. Bradley says:

    I also thank you! This spreadsheet has been very helpful, especially for the child-rearing drop out years!

  8. Christine says:

    Thanks very much for this,it looks like a great tool. I’m a bit confused about the results I’m receiving though. I’m getting:

    “Estimated that you will receive an annual CPP benefit of $10.636 per year ($886 per month) in real dollars: assumes that you begin taking your CPP payments when you are 65 years old”

    “Your CPP benefit is 80% of the maximum amount you could receive (assuming that you made maximum contributions through you career and started receiving CPP at age 65)

    The problem is, that based on the 2020 maximum benefit of $1,175.83 $866 per month is 73.7%. 80% of maximum would be $940. I’m not sure which amount is more accurate.

    I’m using the most up to date version. Is there a glitch or have I missed some nuance? I don’t have any entry for years with enhanced CPP, so I don’t think it is that.

    • Hi Christine,

      I’m not sure what the issue is, but my hunch is that the dollar amount ($886 per month) is more accurate than the % of max benefit (80%).

      Could you share your spreadsheet with me by email? I can take a look and troubleshoot if so.

  9. Steve says:

    Does this calculator take into account the new CPP enhancements introduced in 2019?

  10. April says:

    Hello,
    I just wanted to thank you for your understandable explanation of these two benefits. I had been reading on line for about an hour and google finally led me to your website. I wasn’t understanding the eligibility for the OAS on the CRA website at all.
    In regards to the GIS – is the CPP and OAS both considered your income in calculating the eligibility?

    • Hi April,

      Thanks for your comment.

      See here for a good article about GIS:
      https://www.moneysense.ca/save/retirement/pensions/guaranteed-income-supplement-application

      And the key excerpt —

      “The second requirement for GIS is your annual income (or combined income for couples) does not exceed the maximum annual threshold. The income thresholds for GIS are low. Service Canada says for GIS purposes, OAS benefits are not considered part of net income. But CPP/QPP, private pensions, RRSPs, and employment income together cannot exceed the following income thresholds.”

      So, to answer your question, CPP is counted as income for GIS purposes. However, OAS is not.

      I hope this helps!

  11. John Wotherspoon says:

    Hi there.
    I find this tool helpful and am looking to see if there will be updates for a 2021 version….I am copying and pasting the wording from a previous poster who put the ask in very good wording:

    I’m checking in to see if it has been updated for 2021.

    Also, if it’s not too much trouble, possible to outline what requires changing each year?

    Thanks,

    John

    • Hi John,

      I’ve just updated the spreadsheet for the latest 2021 figures on max pensionable earnings (for CPP), and max benefit (for OAS).

      Also, I’ve included notes on the “Change Log” tab about what I changed. These small tweaks need to be made each year.

      I hope this helps!

  12. […] Canadian Retirement Benefits Calculator (CPP and OAS … […]

  13. Charles says:

    I notice that in Version 6 the cell for the current year row (2022) is blank in Column K (Max annual pensionable earnings). This has the effect of making this a zero income year, regardless of the actual income you input in Column D. The end result appears to be that you lose one year of pensionable earnings (and possibly one of the best since it’s the most recent).

    Version 5 does not appear to have this issue.

  14. Mark McCormick says:

    Hi, Thanks for sharing this useful spreadsheet. I was wondering if you plan to update it for 2022.

    Thanks

  15. J. Barber says:

    Hi,

    Hoping you will be updating the Canadian Retirement Benefits Calculator for 2022 / 2023 as it is a great asset in determining at which age to start collecting CPP and OAS.

  16. m funk says:

    Can you explain nominal vs. real dollars?

    As I toggle back and forth, it changes the optimal age to receive CPP from 62 to 69.

    • Tim says:

      Real dollars (or today’s dollars) is the amount without taking into account inflation. Nominal dollars takes into account inflation. For example something that costs $100 today (real) might cost $120 (nominal) in the future due to inflation. (You’ll note that the inflation rate is greyed out when Real is your setting)

      I would expect the optimal age to not change however when switching between them so I’m wondering if this spreadsheet has an error.

  17. Bob A says:

    Thanks for sharing this very useful spreadsheet.
    I retired early (50) and now at 60 am deciding when to commence CPP. Your spreadsheet has been very helpful, especially with the math regarding “dropouts”, given that I already have more than 10 years of zero contributions, so each year of delay adds another zero year to the calculations.
    I have a question about whether the spreadsheet is correctly handling the CPP Enhancements for a person in my situation?
    The spreadsheet shows that I can get much higher 5-year average max earnings if I defer commencement long enough to take advantage of the 7% and 14% enhancements in 2024 and 2025. That is pushing my optimal age of commencement up to 67, vs. only 63 if I remove the effect of enhancement (by entering 1.00 in cells C138 and C139.)
    It surprises me that CPP Enhancement is affecting me at all: my last CPP contribution was years ago, before any of the CPP Enhancement provisions started. The official CPP “backgrounder” states: “The CPP enhancement will affect you only if you work and contribute in 2019 or later. If you are retired, not working, and not making contributions to the CPP, nothing will change and your CPP benefits will not increase.”
    To get more insight, I read the Doug Runcey description of the enhancements here: https://retirehappy.ca/enhanced-cpp/ which seems to support the view that enhancements won’t help me. He breaks the calculation into Parts 1, 2, and 3, and if I understand correctly, only Part 1 will apply to people like me whose entire contribution history was pre-2019. The 7% and 14% increases would only apply to a new parameter,”YAMPE”, which would only be used to calculate benefits for people who made enhanced contributions in 2019 or later.
    Appreciate your thoughts about whether I’m interpreting that correctly, and therefore whether I should remove the effects of enhancement when I analyze my situation?

  18. Rebecca Blanchard says:

    I downloaded the Excel file yesterday the annual payment for age 66 & 67 for CPP was showing #DIV/0!. I thought I had inadvertently changed a formula, so I redownloaded the file and entered my historical income again and it’s still showing the error.

  19. Dominic says:

    I have a more high level question. I assume that when you do your yearly “tweaks” you take into account the indexing of CPP/OAS based on inflation? Thank you for confirming.

  20. Mike says:

    Thanks so much for the tool. I am inputting pensionable earnings from my Service Canada details and have a question what to enter when we get to enhancement years. Do I only enter the base portion of pensionable earnings or do I add base plus the enhancement additional portion? Thanks again and I really like the detail your tool provides. Great job!

  21. Allison R says:

    Hi there,
    I have plugged in all my pensionable earnings. The age 65 number i get is $93 greater then what government site says. Ok, that’s not too far off. But then the age 70 number the calculator gives is 72% greater then the age 65 number it gave. Is there a way to figure out what is wrong? Should only be 42% bigger then the 65 number

    • Hi Allison,

      Thanks for your message. There was an error in the sheet. It should be fixed now.

      I have also updated the tool with the latest 2024 values for CPP max pensionable earnings.

      Can you please try again and let me know if it’s working for you?

  22. Dave says:

    Hello. First, let me just say thanks for making this CPP calculator available.

    I took my contribution values from the Version 7 of the spreadsheet and put them into this new Version 8, but I have a question about the D11 value. This is the “Age at which you start taking CPP”. Does this value get used in calculations or is it just for highlighting the corresponding row in the Results section?

    After I put in my contribution values it generated the Results for ages 60 to 70. But I noticed that if I changed the D11 value, those results also change. Perhaps I am misunderstanding something basic here, but I would not have expected the Results to have been recalculated differently as the same contribution values are still being used (and in Version 7 of the spreadsheet the Results do not change as I change D11).

    For example, keeping all parameters the same except for D11, if I had D11 set as 65, I had results such as:

    60 9526
    61 10,596
    62 11,670
    etc

    But if I changed D11 to 60, the results are now:

    60 10,080
    61 11,216
    62 12,351
    etc

    • Craig says:

      I see the same thing. I am confused by that as well.

      Also, the numbers I see for Version 8 are lower than for Version 7 with all the same input. I would have thought I’d see higher numbers with CPI adjustment.

      Thank you

  23. Teresa says:

    Hello, what if I received CPP Disability for 12 months in 2018. How do I account for this on the Spreadsheet?

  24. Teresa says:

    Hello
    How do I take into consideration CPP Disability income for 12 months in 2018?

    Look forward to your response

  25. Elaine De Marzo says:

    Is there a “way” to know income since 18 yrs old via an online service in Canada? I have not kept track of income since 18 yrs old, and CRA/My Services Canada will only show last 10 years.

    Thank you

    • Hi Elaine,

      Please try checking your CRA account to see if you access your tax return / notice of assessment for the other years. You should be able to find your income amounts in those documents for each year.

    • George says:

      Hi Elaine,

      You don’t need the income value at all, is not used in the calculation, you should be able to get the pensionable earnings from my service Canada website. What matters is if those pensionable earnings have reached the maximum value or not, for how long you are contributing and when you will take your pension.

      You can input 1 million dollar per year since age 18 but all that will cause is the yearly pensionable earnings to be maximized

  26. Steven Gosselin says:

    Absolutely love the spreadsheet, thanks!!! Quick question: Why aren’t the max annual pensionable earnings adjusted for inflation (or average CPI increase) after the present year (column K). Without doing this, the 5-Year Average Max Contribution calculation uses 5 years in the future but instead of having inflated values, they are all the same as 2024 value. It seems to me this has the overall effect of low-balling the final monthly cpp calculation

  27. Steve says:

    Nevermind, I see the real/nominal toggle addresses this.

  28. Jax says:

    Excellent worksheet! Thank you for creating this. I have a question (for anyone willing/able to answer 🙂 )
    If I select ‘nominal’ (in the future projection field), and choose 0% inflation, shouldn’t the values returned be the same as the values if I selected ‘real’ ?
    I’m not an accountant/financial professional, so this is probably a silly question with a simple answer.
    P.S. I realize 0% inflation in future years will never happen, I was just experimenting with the values and the various ‘assumption’ fields, and noticed this.

  29. Jax says:

    Update on my recent question regarding the ‘nominal’ and ‘real’ results for future CPP benefits.
    If I set inflation to 0% (while selecting Nominal in ‘D8’), I assumed that I’d get the same number as when I selected ‘real’. This is the case, if I state that I’m 65 this year. But, if I state that I’m anything less than 65 (i.e. not retiring this year), the results with Nominal set @ 0% inflation and Real values are different. There is always a 7.67% difference between the two. Is this an expected result and I just don’t know how this works (which is probably the case)?

Leave a Reply

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