T5008 Box 20 vs Box 21: What Each Field Actually Means

myCostBase
7 min read

Every Canadian investor who sells a security in a taxable account receives a T5008 slip — the Statement of Securities Transactions. The slip contains several fields, but two dominate tax season questions: Box 20 and Box 21. Understanding exactly what each contains — and what each does not — is necessary before you can use the slip correctly on Schedule 3.

Quick reference: Box 20 is the cost or book value; Box 21 is the proceeds of disposition.

Box 20: Cost or book value

Box 20 reports the “cost or book value” — the amount the broker has on file as your purchase cost for the shares you sold. This is what many investors mistake for their adjusted cost base.

It is not.

The CRA’s T5008 instructions describe Box 20 explicitly as the cost or book value “as reported by the payer.” The word “adjusted” does not appear. The broker is reporting their internal record of what you paid. That figure reflects only what the broker can see — purchases made through their platform, DRIP shares they processed, and cost adjustments they applied. (See the CRA T4091 T5008 Guide for the official box definitions.)

When Box 20 is missing or says zero, it means the broker either did not have reliable cost information on file, the shares were transferred in from elsewhere with no original cost data, or the slip format in that tax year did not require it.

Box 21: Proceeds of disposition

Box 21 reports the proceeds of disposition — the amount you received when you sold the security. For a straightforward sale through a brokerage, this is the sale price multiplied by the number of shares, minus any commission, expressed in Canadian dollars.

Box 21 is almost always accurate. The broker directly processed the sale, received the funds, and deposited them in your account. There is very little room for error here, and the number will typically match what you see in your account history.

If Box 21 is blank, it usually means the proceeds were reported in a foreign currency in an adjacent field (Box 19 for USD amounts in some slip formats), or the slip was issued for a transfer rather than a sale. If you sold shares and Box 21 is blank with no adjacent foreign currency field, contact your broker.

Why Box 20 is not your adjusted cost base

The legal adjusted cost base under the Canadian Income Tax Act requires pooled weighted average cost across all taxable accounts for the same taxpayer. It must include:

  • Every purchase at every brokerage that has ever held those shares
  • The cost of every DRIP reinvestment, at fair market value on the reinvestment date
  • Reductions for any return-of-capital distributions from ETFs or trusts
  • Carrying forward the original cost through any broker-to-broker transfers

Your broker knows none of this history except what passed through their own platform. A broker who received shares by transfer three years ago may have reset the book value to the market value at transfer. A broker who never received T3 adjustment data from an ETF company may have a book value that has not been reduced by years of ROC distributions.

The gap between Box 20 and your true ACB is the most common source of overstated capital gains on Canadian tax returns.

What to report on Schedule 3

Schedule 3 asks for three amounts per disposition:

  • Proceeds of disposition — use Box 21 (or your own records if Box 21 is blank or in a foreign currency)
  • Adjusted cost base — use your own calculated ACB, not Box 20
  • Outlays and expenses — commissions paid on the sale (often already reflected in Box 21; do not double-count)

The capital gain is proceeds minus ACB minus outlays. If you use Box 20 as your ACB when it is lower than your real ACB, you overstate the gain and pay more tax than required. The CRA does not correct this automatically — the obligation to report the correct ACB is entirely on the taxpayer.

Reconciling Box 20 against your records

The recommended approach: calculate your ACB independently from your complete transaction history, then compare it to Box 20. If the numbers match, the broker’s figure happens to be correct for your situation. If they differ, the discrepancy has a reason — multi-brokerage pooling, a transfer-in at wrong cost, missing DRIP entries, or unrecorded ETF adjustments are the most common.

Use the T5008 ACB reconciliation checker to enter both figures side by side and see the impact on your reported capital gain. For a detailed walkthrough of why Box 20 and ACB diverge, see T5008 Box 20 and adjusted cost base and Can you trust your broker’s adjusted cost base?

A worked example: the cost of trusting Box 20

Consider a realistic scenario: you bought 200 shares of a Canadian equity ETF at Questrade in 2019 for $5,600 total ($28.00 per share). In 2021, you transferred 100 shares to Wealthsimple. Because the receiving broker had no original cost data, Wealthsimple set book value to the market price on the transfer date — $32.00 per share.

In 2023, you sell the 100 Wealthsimple shares at $35.00, receiving $3,500.

Wealthsimple’s T5008:

  • Box 21 (proceeds): $3,500
  • Box 20 (book value): $3,200 (set at transfer date, not original purchase cost)
  • Implied gain per T5008: $300

Your correct ACB: The transfer does not reset cost. All 200 shares still cost $5,600 ($28.00/share). Selling 100 shares at the pooled ACB:

  • ACB of sold shares: 100 × $28.00 = $2,800
  • Correct capital gain: $3,500 − $2,800 = $700

Using Box 20 here means reporting $300 in gains when $700 is correct. In a CRA audit, you owe the difference in tax plus interest. Both boxes were technically accurate in their own terms — Box 21 (proceeds) was right, Box 20 (broker’s book value) was just not your adjusted cost base.

How to handle a blank or zero Box 20

Box 20 is sometimes blank or zero on arrival. Common reasons:

  • Shares transferred in from another institution with no original cost record on file
  • A corporate action (merger, spin-off, stock dividend) the broker could not cost automatically
  • Historical data not available in the broker’s system for positions opened before online recordkeeping

A blank Box 20 does not mean your cost is zero. It means the broker does not have the information. Calculate your ACB from original trade confirmations and other documentation, then report that figure on Schedule 3.

The documentation CRA expects you to keep

CRA does not prescribe a specific format, but to support a capital gain or loss claim you should be able to show: original purchase confirmations, transfer records carrying forward the original cost, DRIP reinvestment records at fair market value on each reinvestment date, and ETF distribution adjustment amounts (return of capital, reinvested distributions) applied year by year.

Keeping these records from the first purchase — rather than reconstructing them years later — is significantly easier. For complex positions (multi-brokerage, multi-year, ETF distributions applied), an ACB ledger that records each event chronologically with a running ACB per share is the most defensible format. Use the T5008 ACB reconciliation checker to compare your figures against what your broker reported. For a structured pre-filing workflow covering T5008 reconciliation, multi-broker pooling, ETF ROC, DRIPs, and USD trades, see the Canadian Adjusted Cost Base Checklist.


This article is for general educational purposes only and is not tax, legal, or financial advice. Adjusted cost base calculations depend on your complete transaction history and personal circumstances. Consult a qualified tax professional for advice specific to your situation.


myCostBase calculates your correct ACB across all brokerages and reconciles against T5008 automatically — create a free account →