A Modern Adjusted Cost Base App for Canadian DIY Investors

A Modern Adjusted Cost Base App for Canadian DIY Investors

When investing or making trades in a taxable (or non-registered) investment account, you may realize what are known as “capital gains” or “capital losses”. Basically, you made money or lost money.

In this article, I’ll share some back-to-basics adjusted cost base concepts that apply to taxable investing and more importantly thanks to this guest post, share a Modern Adjusted Cost Base App for Canadian DIY Investors.

What is Adjusted Cost Base (ACB)? Why does it matter?

Adjusted Cost Base (ACB) is the total, adjusted value of an investment or property for tax purposes, calculated as the original purchase price plus acquisition costs (commissions, fees) and capital improvements.

This is it:

“…usually the cost of a property plus any expenses to acquire it, such as commissions and legal fees.

The cost of a capital property is its actual or deemed cost, depending on the type of property and how you acquired it. It also includes capital expenditures, such as the cost of additions and improvements to the property. You cannot add current expenses, such as maintenance and repair costs, to the cost base of a property.”

Source: Government of Canada.

In short, ACB matters for taxation and income reporting purposes, to our friends at the CRA:

  • if you sold something, a taxable asset for more than you paid for it, there is a (capital) gain.
  • if you sold something, a taxable asset or less than you paid for it, you’ll have a (capital) loss.

Note: Capital gains do not need to be considered in registered accounts like TFSA, RRSP/RRIF, LIRA/LIF, FHSA, or an RESP. Do not worry about them. 🙂

Why does it matter?

Taxable assets that appreciate in value will be taxed.

Taxation of assets in Canada is also different – which can make things even more confusing!

Here is a quick example:

Weekend Reading - Taxation of Income

Source: RBC.

The rest of this post was written by Mitchell, a software developer who’s worked in hospitality, health, sports, and banking over the years, but personal finance has always been a passion of his – so much so, he has built a Modern Adjusted Cost Base App for Canadian DIY Investors.

Read on!

Mitchell, welcome to the site, tell us about yourself!

Thanks so much, Mark!

Yes, my name is Mitchell and yes, I’m a software developer. Personal finance and investing has been an interest since my first paycheque in middle school. On the march toward financial independence, I maxed out my registered accounts and started looking to non-registered accounts (like you did, Mark!)

That’s when I learned about Adjusted Cost Base.

At first I tracked this in spreadsheets, then in some online tools that others had mentioned. I found them dated or tedious, and some charged for features that seemed too simple to gate behind a paywall. I kept telling myself I’d build something better.

Eventually it worked its way to the top of the list and myacb.ca was born.

MyACB

There’s a strong DIY investing community in Canada worth contributing to, and if MyACB makes non-registered accounts a little less intimidating for someone, or gives an existing spreadsheet tracker a second set of eyes on their numbers, that’s the whole point.

Amazing. Let’s go back to my site for a bit, how did you find me?

Over the years, I’ve dipped in and out of Canadian personal finance forums, subreddits, and blogs, often landing on posts like yours when going down rabbit holes about investing and what it actually takes to reach financial independence in Canada.

A few of your pieces have really stuck with me and quietly shaped how I think about my own financial independence journey. Today I’m not lurking but sharing something I built with the community and your site is a great home for that…

Love it. Congrats on your financial independence too. OK, in your own words, why does ACB matter?

If you invest in a non-registered account in Canada, Adjusted Cost Base (ACB) is how the CRA determines your capital gain or loss when you sell – what you wrote above.

The idea is simple: ACB is the average cost of your shares.

Example, just using XEQT for a quick example (not a recommendation by myself or Mark):

Buy 100 shares of XEQT at $20, then 100 more at $22. Total cost: $4,200 across 200 shares, so your ACB is $21.00 per unit. Sell all 200 at $25 and your capital gain is ($25 – $21) × 200 = $800. With a 50% inclusion rate, $400 gets added to your income for the year and taxed at your marginal rate. Easy enough, right?

The complication is that buying and selling aren’t the only things that affect your ACB. Several other events affect it, many of them invisible in your brokerage account, but all of them are your responsibility to track.

