Tax by country
Cost-basis methods
FIFO, average cost, share pooling, specific identification and France's portfolio formula: which method each country requires for crypto and shares.
| Last verified | Status |
|---|---|
| 28-10-2026 | approved by the owner (accountant), 28-10-2026 |
Related article: hq-fs.com/blog/fifo-vs-lifo-for-crypto-taxes
Not tax advice. Rules summarised from official sources, linked where each rule is stated, as verified on the date above. Confirm with a qualified adviser before filing.
Methods explained#
All figures in the examples below are illustrative. They are not taken from any tax authority.
Every example uses the same trades in one token, held in one wallet unless stated:
| Date | Event | Units | Price per unit | Total |
|---|---|---|---|---|
| 01-01 | Buy (lot 1) | 1 | 100 | 100 |
| 01-03 | Buy (lot 2) | 1 | 300 | 300 |
| 01-06 | Sell | 1 | 400 | 400 |
| 15-06 | Buy (lot 3) | 1 | 350 | 350 |
The 15-06 buy matters only where a matching rule looks forward from the sale.
FIFO (first in, first out)#
The oldest units still held are treated as sold first.
| Step | Figure |
|---|---|
| Unit sold | Lot 1 |
| Cost | 100 |
| Gain | 400 − 100 = 300 |
Required or accepted in: US default, Ireland shares (Revenue, s.580 note for guidance), Germany securities in collective custody, South Africa (SARS draft crypto guide, IT3(c) clarification), Singapore, Australia fallback.
LIFO (last in, first out)#
The newest units held at the sale date are treated as sold first.
| Step | Figure |
|---|---|
| Unit sold | Lot 2 |
| Cost | 300 |
| Gain | 400 − 300 = 100 |
LIFO is listed only in the ATO share guidance. Singapore, South Africa trading stock and Indonesia inventory reject it by name.
Average cost (weighted average, ACB, PMP)#
Each unit carries the average cost of all units held. A sale does not change the average of the units left.
| Step | Figure |
|---|---|
| Average cost at the sale | (100 + 300) ÷ 2 = 200 |
| Cost | 200 |
| Gain | 400 − 200 = 200 |
| Average of the unit left | 200 |
Required in Canada (ACB, ITA s.47) and for French shares (PMP). Accepted in Singapore and, for value only, Germany crypto. Not available for South African crypto (SARS draft crypto guide, IT3(c) clarification).
Share pooling (UK same-day, 30-day, section 104)#
Matching order (CRYPTO22200, HS284): same-day acquisitions first, then acquisitions in the next 30 days, then the section 104 pool at average cost. The 30-day rule applies to gains and losses alike.
| Step | Figure |
|---|---|
| Same-day acquisitions on 01-06 | None |
| Acquisitions in the next 30 days | Lot 3 (15-06), cost 350 |
| Cost | 350 |
| Gain | 400 − 350 = 50 |
| Pool after 15-06 | Lots 1 and 2: 2 units, cost 400, 200 each |
| Gain if lot 3 had not been bought | 400 − 200 = 200 (pool cost) |
Specific identification#
The taxpayer names the unit sold, if records show which unit it is (IRS FAQ, ATO share guidance, BMF letter).
| Unit chosen | Cost | Gain |
|---|---|---|
| Lot 1 | 100 | 300 |
| Lot 2 | 300 | 100 |
Choosing the highest-cost unit (HIFO) is one use of specific identification. The ATO share guidance lists HIFO by name.
France: portfolio formula (crypto)#
Gain = P − A × (P ÷ V) (Notice 2086, BOFiP). P is the sale price. A is the total price paid for all crypto the household ever acquired, less cost already used. V is the value of the whole household crypto portfolio just before the sale.
| Case | P | A | V | Gain |
|---|---|---|---|---|
| Household holds only this token (2 units worth 400 each) | 400 | 400 | 800 | 400 − 400 × 0.5 = 200 |
| Household also holds another token, cost 200, worth 200 | 400 | 600 | 1,000 | 400 − 600 × 0.4 = 160 |
Holdings of other tokens change the gain. No lot is identified.
Per-wallet pools#
The method runs inside each wallet or account, not across the whole portfolio. US from 01-01-2025. Germany crypto (Rz 62).
Same trades, but lot 1 sits on exchange A, lot 2 on exchange B, and the sale is from exchange B:
| Method | Cost | Gain |
|---|---|---|
| FIFO across all wallets | 100 (lot 1) | 300 |
| FIFO per wallet (US 2025+, Germany) | 300 (lot 2) | 100 |
| UK pool (one pool across all wallets) | 200 | 200, or 50 with the 15-06 buy |
Netherlands: Box 3 deemed return (no method)#
Box 3 taxes a deemed return on net wealth at 1 January. The sale on 01-06 is not a taxable event, so no cost basis applies.
| Item | Figure |
|---|---|
| Gain on the sale for Box 3 | None computed |
| Tax base | Value of the holding on 1 January |
Indonesia: final tax on gross value (no method)#
Crypto sales carry a final tax on the gross transaction value from 01-08-2025: 0.21% via a domestic platform, 1% via a foreign platform (PMK 50/2025).
| Item | Domestic platform | Foreign platform |
|---|---|---|
| Base | 400 | 400 |
| Tax | 0.84 | 4.00 |
| Cost used | None | None |
Summary of the example#
| Method | Gain on the 01-06 sale |
|---|---|
| FIFO | 300 |
| LIFO | 100 |
| Average cost | 200 |
| UK pooling (with 15-06 buy) | 50 |
| UK pooling (without 15-06 buy) | 200 |
| Specific identification | 100 or 300 |
| France formula (one token held) | 200 |
| Netherlands Box 3 | No gain computed |
| Indonesia | No gain computed; tax on 400 gross |
By country#
| Country | Crypto method | Shares method | Pool scope | Matching rules | LIFO allowed |
|---|---|---|---|---|---|
| Australia | No method mandated for crypto by the ATO. Share guidance: specific identification where records allow; otherwise FIFO | Specific identification or FIFO; guidance also lists LIFO and HIFO; method may differ per parcel sold (TR 96/4) | Per parcel; each crypto asset tracked separately | — | Shares: listed in ATO guidance. Crypto: not stated by the ATO |
| Canada | Adjusted cost base (average) across identical property, ITA s.47 | Same: ACB, ITA s.47 | All identical property the taxpayer holds (whole portfolio) | Superficial loss, ITA s.54: 30 days before to 30 days after, includes affiliated persons, held at window end, denied loss added to ACB. Applies to crypto and shares | No |
| France | Portfolio formula, CGI art. 150 VH bis | Weighted average price (PMP), CGI art. 150-0 D 3; mandatory | Crypto: whole household portfolio, all platforms and wallets. Shares: securities of the same nature; where they sit with several intermediaries, each may compute the average account by account as an administrative simplification | Crypto: none | No |
| Germany | Specific identification first. If impossible: FIFO for the holding period; average cost for value, or FIFO as a simplification. Method fixed per token per wallet until that holding is sold out (Rz 61–62) | FIFO for fungible securities in collective custody, §20 EStG | Crypto: per wallet. Securities: per collective custody | Crypto: none | No |
| Indonesia | None needed. Final tax on gross value: 0.21% domestic, 1% foreign platform. Acquisition price still reported in the SPT asset list | IDX-listed shares: 0.1% final tax on gross value, no cost basis. Business inventory: average or FIFO, no LIFO, change needs DJP approval | Not applicable | None found | No (inventory) |
| Ireland | Not stated by Revenue | FIFO for shares of the same class, s.580(1) | Shares: whole holding of the same class | Four-week rule, s.581: a sale is matched first to shares bought in the 4 weeks before; a loss is restricted if re-bought within 4 weeks after. Covers spouses living together | No |
| Netherlands | None. Box 3 deemed return on 1 January wealth | None. Same Box 3 regime | Not applicable | None | Not applicable |
| Nigeria | Not prescribed by the NTA. Gain computed in USD per acquisition, USD gain converted at the CBN/NAFEM rate on the sale date | — | — | None identified | — |
| Singapore | Only where a gain is taxable (trading): FIFO or weighted average (para 5.7) | No capital gains tax | — | None found | No |
| South Africa | Capital account: specific identification or FIFO. Weighted average not available. Trading stock: any method except LIFO | Specific identification, FIFO or weighted average for SA-listed shares | Identical assets (para 32(2)) | Paragraph 42: loss disregarded if an identical asset is acquired within 45 days before or after; applies to crypto; includes connected persons | No |
| Switzerland | None for private investors (gains exempt). Professional traders: follows commercial bookkeeping; no rule found | None for private investors (gains exempt, Art. 16 para. 3 DBG) | Not applicable | None | — |
| United Kingdom | Same-day (s105), then next 30 days (s106A), then s104 pool at average cost. NFTs not pooled | Same order, TCGA 1992 | Crypto: one pool per token type across all platforms and wallets. Shares: one pool per company and class | Same-day; 30-day forward only, gains and losses | No |
| United States | Specific identification if adequately identified; otherwise FIFO (FAQ 39–41). Average cost not listed | Specific identification or FIFO; average basis only for fund (RIC) shares and dividend reinvestment plans | Crypto: per wallet or account from 01-01-2025. Shares: per lot; average basis per account | Wash sale (§1091): 30 days before or after, stock and securities only; not crypto | Not as a method. Specific identification can select the newest lot |
Effect on a FIFO ledger#
| Country | Does a FIFO lot ledger give the right tax figure? | What must be computed in addition |
|---|---|---|
| Australia | Yes, where specific units cannot be identified | 50% discount for units held 12 months or more; market value at 01-07-2027 per lot for the reform |
| Canada | No | ACB average per identical property; superficial loss per s.54 on crypto and shares, with the denied loss added to ACB; 50% inclusion |
| France | No | Crypto: P, A and V for the whole household at each sale. Shares: PMP per security |
| Germany | Only for crypto where FIFO is run per wallet, and for securities in collective custody | Per-wallet lot queues and the method chosen per token per wallet; FIFO holding period even where average cost sets value |
| Indonesia | Not applicable: no gain is taxed | Gross value per sale by platform type: 0.21% or 1% (PMK 50/2025); 0.1% on IDX share sales (PwC summary) |
| Ireland | Yes for shares | Four-week rule: match sales to shares bought in the prior 4 weeks first, and restrict losses on re-buys within 4 weeks after |
| Netherlands | No. FIFO gains are not the tax base | Net wealth at 1 January for Box 3; year-start and year-end values plus the year's purchases and sales for the actual-return route |
| Nigeria | Method not prescribed | USD cost per lot; USD gain converted at the CBN/NAFEM rate on the sale date |
| Singapore | Yes, for taxable (trading) gains; capital gains are not taxed | Block LIFO |
| South Africa | Yes on capital account: FIFO is allowed (IT3(c) clarification) | Paragraph 42 45-day rule on crypto and shares; one annual exclusion per person |
| Switzerland | Not applicable for private investors: gains exempt | Professional-trader test; cantonal wealth tax on 31 December holdings |
| United Kingdom | No | Same-day, then next 30 days, then s104 pool per token across all wallets, for crypto and shares (CRYPTO22200, ICAEW, HS284) |
| United States | Only for FIFO run per wallet or account from 01-01-2025, with no specific identification | Per-wallet basis allocation as at 01-01-2025; specific identification where elected (Notice 2025-7, Notice 2026-20); wash sale for securities only |