CPP and OAS as part of a retirement plan

One of the confusing questions I got from my international colleagues when I announced my retirement was “what’s the retirement age in Canada”? And, after thinking about it, said, “There isn’t one that I know of”, which is, strictly speaking, correct.

However, for many Canadians (and, I suppose, for many people around the world), “retirement age” equates to “the age where I can collect my pension”. For me, the equivalent statement was “the time when my retirement savings were sufficient1” (you can read about the steps I took here). I don’t have a private pension through my employer, so CPP, OAS and my own savings are all I have to sustain my needs throughout retirement.

CPP (Canadian Pension Plan) and (possibly2) OAS (Old Age Supplement) are two sources of income that will eventually make up part of my retirement income, but not for a while. For the time being, my retirement income comes from a mix of non-registered asset sales (about 2/3 of my 2025 household income) and RRIF payments (about 1/3 of my 2025 household income)3. My advisor suggested waiting as long as possible to collect on CPP/OAS, which is age 70 for both.

But maybe, if you haven’t retired yet, you haven’t really thought too much about these things4? Here’s a quick primer.

What’s CPP and what’s it worth to me?

CPP applies to anybody who has contributed to the plan; how much you contribute annually is captured on your T4 slips. You can see your lifetime contributions5 by logging into your My Service Canada Account. It is the history of these contributions6 that ultimately determine what your annual pension will be in the year you first start taking it.

The first year you are eligible to receive CPP is the year you turn 607; every month you wait after turning 60 increases your monthly payment. The absolute maximum CPP you could collect would be waiting until you turn 708. The Feds lay it all out here.

The absolute maximum monthly CPP you could possibly get as a 65 year old is $1507.65 in January 2026 per the Feds9. Since I retired early, and 18 year-old me worked a part-time minimum wage job, my CPP will be less than that. (The CPP calculation takes your best 32 years of earnings into account).

What’s OAS and what is it worth to me?

OAS (“Old Age Security”) applies to anybody who has lived in the country long enough10. OAS can start at age 65, and be delayed until as late as age 70. Like CPP, OAS rewards those who start payments later than age 6511. You get an OAS supplement of 10% when you hit 75.

The absolute maximum monthly OAS payment in the first quarter of 2026 is $742.31 if you’re under 75 and $816.5412 if you’re over per the Feds. (These amounts are adjusted every quarter in accordance with inflation rates.)

The wrinkle with OAS is that it’s income-tested. If you make too much money, you’re going to have to pay some of it back. If you really make too much money, you’ll have to give it all back. This is commonly known as “OAS Clawback”13.

The magic of CPP and OAS

CPP and OAS payments are both indexed to inflation, for as long as you collect it. This is key for me personally — none of my other income sources are inflation-proof, so the more I can get that is inflation-protected, the better. That’s part of the reason I’m planning on delaying collecting CPP and OAS until I’m 70 — that way, I can maximize the inflation-protected income. The other reason I’m delaying these payments is to try to avoid OAS clawback. The earlier I take RRIF money out, the lower my RRIF income will be later in retirement, when I have to start adding CPP to my income. I have no idea if I will avoid the clawback because it depends on the performance of specific elements of my portfolio. But try I will.

Estimating CPP and OAS for VPW

My decumulation strategy is based on VPW (Variable Percentage Withdrawal). I’ve talked about it previously over here and here. VPW requires, as an input, the value of a future pension. So how do I go about estimating that? Any reasonable estimate might want to ignore what the feds put on the periodic CPP summaries they send out because those estimates are assuming you’re retiring at 65, and working at a similar salary level (of course, if that’s your plan, then it’s perfectly fine — but it wasn’t mine :-))

All good estimates start from the lifetime contributions table you can find at My Service Canada. From there I’ve given a few tools a spin:

PWL Capital Tool

https://research-tools.pwlcapital.com/research/cpp

This tool has a lot of neat features, but be careful. The model bakes in both inflation estimates and wage inflation estimates that are changeable, but not immediately obvious.

CPP Calculator

https://www.cppcalculator.com/

This is one I recommended previously in Tools I Use, but the upload feature has been broken for a while now. It still works by entering it manually, but I now prefer the tool below….

Finiki CPP and QPP Calculator