With the rise of ETFs in most Canadians’ investment portfolios, this isn’t something you can ignore. These funds issue distributions every year and within those distributions, two components directly affect your ACB: return of capital reduces it, and reinvested capital gains (often called phantom distributions) increase it. Your broker will issue T3 slips that show your total distributions, but your book value on your brokerage statement almost certainly doesn’t reflect the ACB impact of these components. Hold any given ETF for a few years without applying these adjustments and your ACB drifts. Overstating your ACB means you underpay the CRA and risk reassessment. Understating it means you overpay.

The identical property rule adds another layer. The CRA requires you to pool all shares of the same security across every non-registered account you hold. Hold XEQT at both Questrade and Wealthsimple? Those go into the same ACB pool. Of course, neither broker can see the other’s records, so neither one could even attempt to do this correctly for you.

Then there’s the superficial loss rule: sell a security at a loss and repurchase within 30 days and the CRA denies that capital loss. It doesn’t disappear though, it gets added to the ACB of the repurchased shares. Miss it and you’re either overclaiming losses or understating future gains.

So, it can be complex. 

So where does MyACB come in? There are other tools and spreadsheets you can use or build on your own to do this?

You’re right. 

Tracking your ACB correctly isn’t conceptually difficult but it sure can be tedious and error-prone to enter manually and build things on your own.

I built MyACB to make it fast and simple, with the Canadian DIY investor in mind. The goal from day one was to aim for a feature-rich free tier that handles the real complexity, not just the easy parts.

Here are some great features your DIY readers should know about:

1. Import your transaction history in minutes. Unlike other tools, you can upload your brokerage’s transaction CSV export and the import wizard walks you through mapping the columns. There’s a community-submitted marketplace of mappings for common Canadian brokerages. If yours is already in the marketplace, apply it and your transactions are imported within seconds.

I even have a video for extra support for that and other items if you need it as part of my YouTube channel:

2. There is an automatic exchange rate lookup. For non-CAD transactions, MyACB fills in the Bank of Canada rate for each transaction date. One less thing to look up!

3. Tax factor sync. Every year, fund companies publish per-unit return of capital and reinvested capital gains figures. MyACB can add these adjustments in your portfolio automatically. No hunting through fund company PDFs or cross-referencing T3 slips. For most ETF investors, this is what keeps their ACB accurate year over year. The free tier I have for DIY investors includes one security; Pro unlocks our full library. (So, I have a feature-rich free tier, perfect for do-it-yourselfers and r/JustBuyXEQT investors. Our premium features include additional portfolios, unlimited tax factor syncs, tax prep (Schedule 3), and priority support.)

MyACB - tax-factor-screenshot

4. Superficial loss detection. MyACB detects the 30-day repurchase pattern and can handle both the denied loss and the ACB adjustment on the repurchased shares. 

5. Export your data. From MyACB, you can export your data at any time!

You can see a full list of features here.

I would be happy to answer any questions from any of your readers, anytime!

A Modern Adjusted Cost Base App for Canadian DIY Investors

To Mark’s readership, I want to thank Mark for this guest post and the opportunity to promote my ACB tool. 

If you’re reading My Own Advisor, you’re already doing the work to take control of your finances. I read it too!

And while Mark has discussed ABC and taxation considerations related to his dividend paying stocks on this site in the past, detailed ACB tracking is the part of taxable investing that really nobody talks about, but it comes with the territory with any taxable investing, and the CRA isn’t forgiving about it if you get it wrong!

MyACB exists to take that off your plate so you can focus on the part that actually matters. Start free, and see if it works for you and again, reach out to me if you have any questions.

Thanks for Mark and his site.

How to get started with MyACB?

Easy. Create a free account.

All readers of My Own Advisor can use promo code MYOWNADVISOR at checkout for 20% off any paid plan. There’s a 7-day no questions asked refund window if the upgraded tool isn’t what you were looking for.

If you have any questions or feedback, you can reach me directly at mitchell@myacb.ca

Disclosure: This is a guest post from Mitchell at MyACB. A nominal commission may be provided to My Own Advisor if you sign up using the promo code above. There is never an obligation to use MyACB. Rather, MyACB is a tool to help you organize and track your ACB, but it is not tax advice. Always consult a qualified tax professional for your specific situation.

