Adjusted cost base

The adjusted cost base (ACB) is used to determine the capital gain for personal income tax in Canada. It's generally simple to calculate, but there are some nuances.

Beware: I am not a tax professional. I'm barely even a tax amateur.

Capital gains

When selling a capital property (e.g. a stock or a house), one either has a capital gain or loss, depending on one's luck and/or cunning. In principle, the capital gain is simple to calculate: take the amount you got for selling the property, and subtract how much you originally paid for it, as well as all fees from buying and selling. For identical properties, there might not be a single "how much you originally paid for it" if they came from different lots, which is why the ACB is needed.

In many cases, it's not even necessary to perform any calculations, as the final result is provided on various information slips; however, for securities, it's a little more DIY. Although form T5008 Statement of Securities Transactions exists, it's not mandatory:

Your investment dealer (for example, bank, broker, or fund company) may issue a customized statement listing your dispositions and redemptions, rather than a T5008 information slip.

And the values you need aren't guaranteed to be reported to you:

If the ACB does not appear on any information slips received, consult your records of the acquisition of the units or shares.

T5008 itself agrees with this:

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.

Thus, the only way to be sure about capital gains is to manually keep track of the ACB for each asset.

Definition

The ACB may be expressed either in terms of the total cost:

To calculate the ACB of the units or shares sold or redeemed, multiply the average cost per unit of all units or shares held immediately before the sale or redemption by the number of units or shares redeemed (see Chart 1).

or the average cost per unit:

The new ACB is calculated by dividing the total cost of the shares of STU Ltd. ($1,500 + $3,000 = $4,500) by the total number of shares she has purchased (100 + 150 = 250). Therefore, the ACB is $18.00 ($4,500 ÷ 250).

This page uses the latter, but it's worth noting that Schedule 3 uses the former.

Calculating the ACB

At its core, the ACB is the average unit cost of the individual lots which have been purchased, weighted according to the remaining sizes of the lots. Calculating this plain average requires only knowledge of the inventory at any given time (original lot prices and how many units remain from each lot), with sales removing fractional units evenly from each lot.

The CRA adds some complications to this, which make the ACB conceptually less straightforward, but easier to keep track of by hand. Instead of being equal to a weighted average, it is subject to intermediate rounding and rules about when it should be updated.

The ACB is adjusted at time of purchase:

You may buy and sell the same type of property (for example, units of a mutual fund trust or publicly traded shares) over a period of time. If so, you have to calculate the average cost of each property in the group at the time of each purchase to determine the adjusted cost base (ACB).

but not at time of sale:

Dispositions of identical properties do not affect the ACB.

As promised, the resulting procedure is easy to carry out. There are three values to track: the total cost, the number of units, and the ACB.

When buying:

  1. Increase the total cost by the cost of the new assets (quantity × price per unit + fees).
    • The added cost is the entire amount paid for the new assets, including any commissions or other fees. As such, it should be rounded to a whole number of cents.
  2. Increase the number of units by the number of units obtained.
  3. Divide the total cost by the number of units and round to get the ACB.
    • Although the CRA doesn't seem to give any examples where the tick size is less than one cent, it seems reasonable to assume that the ACB should always be rounded to the nearest cent. For example, when the price of the asset is reported in a currency other than Canadian dollars, the number of digits after the decimal point is irrelevant, because the ACB will be in CAD anyway.

When selling:

  1. Decrease the total cost by the cost of the sold assets (quantity × ACB).
    • The removed cost is the fraction of the total cost correspoding to the sold assets, so it's not influenced by any commissions or other fees on the sale. It should probably be rounded to a whole number of cents for the sake of the total cost.
  2. Decrease the number of units by the number of units sold.
  3. Leave the ACB alone.

Stock splits

When a stock splits (or reverse splits), the total cost doesn't change, but the number of units does. Hence:

  1. Don't alter the total cost.
  2. Update the number of units appropriately.
  3. Recalculate the ACB.

Return of capital

Because a return of capital is money that you paid being given back to you (shown in box 42 of a T3), it changes the total cost without affecting the number of units. Hence:

  1. Subtract the returned amount from the total cost.
  2. Don't alter the number of units.
  3. Recalculate the ACB.

Note that box 42 says to

adjust the cost base of the property at the end of the tax year

Negative ACB

If the total cost drops below zero, it's reset to zero, and the amount by which it was negative counts as a capital gain. On the surface, this seems to mainly be designed for returns of capital, in which case it's very intuitive: if you've been refunded more than you paid for the asset, that's already a profit. Thanks to rounding, the rule can technically also be triggered by a sale; in that case, it can compensate for intermediate rounding of the ACB. Although the rule for sales says not to update the ACB, it seems sensible for that to be overridden whenever the total cost ends up negative after a sale.

Foreign currency