https://www.finiki.org/wiki/CPP_and_QPP_calculator

The Finiki tool is now my favourite because it’s available as a worksheet (Google Sheets, Excel and Libre Office all supported), and all you need to do is enter in your pension contributions. The current version (2.3) hasn’t been updated with the latest YMPE values, but it’s a trivial exercise to update them.

  1. “sufficient” means different things for different people. You have to have a budget, and you have to have an idea what sort of estate, if any, you’re intending to leave behind. ↩︎
  2. I figure my odds are 50/50 that my combined CPP+RRIF income when I hit 70 will render me ineligible for OAS. ↩︎
  3. I am not planning on actually working for a living anymore; there are all kinds of rules concerning the interplay of CPP and employment income, but I’m not talking about them here because that scenario doesn’t apply to me. ↩︎
  4. Or, if you were a cynic like me, figured that it wouldn’t exist by the time I got to an age where I’d be collecting it. Seems like the pension plan is currently in pretty good shape. ↩︎
  5. Starting at age 18. ↩︎
  6. Mostly. If you took a leave from employment to raise a family, there is special treatment which could increase your pension. ↩︎
  7. You get 36% less of a monthly payout by starting at age 60 compared to age 65. ↩︎
  8. You get 42% more monthly compared to age 65. ↩︎
  9. You would have to be at maximum pensionable earnings for 39 years between the ages of 18 and 65 to get this amount. (47 years less the 8 worst years of earnings). ↩︎
  10. OAS can be estimated by using the Canada.ca calculator which is down at the moment: ↩︎
  11. Details at https://www.canada.ca/en/services/benefits/publicpensions/old-age-security/when-start.html ↩︎
  12. Which, if you’ve been paying attention, is 10% more than the benefit for someone under age 75. ↩︎
  13. OAS is progressively reduced if you make more than $95k in 2026. You get no OAS at all if you make more than ~$155k at ages 65-74, $160.5k for ages 75+. These numbers are modified 4 times a year based on inflation. ↩︎

Top Five Money Engineer posts of 2025

The Money Engineer launched in January 2025 and according to the WordPress stats, I made 144 posts last year. What were the most viewed posts of 2025?

5th-ranked post of 2025: ZGRO versus ZGRO.T

I got wind of ZGRO.T through Reddit, specifically r/CanadianInvestor. ZGRO and ZGRO.T are both all-in-one asset allocation ETFs from BMO, but with vastly different yield characteristics. I was confused, but in the end, decided that ZGRO.T was probably not a bad pick for use in a RRIF account as it might save you the hassle of selling shares. Their TOTAL returns (assuming all dividends are invested) are effectively identical.

4th-ranked post of 2025: Spousal RRIF Attribution Rules

I think I was first warned about this nuance of spousal RRSPs/RRIFs by my DIY neighbour (thanks, Steve) and is the main reason I’m only drawing RRIF minimum for the next two years1. I think most of the visits to this article were search-driven. Either that, or people came to admire what might be my favourite article thumbnail2 I’ve posted thus far.

3rd-ranked post of 2025: Norbert’s Gambit with Questrade

As someone who holds more USD-denominated assets than might be wise, I do very much appreciate the existence of a cheapskate way of converting between USD and CAD assets. I think I first learned about this trick via The Loonie Doctor’s blog. The #3 blog entry explains how it works if Questrade is your broker. I would also recommend https://moneyengineer.ca/2025/08/21/tracking-norberts-gambit-costs-with-questrade/ for a very clear picture of what it actually costs (in time and fees) to execute the Gambit: in three of four instances, the time delay of executing the gambit has worked in my favor as the FX rate has drifted a bit to my advantage.

2nd-ranked post of 2025: TD versus iShares all-in-ones