25 Responses to "A Modern Adjusted Cost Base App for Canadian DIY Investors"

  1. Thank you for this timely post! I quickly and easily created an account to verify my own spreadsheet entries after noticing some ACB discrepancies on my T5008.

    The tax factor sync and superficial loss detection features are both excellent and I liked how there was a verification step before posting any synced entries as well as duplicate entry alerts.

    I did notice one potential issue with CASH.TO not appearing in the tax factor sync for 2023 even though there were some return of capital entries on my T3 for that year. Mitchell, can you please look into this?

    Also, the realized capital gain value is impacted by the sequence of the buy/sell transactions occurring on the same day (for tax gain harvesting, not day trading). How is the correct transaction order determined? The trading summary places the BUY before the SELL.

    Reply
    1. Hello AG2,

      Thanks for trying the app, glad it was quick and easy! I should mentioned I’ve since expanded the superficial loss detection so that you can detect across multiple affiliated portfolios now.

      CASH.TO’s 2023 ROC is now available in the tax factor sync if it wasn’t showing before.

      On transaction order: yes, same-day trades affect your capital gain depending on sequencing. The app orders them by input order (manual entry) or by their row position in an imported CSV. You can reorder same-day transactions directly in the app by tapping the reorder icon and dragging and dropping as needed. For the most accurate results enter or import trades in chronological order in that trading day.

      Some brokerages do include timestamps in their CSV exports or trade history views which can help with this if you have doubts.

      Reply
  2. Enjoyed the read.

    I noted and Michell and your comment regarding XEQT that it is not one you would buy, would you explain?
    We were thinking about investing in it or VEQT.

    Reply
  3. Great topic (ACB) for discussion, Mark. Is’t not a lot easier just to import all the data from CRA “My Account” by way of autofill when reporting all the gains and losses on stock transactions?
    The other question is when you trade a lot, say +75 stock transactions every year and filed your tax returns, at what point does CRA consider all the gains/losses as capital gains and not as ordinary income?

    Happy Easter everyone.

    Reply
    1. Thanks, Ken.

      I’ll let Mitchell reply to the MyCRA prompt/question.

      I barely trade nor sell inside a taxable account – I can count on my hand how many times I’ve done that in 10+ years so that’s not any issue for me but it could be for other people…

      CRA is typically focused on “business activities”. I don’t know their triggers but 75 or so taxable transactions are probably not a flag, while it seems high to me too.

      Multiple trades per day, every day, is likely a trigger but I don’t really know!

      Happy Easter weekend to you too!
      Mark

      Reply
    2. Hello Ken,

      For things like T3s, T5s, … absolutely use the auto-fill/import when available to save time and avoid manual data entry errors. The T5008, which reports your transactions is a bit different, it’s an informational slip and not authoritative. Under the hood, tax software like Wealthsimple Tax is using that information to generate your schedule 3, ultimately you are still responsible for the ACB values.

      “The amount in box 20 may or may not reflect your adjusted cost base (ACB) for the purpose of determining the gain or loss from the disposition of the security. You are required to make the adjustments, as needed, to the amount indicated in box 20, at the time of determining and reporting your gain or loss from the disposition.” [https://www.canada.ca/en/revenue-agency/services/tax/individuals/topics/about-your-tax-return/tax-return/completing-a-tax-return/tax-slips/understand-your-tax-slips/t5-slips/t5008-statement-securities-transactions-slip-information-individuals.html]

      As for your other question, these things are often murky and you should talk your tax accountant if you’re ever concerned about being assessed as such.

      Happy Easter!

      Reply
  4. Excellent post. I quickly and easily created my account, entered my one ETF XDIV in my non-registered account and the 6 transactions since I opened the account in January. The ACB matches what my Wealthsimple account shows.

    After preparing tax returns for over 20 years at a public accounting firm I can honestly tell you that most people don’t have a clue what their ACB is and they rely on the T5008 or their accountant. And I can’t think of one time a client was auditied by CRA. I think it’s one area that gets little attention. That said people are very likely under or over reporting their gains and losses.

    Reply
    1. Thanks for using the app, Donna! Appreciate your perspective as someone who’s seen the chaos firsthand. For a lot of us it’s peace of mind that we aren’t overpaying our taxes at the very least and can back it up easily if they ever did come knocking.

      Reply
    1. Correct. We pull security and distribution details from fund providers and public sources. That said, users are free to upload their own CDS provider data for personal use, in line with their personal terms of use policy.

      Reply
      1. Looks good. I built my own magic spreadsheet which pulls transaction data, collects cap gain distributions , etc and calculates ACB – otherwise would have been interpreted

        Reply
  5. Being somewhat of a Luddite, my goal is to avoid as much as possible any complicated ACB scenarios in the non-reg account. I got burned with XEI years ago and won’t do that again. Stick to basic individual stocks that I only buy once, or at most a handful of times (no DRIP) that a simple spreadsheet entry can track. Further compound the simplicity by only using these for charitable giving so that if even if there is any slight error/discrepancy, hopefully even CRA will recognize it won’t make a lick of difference in the bigger picture and leave me the heck alone.

    Reply
    1. Very fair, Lloyd.

      Again, I didn’t write about this in this particular post but one way to avoid lots of ACB is via buying and then not selling frequently and beyond that, turning off all taxable DRIPs (which I have done) for cashflow. This way, the adjusted cost base isn’t changing all the time via DRIP which must be accounted for…

      I love your charitable giving.
      Mark

      Reply
  6. Speaking of adjusted cost base, I’d like to be able adjust the cost to inflation. If I bought an investment 40 years ago, the nominal amount then is a different animal today.

    I recently cashed in a BNS silver certificate after a salesman with Sprott Money said not to bother, that BNS would not honour it. Chalk it up to experience.
    Wrong!!!
    I walked into the local branch and the financial planner there asked if I wanted it in USD or CAD. Easy peasy.

    A cost base problem might arise next tax time because it was purchased in January of 1985 (yes, I’m old) but I don’t know how much I paid back then. I suppose I could pull a number out of my hat but the CRA might object. Or check Kitco’s silver price history.
    Either way, I’ll adjust it for inflation.

    Reply
    1. Thanks, Don.

      While CRA wants/desires accuracy, I have heard stories about investments held for decades without ACB…and they are looking for reasonableness in terms of acquisition cost and FMV/selling costs.

      Anything going back to 1985 would be a challenge. 🙂

      Buying anything in 2026? Adding to the taxable account(s)?
      Cheers.

      Reply
  7. What happens when, for example, a T3 from your bank/broker contradicts your ACB and capital gains calculation? Do you have to get the T3 reissued or?

    Reply
    1. Hi Bill, a T3 and your running ACB serve different purposes. The T3 reports the income your fund distributed to you (interest, dividends, capital‑gain distributions, return of capital, etc.), while your ACB is your cost basis that you track over time for when you sell. The components in the T3 impact your ACB but they wouldn’t really “contradict” each other in the way a T5008 from your broker(s) and your ACB might.

      Reply
        1. Ah, well that’s just it! T5008 is an informational slip from your broker and not an authoritative statement of your ACB. A discrepancy between the two is actually more common than not.

          A simple example to demonstrate: if you hold the same security at two different brokerages (perhaps to take advantage of a signup promotion). Neither brokerage can see your full holdings, so there’s no way for either of them to track your true, consolidated ACB for that security. More broadly, brokerages are often poor at tracking ACB, foreign‑currency impacts, commissions, and tax‑factor adjustments on distributions.

          Ultimately the onus is on us the taxpayer. When you file, you report the correct gain or loss on Schedule 3 using your own ACB calculation, which would be supported by your records.

          Reply
          1. Thanks, good to know. I’ve been an accumulator for years and selling from non-registered accounts will be new, believe it or not :).

            Reply
    1. Hello JP,

      The two features that stand out on our free plan versus other free tools in this space are CSV import (with our own brokerage marketplace to help speed that up) and automatic exchange rate lookup when entering transactions. Both of which are typically paywalled elsewhere.

      You can see our feature offering broken down more at myacb.ca/plans.

      Reply

Post Comment