Gains and losses are reported in Canadian dollars. If any transaction was carried out in a foreign currency, the rules are simple: everything (including returns of capital) is converted to Canadian dollars at the time the transaction took place. The CRA links to the Bank of Canada exchange rates page, which provides rates going back to 2017, so presumably those are the ones to use.

Consistency

Despite seeming a little bit arbitrary, the rules for calculating the ACB have a nice consistency property: you'll report the correct amount of capital gains in the long run, even though the intermediate values might be rounded. The total amount of capital gains actually reported for an asset at any given time is the sum of

On the other hand, once all units of the asset have been sold, the total amount of capital gains reported should be the difference between

It turns out that the total cost tracks the discrepancy between these two quantities. When the number of units reaches zero, if the reported amount of capital gains matches the theoretical value, the total cost should also be zero. A negative residual total cost would imply that the reported capital gains are too small, but that's impossible by construction. (Well played, CRA!) A positive residual total cost means that you've technically overpaid the capital gains tax (likely by a minuscule amount), but this situation should eventually be rectified if you buy more of the asset later.

Implicit purchases

In some circumstances, you could make a purchase of additional assets without knowing it. The most common case is probably a dividend reinvestment plan (DRIP), where dividends are paid out in units of the owned asset, rather than as cash. Even though you don't handle the money associated with that distribution, for tax purposes, the new units count as though purchased by you and the ACB must be updated.

A much more subtle situation can arise due to a "phantom distribution" from an ETF, where the fund pretends to give you money, but actually spends it on buying more assets. Again, for tax purposes, this counts as an investment performed by you, so the total cost must be increased, despite you receiving neither cash nor additional units of the ETF. Since you didn't get anything, it can be tricky to determine how much you got; the usual recommendation is to check the ETF website.

If it's any consolation, missing some of these implicit purchases while tracking your ACB should only result in paying more capital gains tax than you actually owe, so the CRA is unlikely to penalize you.

Examples

Examples of calculating the average cost of property, example 1:

price Δ qty Δ cost Σ qty Σ cost ACB gain
1 $15.00 +100 +$1,500.00 100 $1,500.00 $15.00
2 $20.00 +150 +$3,000.00 250 $4,500.00 $18.00
3 $19.00 −200 −$3,600.00 50 $900.00 $18.00 +$200.00
4 $21.00 +350 +$7,350.00 400 $8,250.00 $20.63

The change in cost after a sale does not depend on the price at which the units were sold! Only the ACB matters for adjusting the total cost on row 3.

On row 4, note that the CRA has decided to round $20.625 to $20.63, which suggests rounding half away from zero rather than bankers' rounding.


Examples of calculating the average cost of property, example 2:

price Δ qty Δ cost Σ qty Σ cost ACB gain
1 $18.00 +833.3333 +$15,000.00 833.3333 $15,000.00 $18.00
2 $19.55 +59.8466 +$1,170.00 893.1799 $16,170.00 $18.10
3 $20.63 +70.5429 +$1,455.30 963.7228 $17,625.30 $18.29
4 $19.29 −400.0000 −$7,316.00 563.7228 $10,309.30 $18.29 +$400.00
5 $19.89 +36.2821 +$721.65 600.0049 $11,030.95 $18.38

We can be fairly confident that the CRA intends for the ACB to be rounded on row 3, because scaling the exact amount by −400 and only then rounding it would result in a change in cost of −$7,315.38 on row 4.

Note that the intermediate rounding affects the final ACB in this example. The proper weighted average of the lots is approximately $18.38559, which would round to $18.39 instead of $18.38:

Unit cost Relative weight Approx. contribution
$18.00 833.3333 × (1 − 400.0000 ÷ 963.7228) $14.6234522
$19.55 59.8466 × (1 − 400.0000 ÷ 963.7228) $1.1406303
$20.63 70.5429 × (1 − 400.0000 ÷ 963.7228) $1.4187674
$19.89 36.2821 $1.2027418
Total $18.3855917

Example for the sale of mutual fund units:

price Δ qty fee Δ cost Σ qty Σ cost ACB gain
1 $14.75 +1,355.9322 +$20,000.00 1,355.9322 $20,000.00 $14.75
2 $16.40 +87.0622 +$1,427.82 1,442.9944 $21,427.82 $14.85
3 $17.29 +289.1845 +$5,000.00 1,732.1789 $26,427.82 $15.26
4 $13.77 +69.8700 +$962.11 1,802.0489 $27,389.93 $15.20
5 $17.42 −200.0000 $70.00 −$3,040.00 1,602.0489 $24,349.93 $15.20 +$374.00
6 $15.00 +50.0000 +$750.00 1,652.0489 $25,099.93 $15.19
7 −$500.00 1,652.0489 $24,599.93 $14.89

The fee on the sale on row 5 is incorporated into the gain, but not into the total cost. The return of capital on row 7 affects the total cost, but not the number of units.