I’m a fan of all-in-ones (and am a little sad https://moneyengineer.ca/2025/01/21/why-you-can-fire-your-advisor-asset-allocation-etfs/ didn’t crack the top five last year). I am genuinely puzzled why people seem to get so wound up about which family of all-in-ones to choose3. I examined TD’s only because their cost to own is a bit cheaper than iShares (who I use primarily), and I’m a cheapskate. (I studied the cost of owning an all-in-one here.) Anyway, in the end, the biggest difference is visible in TGRO versus XGRO because TGRO, unlike any other GRO ETF, uses 10% bond allocation and not 20%. This gooses its return a bit, at the cost of additional volatility. Otherwise, it’s a case of tomato/tomahto. Pick one, or pick them all, it doesn’t matter much.

Top ranked post of 2025: Mini-Review of Optiml.ca

This was, as the title implied, a quick review of a made-in-Canada tool to help craft a retirement plan. And again, my DIY neighbour gave me a heads-up about it4. It got a lot of interest, probably because the kind folks at Optiml linked to my review from their website ;-). I was impressed by the completeness of the tool during my test drive, and it seems like a good and fairly priced way for a DIYer to do some validation of their retirement plan. Having validation of my plan was one of the ways I knew I could retire.

Looking forward to seeing what the 2026 list might look like! Got a topic or question? Send it along to comments@moneyengineer.ca, or comment below!

  1. RRIF minimum withdrawals are never subject to spousal attribution ↩︎
  2. Courtesy Pexels free photos, built into WordPress’ editor. ↩︎
  3. iShares, TD, BMO, Vanguard, Global X…. ↩︎
  4. Thinking he should write his own blog, maybe. ↩︎

RRIF, TFSA, non-Registered…what do you do with each?

My retirement fund is divided amongst a bunch of different accounts: RRIFs, TFSAs, non-registered. And although I present them as a monolith in my monthly updates (latest one here), I don’t treat them the same way and they have rather different things inside them.

I don’t claim to have a fully optimized portfolio; a thoughtful reader was asking me questions about tax implications of my current holdings, and I admittedly haven’t given a ton of thought to that. But I will in a future post 🙂 .

So, in other words, you’re getting my current thinking for what I hold where. It may not be ideal. But at least you see why things are the way they are.

Below you can see how my retirement funds are divided amongst my various investment vehicles. This one is accurate as of January 8, 2026, and is greatly facilitated by tracking my stuff in Google Sheets. There’s a basic template of what I use over here1.

Retirement portfolio, divided by account type, January 2026

So that’s where it’s at. How do I treat the three main segments of the pie?

RRIF

So the RRIF is clearly the largest piece of the retirement pie and will be around for some time, possibly for the rest of my life. At this point in time, I’m only taking RRIF minimum payments which are recalculated every year and are based on my age and the value of my RRIF on December 31 of the previous year.

I am taking RRIF minimum primarily because I want to avoid the hassle of spousal RRSP/RRIF attribution that I talk about here. RRIF minimum is quite a bit less than the expected return of this account given the holdings therein, mostly AOA and XGRO:

I periodically (once a quarter) shift funds from AOA to XGRO using Norbert’s Gambit2. How much? Well, at the beginning of the year, I see how much of my RRIF is in USD. I then multiply that by my RRIF age factor3, divide by four, and presto, I have a quarterly amount I should move.

All of my many RRIF accounts4 have XGRO, and on the day I make my payday calculations, I have a spreadsheet that calculates how many shares of XGRO I need to sell in each account given the current price of XGRO and the amount of CAD happens to be kicking around in a given account. In very rare circumstances, I might (as well/instead) sell AOA if I had a need for US cash5.

The small contribution of ICSH here is because I have a 5% “cash” asset allocation in my portfolio, and I needed someplace to keep this monthly income. RRIF seems as good a place as any, especially since all those monthly dividends are completely tax-free as a result.

In the coming years, the RRIF will take on more and more of my monthly spending needs. Once the attribution time period has lapsed, I’ll probably take more than RRIF minimum from here in an effort to reduce taxes for older me — once I start collecting CPP/OAS as well as RRIF payments, I could find myself in a taxation world of hurt. Making my RRIF smaller will help, but there is no free lunch. You either pay taxes while you’re alive, or your estate will pay them when you’re not.

Non-Registered Accounts

I really have two kinds of non-registered accounts in my retirement calculations, and they have very distinct usages. Let’s see the difference:

