Folio v0.9 — CEX + On-chain Consolidation is liveSee what's new →

Crypto Capital Gains Calculation in France: The 150 VH bis Portfolio Method (2026)

Crypto Finance·

Crypto Capital Gains Calculation in France: The 150 VH bis Portfolio Method (2026)

France does not use FIFO for occasional crypto investors. Article 150 VH bis CGI uses a global-portfolio formula: gain = disposal price − (total acquisition price × disposal price / total portfolio value). Worked examples for 2026.
Author avatar Wag3s TeamEditorial team specializing in Web3 finance, crypto tax, and DAO operations. Based in Zurich, Switzerland.

Reviewed by Wag3s Editorial Team — verified against article 150 VH bis CGI and BOFiP guidance on the global-portfolio method · Last reviewed May 2026

Crypto Capital Gains Calculation in France

The most common French crypto tax mistake is computing gains with FIFO. France does not use FIFO for occasional investors. Article 150 VH bis CGI uses a global-portfolio proportional formula that almost no other jurisdiction uses, and getting it wrong produces a wrong number on every disposal. This guide is the formula, the running-total mechanic, and worked examples with the 2026 rate.

TL;DR

  • Not FIFO, not LIFO, not per-lot. France (occasional investors) uses the 150 VH bis global-portfolio method.
  • Formula: gain = disposal price − (total acquisition price × disposal price / total portfolio value at disposal).
  • Total acquisition price is cumulative and is reduced proportionally as disposals occur.
  • Crypto-to-crypto is not taxable but must still be tracked for portfolio valuation.
  • Rate on the net gain: PFU 31.4% in 2026 (12.8% + 18.6%) or barème by option — a separate step from the calculation.

Why FIFO is wrong here

Most country guides default to a per-lot cost basis (FIFO/LIFO/HIFO). France's occasional-investor regime does not. Under article 150 VH bis, you do not match a disposal to specific acquisition lots. Instead each disposal's gain is a proportional slice of the whole portfolio's accumulated investment. Applying FIFO to a French occasional investor will produce a different — and incorrect — taxable gain.

The formula

Gain (per disposal) =
    disposal price
  − ( total acquisition price of the portfolio
      × disposal price / total value of the portfolio at the disposal )

In French: plus-value = prix de cession − (prix total d'acquisition × prix de cession / valeur globale du portefeuille).

The three inputs per disposal:

InputMeaning
Disposal price (prix de cession)Proceeds of this taxable disposal (to fiat/goods/services)
Total acquisition price (prix total d'acquisition)Cumulative net amount invested in the portfolio, as reduced by prior disposals
Portfolio value (valeur globale du portefeuille)Total market value of the whole crypto portfolio at the moment of this disposal

The running-total mechanic

The subtlety that makes 150 VH bis hard to do by hand: the total acquisition price is cumulative and decreases as you dispose. Each taxable disposal "consumes" a fraction of the total acquisition price equal to the fraction of portfolio value disposed of:

  • Fraction disposed = disposal price / portfolio value at disposal.
  • Acquisition price consumed = total acquisition price × that fraction.
  • Remaining total acquisition price = previous total − consumed.

So the figure feeding the next disposal's formula is not the original total invested — it is the running, reduced total. Errors compound across the year if this running figure is not maintained correctly.

Worked example (2026)

Assume a portfolio: total acquisition price €10,000; current total portfolio value €25,000. You dispose of €5,000 to fiat.

  1. Fraction disposed = 5,000 / 25,000 = 0.2.
  2. Acquisition consumed = 10,000 × 0.2 = €2,000.
  3. Gain = 5,000 − 2,000 = €3,000.
  4. Remaining total acquisition price for the next disposal = 10,000 − 2,000 = €8,000.

If later in the year the portfolio is worth €18,000 and you dispose of €3,600:

  1. Fraction = 3,600 / 18,000 = 0.2.
  2. Acquisition consumed = 8,000 × 0.2 = €1,600.
  3. Gain = 3,600 − 1,600 = €2,000.
  4. Remaining total acquisition price = 8,000 − 1,600 = €6,400.

Net annual gain = 3,000 + 2,000 = €5,000, taxed at the 2026 PFU 31.4% (or barème by option — see PFU vs barème).

Crypto-to-crypto: non-taxable but tracked

Crypto-to-crypto exchanges are not taxable events for occasional investors, so they do not trigger the formula. But they change the portfolio's composition and value, which feeds the valeur globale du portefeuille input at later taxable disposals. So they must still be tracked even though they are not taxed. "Non-taxable" is not "ignore."

The rate is a separate step

The 150 VH bis method produces the net annual gain. The rate is then applied separately: PFU 31.4% in 2026 (12.8% income tax + 18.6% prélèvements sociaux — up from 30% because CSG rose 9.2% → 10.6%), or the progressive scale if the global barème option is elected. Do not conflate the calculation (150 VH bis) with the rate (PFU/barème) — they are independent decisions.

Practical workflow

  1. Abandon FIFO for the French occasional-investor computation.
  2. Maintain the running total acquisition price, reduced proportionally at each disposal.
  3. Value the whole portfolio at each taxable disposal (track crypto-to-crypto for this even though untaxed).
  4. Apply the formula per disposal; sum to the net annual gain on Form 2086.
  5. Apply the 2026 PFU 31.4% (or barème) and reconcile against DAC8-reported data.

How vendor tools handle the calculation

Waltio is built around the French 150 VH bis method (it explicitly does not use FIFO for French users); Koinly supports the French method as a setting. The critical check: confirm the tool uses the 150 VH bis global-portfolio method, maintains the running reduced acquisition price, and applies the 2026 PFU 31.4% — a tool defaulting to FIFO or 30% will be wrong for France 2026.

How Wag3s helps

Wag3s Folio implements the 150 VH bis global-portfolio method with the correct running-total mechanic and applies the 2026 PFU 31.4%, producing accurate per-disposal and net annual figures for Form 2086, reconciled against DAC8-reported activity. See the Folio product page.


Further reading

Sources

  • Article 150 VH bis CGI — Légifrance
  • BOFiP-Impôts — guidance on the global-portfolio method for digital-asset capital gains
  • 2026 CSG increase on capital income (9.2% → 10.6%) raising the PFU from 30% to 31.4%
  • Council Directive (EU) 2023/2226 (DAC8) — EUR-Lex
Editorial disclaimer
This article is informational and does not constitute tax advice. The 150 VH bis formula and the treatment of the cumulative acquisition price are technical. Confirm computations with a French expert-comptable before filing.