FIFO (First In, First Out)
→ The first assets you purchase are the first assets you sell.
→ Common in the United States, Europe, and many other countries.
→ Example: If you bought 1 $SOL at $20 and another 1 $SOL at $40, then sold 1 $SOL, the sale would use the $20 cost basis.
LIFO (Last In, First Out)
→ The most recent assets you purchase are the first assets you sell.
→ Sometimes permitted in the U.S. and Italy.
→ Example: Using the same scenario, the 1 $SOL sold would use the $40 cost basis.
HIFO (Highest In, First Out)
→ The assets with the highest purchase price are sold first.
→ Often used to minimize taxable gains.
→ Example: If you bought 1 $SOL at $20 and another at $40, the $40 purchase would be used as the cost basis.
LCFO (Lowest Cost, First Out)
→ The assets with the lowest purchase price are sold first.
→ Can maximize gains (and therefore taxes).
→ Example: In the same scenario, the $20 purchase would be used as the cost basis.
HMRC (Share Pooling)
→ Required in the United Kingdom.
→ Assets of the same type are grouped into “pools” with an average cost basis.
→ Sales are matched against the pool rather than individual purchase lots.
CRA (Adjusted Cost Basis, ACB)
→ Required in Canada.
→ Each purchase adjusts the average cost basis of your holdings.
→ Sales are matched against the new adjusted average.
Average Cost Method
→ Required in Japan, and permitted in Australia.
→ Similar to CRA/ACB: each new purchase updates the average cost basis.
✅ Knowing what each cost basis method means will help you choose the right one in Netrunner (see HT202 – How to Select Your Cost Basis Method).