The “legacy” non-registered accounts are long-standing accounts that have grown over the years of accumulation. They are held in my name and my spouse’s name and taxed accordingly. These accounts, specifically the one in my name, account for probably 2/3 of my current income. Every time I withdraw from these accounts, I have to account for capital gains, which is fine, since the taxation treatment of capital gains is generous. You’ll also notice that this account is 100% equity. And as previously noted, the dividends thrown off these investments is not particularly noteworthy (not zero, but nothing a dividend-focused investor would get excited about). That’s why you see funds like HXDM and HXS here, to explicitly avoid dividends. This portion of my non-registered funds is targeted to eventually go to zero in the next few years, probably before I start collecting CPP. That’s a tax avoidance strategy, no idea if it will work out in my favour.

The “cash cushion” non-registered holdings are 100% in ultra-short term bond funds, which to my way of thinking, is equivalent to cash. This account exists because I use VPW as a decumulation strategy, and the cash cushion helps smooth out my monthly salary. Sometimes I add to the cash cushion (directly from my other non-registered account) and sometimes I pay myself from the cash cushion. You can read all about how it works at The Mechanics of Getting Paid in Retirement. Here I keep a bit of uninvested cash floating around in an effort to reduce the number of buys/sells I have to do here. The capital gains are quite minimal in these funds since both ICSH and ZMMK stay close to $50/share6 but it’s possible to make minor gains/losses7 depending on the exchange rate and day of month I make the purchase/sale.

TFSA

The TFSA, per the plan prepared for me by my fee-based advisor, (part of the steps I took to figure out that I had enough to retire) is the last account to decumulate. I continue to contribute to my TFSA monthly, like I have ever since TFSAs were a thing. That would be an “expense” I could cut if needed, I suppose. It tilts heavily towards equities8:

Besides XEQT, you currently see XSH, a bond fund9. This exists in order to keep my target asset allocations in line, and because I don’t really want the monthly distributions landing in a taxable account. Perhaps that holding would be better in my RRIF? There’s also XIC here, which is a Canadian equity fund, necessary to offset the heavy US equity contribution made by AOA.

  1. Over the holidays I’ve started on a new template that makes heavy use of pivot tables, which I do like quite a bit. ↩︎
  2. You can track my progress over at Tracking Norbert’s Gambit Costs with Questrade ↩︎
  3. Per https://www.canada.ca/en/revenue-agency/services/tax/businesses/topics/completing-slips-summaries/t4rsp-t4rif-information-returns/payments/chart-prescribed-factors.html, it’s “1 divided by (90 minus my age)” until I turn 70. ↩︎
  4. Hopefully in a week or two it will be down to five. ↩︎
  5. I do have a USD bank account (via CIBC) and a US credit card (ditto) to avoid FX charges, but my shiny new Rogers Red card also provides sufficient cashback on USD transactions to wipe out the extortionate FX rates charged by credit card companies. ↩︎
  6. Reverts to around $50 on its ex-dividend date, late in the calendar month. Except January, where ICSH doesn’t distribute at all, instead distributing twice in December. ↩︎
  7. Losses are unlikely because I trade frequently enough to fall under superficial loss rules. Best explanation of how this works at https://www.adjustedcostbase.ca/blog/what-is-the-superficial-loss-rule/ ↩︎
  8. Longer timeframe = higher risk acceptable = more equities ↩︎
  9. Here is a bit of problem. XSH is a short term bond fund; by rights, this should be a long term bond fund since the timeline of the investment is longer. Sigh. I picked this one because (a) it had corporate bonds and (b) it had a very low MER. ↩︎

Retirement Portfolio Annual Review

Happy New Year! A new year means it’s a good time to take a look at what went on in the retirement portfolio.

Let’s start by comparing the makeup of my portfolio at the beginning of the year versus my last update:

PositionJanuary 2025December 2025Notes
AOA: USD 80/2052.2%51.3%Used for RRIF payments1
XGRO: CAD 80/2020.2%18.6%Used for RRIF payments
ICSH: USD short term bond0%4.4%Cash cushion, plus additional “cash” inside RRIF2
ZMMK: CAD short term bond0%0.6%Cash cushion CAD funds
SCHF: International Equity2.8%1.9%Used for monthly salary; held only in non-registered
XEQT: CAD 100% Equity0%6.5%Mostly in TFSA
HXT: CAD Equity7.4%6.3%Used for monthly salary; held only in non-registered
XIC: CAD Equity5.3%6.1%Did not add or subtract from this holding this year
DYN6005: USD HISA3.7%0%Replaced by ICSH
DYN6004: CAD HISA2.6%0%Replaced by ZMMK
HXS: USD Equity2%0%Sold off from non-registered accounts to fund monthly expenses
VCN: CAD Equity1.8%1.1%In TFSA; reduced in favour of XEQT

