FIFO vs weighted average: which method to choose?

FIFO (First In, First Out)

FIFO considers the first tokens purchased as the first sold. The cost basis corresponds to the price of the oldest purchases.

Weighted average cost

The weighted average divides the total cost of all purchases by the total quantity held. Every sale uses the same unit cost basis.

Comparative example

Buy 1: 1 BTC at 20,000 €. Buy 2: 0.5 BTC at 30,000 €. Buy 3: 0.5 BTC at 40,000 €. Sell: 1 BTC at 35,000 €.

  • FIFO: cost basis = 20,000 € (first purchase). Gain = 35,000 - 20,000 = 15,000 €.
  • Weighted avg: avg cost = (20,000 + 15,000 + 20,000) / 2 = 27,500 €/BTC. Gain = 35,000 - 27,500 = 7,500 €.

Which country uses which method?

France: weighted average required. Germany: FIFO recommended. United States: FIFO by default (other methods possible). United Kingdom: "share pooling" method (similar to weighted average).