The CRA examples don't have fees on purchases, but including them doesn't make matters any more difficult:

price Δ qty fee Δ cost Σ qty Σ cost ACB gain
1 $10.00 +1 $5.00 +$15.00 1 $15.00 $15.00
2 $11.00 +2 $5.00 +$27.00 3 $42.00 $14.00
3 $12.00 −2 −$28.00 1 $14.00 $14.00 −$4.00
4 $13.00 +1 $5.00 +$18.00 2 $32.00 $16.00
5 $18.00 −1 $1.00 −$16.00 1 $16.00 $16.00 +$1.00

The sale on row 3 results in a capital loss due to the fees on rows 1 and 2, even though the price of the asset went up and there were no fees on the sale itself. By row 5, the price has gone up enough to make a profit of $2.00, but the fee eats into the gains.


The rounding of the ACB can lead to slight discrepancies. There can be a residual total cost when all the units are sold:

price Δ qty Δ cost Σ qty Σ cost ACB gain
1 $5.00 +1 +$5.00 1 $5.00 $5.00
2 $2.50 +2 +$5.00 3 $10.00 $3.33
3 $4.33 −3 −$9.99 0 $0.01 $3.33 +$3.00

The true capital gain is $12.99 − $10.00 = $2.99, but the reported gain was $3.00, and the residual cost reflects this. Subsequent transactions can eventually get rid of the residual:

price Δ qty Δ cost Σ qty Σ cost ACB gain
4 $1.00 +1 +$1.00 1 $1.01 $1.01
5 $2.00 −1 −$1.01 0 $0.00 $1.01 +$0.99

The overall gain is $14.99 − $11.00 = $3.99 = $3.00 + $0.99, as expected.

If the rounding goes the other way, the residual can be (for a brief instant) negative:

price Δ qty Δ cost Σ qty Σ cost ACB gain
1 $6.00 +1 +$6.00 1 $6.00 $6.00
2 $2.50 +2 +$5.00 3 $11.00 $3.67
3 a $4.67 −3 −$11.01 0 −$0.01 $3.67 +$3.00
b +$0.01 0 $0.00 $0.00 +$0.01

On row 3b, we bump the negative total cost back up to zero. (We also update the ACB despite row 3 being a sale, but that's inconsequential because we have no units left anyway.) After this adjustment, the actual and reported capital gains match: $14.01 − $11.00 = $3.01 = $3.00 + $0.01.


Things can get even weirder because of rounding, especially if there are many cheap items involved:

price Δ qty Δ cost Σ qty Σ cost ACB gain
1 $1.05 +10,000 +$10,500.00 10,000 $10,500.00 $1.05
2 $1.06 +20,000 +$21,200.00 30,000 $31,700.00 $1.06
3 a $1.06 −29,999 −$31,798.94 1 −$98.94 $1.06 $0.00
b +$98.94 1 $0.00 $0.00 +$98.94
4 $1.05 −1 $0.00 0 $0.00 $0.00 +$1.05

Despite substantially overshooting the cost on row 3a, the total capital gains correctly come out to $99.99 once everything is sold.

If we choose not to update the ACB on row 3, as that transaction is a sale, the capital gains on row 4 would be determined in a rather roundabout way:

price Δ qty Δ cost Σ qty Σ cost ACB gain
1 $1.05 +10,000 +$10,500.00 10,000 $10,500.00 $1.05
2 $1.06 +20,000 +$21,200.00 30,000 $31,700.00 $1.06
3 a $1.06 −29,999 −$31,798.94 1 −$98.94 $1.06 $0.00
b +$98.94 1 $0.00 $1.06 +$98.94
4 a $1.05 −1 −$1.06 0 −$1.06 $1.06 −$0.01
b +$1.06 0 $0.00 $1.06 +$1.06

The end result is the same, but the route is a bit more indirect.


By never recalculating the ACB after a sale, it seems that we're guaranteed not to divide by zero, since no other transaction should be able to decrease the number of units all the way to zero. However, the effect of a return of capital doesn't kick in until the end of the tax year, so it's possible to run into this silly scenario:

price Δ qty Δ cost Σ qty Σ cost ACB gain
1 $5.00 +1 +$5.00 1 $5.00 $5.00
2 $5.00 −1 −$5.00 0 $0.00 $5.00 $0.00
3 a −$4.00 0 −$4.00 $5.00
b +$4.00 0 $0.00 ??? +$4.00

The ACB doesn't really matter at this point, since all the units are gone, and everything works out fine, with an overall capital gain of $5.00 − $1.00 = $4.00.

Summary

It looks like the rules for keeping track of the ACB (total cost ÷ number of units) distill to the following:

  1. Update the total cost (in CAD) and the number of units.
  2. Then:
    • If the total cost is negative, reset it and the ACB to zero. That's a capital gain!
    • Otherwise, if the event wasn't a sale of units, recalculate the ACB.

References