What didn’t change much

The portfolio is still dominated by XGRO and AOA (not coincidentally, these are two of my ETF All-Stars) and they both had excellent years, as shown by this tool:

What also didn’t change is my overall approach: decisions for shifting funds is totally dependent on maintaining my asset allocations that haven’t changed either:

  • 5% in cash or “cash like” holdings
  • 15% in bonds
  • 20% in Canadian Equity
  • 36% in US Equity
  • 24% in International Equity

This approach meant that what I sold off in my non-registered portfolio to fund my day to day expenses changed throughout the year; as the year progressed I sold HXDM, then HXS (reducing this to zero), and then finally HXT, all in the service of keeping my assets in line with my targets.

What did change

As a result of changing brokers (QTrade to Questrade), I lost the ability to cheaply hold HISAs. And so I had to change tactics and hold “HISA-like” ETFs instead. (which, on Questrade, like all ETFs, can be bought and sold at no charge). At the same time, I realized that I could increase my returns by shifting more to the US market. Significantly higher interest rates in the US means that I can get more for my “safe” funds, with the small annoyance that I have to deal with USD. You can see the latest rates on my frequently updated page.

As I sold off “pure” equity funds from my non-registered accounts, I had to make changes to keep my bond percentages aligned with my targets3. This is the reason XEQT (a global 100% equity fund) now makes an appearance in the overall picture. The nice side-effect of adding XEQT is that my portfolio is now 76% held in all-in-one funds, up about 4% from the beginning of the year. All-in-ones do the rebalancing for you, which is a good way to avoid bad behaviours.

Behind the scenes I also tried to better focus each of the account types to make things simpler and clearer:

  • TFSAs are now 90% equity, with the rest held in bonds. The rationale here is that TFSAs will be the last things I touch to fund retirement, and hence have the longest time horizon. There are still too many individual ETFs here, and my January resolution is to simplify this further.
  • RRIFs now have only three funds: AOA, XGRO and ICSH.
  • Investment accounts will remain a bit chaotic as most of my retirement expenses are coming out of these. It also happens to be the place where my “free money” payments end up and so there is a small amount of inbound cash to purchase things with. The 2026 plan is to continue to draw down my non-registered funds since my spouse is still working and would be taxed higher on her capital gains.

What’s ahead in 2026: RRIF

My own calculations4 show that my household RRIF-minimum income will be up 19% YoY, a result of good returns in the RRIF (roughly 11% YoY by my calculation) and being a year older. Selling XGRO every month will cover the required payments, and quarterly I will shift a portion of AOA into XGRO, converting the USD to CAD using Norbert’s Gambit.

What’s ahead in 2026: TFSA

January will see an effort to reduce the number of ETFs here. There are multiple CAD equity ETFs which I should consolidate into one, for instance.

We continue to contribute monthly to the TFSAs. The goal is to maximize equity percentage while minimizing the number of funds held. Once the cleanup is done, I expect to purchase XEQT monthly. Questrade introduced automated investing which I’ll likely set up to accomplish this.

What’s ahead in 2026: Non-Registered Accounts

The same strategy as 2025 will continue. Shortfalls in my monthly salary will be covered by selling assets in the non-registered accounts. I ended last year up 2% YoY in my non-registered accounts; I don’t really expect a repeat there. All things being equal, I should be down in my non-registered accounts at this time next year.

  1. Indirectly. I haven’t tried to do a USD withdrawal for a RRIF payment, but in theory it should be possible. Instead I convert my AOA into XGRO a little at a time using Norbert’s Gambit. ↩︎
  2. My VPW cash cushion is about 50% of my cash position in the retirement portfolio. The other 50% of my cash position is inside the RRIF in order to avoid taxation on those monthly distributions. ↩︎
  3. AOA and XGRO are both 20% bonds, not 15%, and so mathematically this has to be offset with 100% equity somewhere in the portfolio. ↩︎
  4. My providers will give me the real numbers sometime in the coming weeks. How much hassle this will be is TBD. ↩︎