Capital gain = proceeds of disposition - adjusted cost base - selling outlays and expenses. A useful Canada crypto tax calculator starts with classification, then uses transaction-level values in Canadian dollars and a pooled ACB for identical property. The worksheet below calculates a capital gain and the current 50% taxable inclusion. It does not determine your legal classification, final tax bill, or return.
Last reviewed July 25, 2026. Critical rules checked against current CRA and Department of Finance sources.
Capital-gain worksheet
This worksheet applies the capital-gain formula and current 50% inclusion rate. It does not decide whether your activity is capital or business, build pooled ACB, apply losses, calculate provincial or territorial tax, or prepare a return.
How to calculate crypto tax in Canada
Step 1: Decide whether the activity is capital or business
Classification comes first because the arithmetic branches immediately. Capital treatment measures gains and losses using proceeds, pooled ACB, and selling outlays. Business treatment measures net business profit with revenue, inventory or cost of sales, and allowable expenses. The current capital rule includes 50% of a net capital gain in income, while 100% of net business profit is included.
CRA reviews frequency, holding periods, knowledge, time spent, and financing, with no single factor deciding the result. Before using any calculator, read the full framework for capital gains vs business income for crypto. A polished estimate based on the wrong branch is still wrong.
Step 2: Convert each transaction to Canadian dollars
Canadian tax calculations need Canadian-dollar values at the relevant transaction date and time. Preserve the source, timestamp, time zone, quote pair, and rate used. If a trade is reported in US dollars or one token is priced in another token, add the conversion evidence rather than relying on a later daily average with no explanation.
Step 3: Build the adjusted cost base pool
For identical property, add each acquisition's cost and eligible acquisition expenses to the existing pool. Divide total ACB by total units to get the average cost per unit. The pool belongs to the taxpayer, not to a specific exchange or wallet. Moving the same asset between owned wallets does not restart cost.
Step 4: Allocate ACB to each disposition
Multiply the average ACB per unit by the number of units disposed of. After the sale or swap, reduce both units and ACB by that allocation. The remaining pool continues into the next transaction and, where applicable, into later tax years.
Step 5: Subtract eligible selling outlays
Selling commissions and other direct disposition outlays belong in the formula. Acquisition costs belong in ACB. A fee should be connected to the event that created it and counted once. When a fee is paid in crypto, the payment can also be a disposition of the fee token and needs its own ledger treatment.
Step 6: Apply losses and the current inclusion rate
Combine allowable capital gains and capital losses under the capital rules. Net capital losses are generally used against taxable capital gains, not ordinary employment income. A superficial loss can delay a loss. Once the net capital gain is known, the current federal inclusion rate brings 50% into income. That amount then joins the rest of the tax return.
Canada crypto capital-gain formula
Proceeds of disposition
Proceeds are the Canadian-dollar value received or receivable for the property disposed of. For a cash sale, this may be the CAD trade value before eligible selling costs. For a swap or purchase made with crypto, fair market value is required even when no bank or fiat balance appears.
Adjusted cost base
ACB generally starts with property cost and includes expenses to acquire it, such as commissions. For identical property, CRA generally requires average cost. CRA's adjusted cost base guidance explains which acquisition costs can form part of ACB. The number imported by an exchange is not necessarily the taxpayer's full ACB because the same asset may have been purchased or transferred across other platforms.
Selling outlays and expenses
Eligible outlays directly tied to the disposition reduce the capital gain. Keep the fee currency and CAD value. If a platform reports net proceeds, confirm whether the fee is already subtracted before entering it again. Net and gross fields are a common source of double counting.
Taxable capital gain is not the same as tax payable
A capital gain is the transaction result. A taxable capital gain is the included portion after capital gains and losses are dealt with. Tax payable is determined only after that amount is combined with the rest of the return. Province or territory, other income, deductions, and credits can all change the bill.
Worked example: pooled ACB for multiple ETH purchases
Enter the two purchases
An investor buys 1 ETH for CAD 2,000 and later buys 2 ETH for CAD 6,000. These are identical units owned by the same taxpayer, so they belong in one pooled ACB computation even if the purchases occurred on different exchanges.
Add acquisition fees to cost
The first purchase has a CAD 20 fee and the second has a CAD 30 fee. The pool cost is therefore CAD 2,020 plus CAD 6,030, or CAD 8,050. Omitting acquisition fees understates ACB and overstates a later gain.
Calculate the average cost per ETH
Divide CAD 8,050 by 3 ETH. The average cost is CAD 2,683.33 per ETH, rounded to the cent for display. The workpaper should keep enough precision underneath the display so repeated disposals do not accumulate avoidable rounding differences.
Allocate ACB to a partial sale
The investor sells 1.2 ETH. The allocated ACB is CAD 3,220, calculated as 1.2 times CAD 2,683.33 with the underlying precision retained. The remaining 1.8 ETH keeps CAD 4,830 of pool cost.
Calculate the capital gain and taxable capital gain
The investor receives CAD 4,800 and pays a CAD 50 selling fee. Net proceeds after the outlay are CAD 4,750. Subtract CAD 3,220 of allocated ACB to get a CAD 1,530 capital gain. At the current 50% inclusion rate, the taxable capital gain is CAD 765. This is not the final tax payable.
| Date | Event | Units in/out | CAD proceeds | CAD cost/fee | Units held | Total ACB | ACB per unit |
|---|---|---|---|---|---|---|---|
| Purchase 1 | Buy ETH | +1.0 | 2,020 | 1.0 | 2,020 | 2,020.00 | |
| Purchase 2 | Buy ETH | +2.0 | 6,030 | 3.0 | 8,050 | 2,683.33 | |
| Disposition | Sell ETH | -1.2 | 4,800 | 50 selling fee | 1.8 | 4,830 | 2,683.33 |
How to calculate a crypto-to-crypto trade
Determine fair market value in CAD
Start with the date and exact time of the swap. Record the Canadian-dollar fair market value of the property received and compare it with the value of the property given up. If the platform reports only a token pair, preserve the route used to convert the trade to CAD.
Calculate the disposition of the asset given up
Treat the asset surrendered as a possible disposition. Its Canadian-dollar proceeds are compared with the allocated ACB and selling outlays. The fact that another crypto-asset was received instead of cash does not remove the disposition.
Establish the cost of the asset received
The Canadian-dollar fair market value of the asset received is relevant to its new cost. Add the units and appropriate cost to that asset's pool. If a fee affects the acquisition cost, state the assumption and avoid adding the same fee to one asset while also subtracting it from the other without support.
Record fees and exchange-rate evidence
Keep the trade confirmation, both token quantities, timestamp, platform, CAD price source, spread or slippage evidence, and fee currency. A swap reconstructed months later can produce different values when each side is priced independently, so the original execution record is useful.
How fees affect crypto ACB and proceeds
Buy fees
Expenses to acquire property generally increase its cost. Add the Canadian-dollar value of the acquisition fee to the pool and preserve the invoice or exchange record. A fee withheld from the acquired asset may change both the units received and the cost allocated per unit.
Sell fees
Eligible outlays tied to a disposition belong in the capital-gain formula. Confirm whether reported proceeds are gross or net. If the platform already reports net proceeds and the fee is subtracted again, the gain is understated.
Gas and protocol fees
Gas is not one universal category. Paying gas can dispose of the fee token, and the underlying transaction may be an acquisition, disposition, same-owner transfer, or protocol event with unresolved treatment. Map the fee to its actual purpose and preserve the hash before deciding its tax treatment.
Avoiding double counting
Use one fee field per economic cost, linked to the source transaction. Reconcile gross asset movements to net receipts. If two imports both contain the same commission, choose the authoritative source and flag the duplicate rather than summing both.
Superficial-loss calculator example
The 30 days before and after the loss sale
Suppose an investor sells 1 ETH at a loss on December 15. Review acquisitions of the same or identical property from November 15 through January 14. The complete period is 61 days, not simply the 30 days after the sale. CRA's capital losses and deductions guidance sets out the acquisition and continued-ownership conditions.
Continued ownership 30 days after
The investor reacquires 1 ETH on December 29 and still owns that replacement ETH on January 14. Those facts raise both the acquisition condition and the continued-ownership condition. If the replacement had been sold before the end of the period, the result could differ.
Adding a denied loss to replacement ACB
If the loss is fully denied under the rule, it is generally added to the ACB of the substituted ETH. The current deduction is deferred, and the replacement pool carries the adjustment into a later disposition. The workpaper should show the original loss, replacement acquisition, quantity match, and ACB addition.
Affiliated-person complications
The acquisition and ownership conditions can involve an affiliated person as well as the taxpayer's main wallet. Joint records, corporate accounts, registered-plan transactions, and partial quantities can require a more detailed analysis. The timeline is a screening tool, not an automated legal conclusion.
How income transactions change the calculation
Staking rewards
CRA says centralized-exchange staking rewards are generally income when credited to the wallet. If 0.5 ETH is credited when ETH is worth CAD 2,000, the initial income amount is generally CAD 1,000. That amount also becomes relevant to the cost of the reward units.
Mining receipts
CRA says most mining activity is a business because it involves significant resources and activity, while keeping the conclusion fact-dependent. Where mining is a business, value the crypto in CAD when earned and carry the resulting units into the business inventory or cost process selected with the Canadian tax professional.
Airdrops and protocol incentives
The reviewed CRA material does not establish one universal rule for every decentralized incentive. Record what was received, why it was received, when control arose, its CAD value, and the legal or protocol rights. Then flag the classification instead of silently assigning a software category.
Later sale of units already included in income
If the 0.5 ETH reward units later sell for CAD 1,300, a separate CAD 300 gain may arise, subject to classification and ACB facts. The initial CAD 1,000 income record and later disposition must be connected. The Canada DeFi and staking tax guide explains the boundary between clear centralized guidance and unresolved protocol arrangements.
What a useful Canadian crypto calculator must output
Transaction ledger
Every total should trace to dated source transactions, units, wallet or account, event type, and CAD value. A ledger lets the reviewer move from a return figure back to the exchange file or transaction hash.
ACB roll-forward by asset
Show opening units and cost, acquisitions, allocated cost on dispositions, adjustments, and closing units and cost for each identical-property pool. Negative units or unexplained cost jumps belong in exceptions.
Proceeds, fees, gains, and losses
Report gross proceeds, eligible selling outlays, allocated ACB, and gain or loss separately. A single net figure hides errors and makes comparison with Schedule 3 or source statements much harder.
Income schedules
Staking, mining, employment, business receipts, and unresolved protocol incentives should not be folded into capital gains. Keep the income date, CAD value, source, units acquired, and later cost connection.
Superficial-loss adjustments
The output should identify the loss sale, relevant acquisitions, continued ownership, affiliated-person scope, denied amount, and replacement ACB adjustment. Do not reduce this to an unexplained checkbox.
Missing-data and classification exceptions
Missing basis, closed accounts, unmatched transfers, unsupported prices, unusual protocol rights, and capital-versus-business questions should remain visible. An exception log is part of the deliverable, not a sign the work failed.
Why a calculator result may not match your tax return
Capital versus business treatment
A capital calculator cannot produce a valid business result by changing only the inclusion percentage. Business accounting can require inventory, revenue, cost of sales, and expense treatment. Classification changes the structure of the calculation.
Provincial and territorial tax
The same federal inclusion amount can lead to different tax depending on the taxpayer's province or territory and other income. This page deliberately stops before a marginal-rate estimate because that estimate belongs to the whole return.
Other income, losses, deductions, and credits
Capital-loss carryovers, current losses, employment income, business income, deductions, and credits can all change tax payable. The federal basic personal amount is a credit, not a crypto reporting exemption.
Foreign property and other reporting
A gain calculation does not answer whether Form T1135 applies. The aggregate CAD 100,000 cost threshold is important, but the reviewed official material does not resolve every crypto custody and situs question.
Data gaps and duplicate transfers
Missing acquisitions inflate gains, while duplicate deposits can inflate income or holdings. Unmatched withdrawals can create false disposals. Reconciliation controls are what turn a mathematical output into a figure a professional can rely on.
Get CRA-ready figures for your Canadian tax professional
When spreadsheets stop working
Spreadsheets can handle a small, complete history. They become fragile when several exchanges, self-custody wallets, bridges, reward programs, protocol positions, missing accounts, or prior-year pools interact. The failure usually appears as an unsupported ACB number rather than an obvious error message.
How COS reconciles exchanges, wallets, and protocols
Count On Sheep maps every source, normalizes transaction records, matches same-owner transfers, removes duplicates, values events in CAD, rolls ACB forward, and identifies income and superficial-loss candidates. Classification and missing-data questions stay in a visible exception log.
What the Canadian tax professional receives
The handoff includes the reconciled ledger, ACB roll-forward, proceeds and gain summary, income schedules, source and valuation notes, and unresolved items. Learn what good CRA-ready crypto reconciliation for your Canadian tax professional looks like. Count On Sheep does not file the Canadian return.
For the broad rules behind these calculations, return to the Canada Crypto Tax Guide 2026.
Get CRA-ready figures for your Canadian tax professional
Count On Sheep reconciles complex digital-asset activity into CRA-ready figures and workpapers for your Canadian tax professional. We do not file Canadian tax returns.
Book a free callCanada crypto tax FAQs
How do I calculate tax on crypto gains in Canada?
First classify the activity as capital or business. For a capital disposition, calculate proceeds minus the allocated adjusted cost base minus eligible selling outlays. Net capital gains and losses are then combined, and the current federal rule includes 50% of the resulting net capital gain in income. Final tax depends on the whole return.
What is the best crypto tax calculator for Canada?
A useful calculator should expose its inputs and provide an audit trail. Look for a transaction ledger, pooled ACB roll-forward for each asset, Canadian-dollar valuations, transfer matching, fees, gains and losses, income schedules, superficial-loss adjustments, and a visible exception log. A single tax estimate is not enough.
How is adjusted cost base calculated for crypto?
CRA generally requires identical property to use an average-cost pool. Add the cost of each acquisition and eligible acquisition expenses to the existing total ACB, then divide by all units held. A disposition receives the corresponding portion of the pool, regardless of which wallet held the units.
Do crypto fees reduce capital gains in Canada?
Acquisition expenses generally add to cost, while eligible selling outlays generally reduce the gain through the capital-gain formula. Gas and protocol fees can require a closer review because the fee token may itself be disposed of and the underlying event may create another property right. The same fee should not be counted twice.
How do I calculate a crypto-to-crypto trade?
Treat the asset given up as a possible disposition and record its fair market value in Canadian dollars. That value is relevant to proceeds, while the Canadian-dollar value of the asset received is relevant to its cost. Keep the timestamp, price source, units, and fee treatment for both sides.
What is the 30-day rule for crypto losses?
The superficial-loss test actually examines a 61-day window that starts 30 days before the loss sale and ends 30 days after it. It also has an acquisition condition and a continued-ownership condition involving the taxpayer or an affiliated person. A denied loss is generally added to the ACB of substituted property.











