BTC €61’854Distance to floor +1.5 %Zone Accumulation€1 = 1’617 sats
21Bitcoin Power Law My Goal

Magazine · Law, taxes & practice

Reporting Bitcoin Gains to the German Tax Office Correctly

Reporting bitcoin gains in Germany: which sales go on Anlage SO, how to calculate with FIFO, which records you need and how to correct mistakes.

By · · 14 min read

Short answer: You only report gains and losses from bitcoin that you sold, exchanged or spent within one year of buying it. They go on Anlage SO of your German income tax return. If all your private sale gains in a year stay below €1’000, everything remains tax-free. If you held for more than a year, you enter nothing, but you keep the records (as of November 2026).

This article is the practical guide to the tax return. The rules themselves, meaning the holding period, losses, lending, mining and the planned reform, are explained in the complete guide to bitcoin taxes in Germany. What to record when you buy is covered in Taxes when buying bitcoin. Here we deal with the next step: what do you enter where, and how do you get the figures?

Which sales you must report

For tax purposes, what counts is every time bitcoin leaves your ownership and you get something in return. The law calls this a private sale transaction (§ 23 EStG, the German Income Tax Act). Whether you have to report it depends on one question only: were there more than twelve months between purchase and disposal?

TransactionWithin one yearAfter more than one year
Sale for eurosreport, gain or lossdo not report
Exchange into another crypto assetreport, counts as a saledo not report
Paying with bitcoin, including via Lightningreport, counts as a saledo not report
Moving coins to your own walletnot a salenot a sale
Purchase, savings plan, holdingnothing to reportnothing to report

The period runs separately for each purchase. If you bought on 02.03.2026, a sale is tax-free from 03.03.2027. A sale on 02.03.2027 is still within the period.

Whether small Lightning payments really count one by one and how to record them in practice is covered in Lightning Network and taxes.

Do I have to file a tax return at all?

An employee who would otherwise not have to file is often obliged to by a bitcoin gain. The obligation arises when your income not subject to wage tax withholding exceeds €410 in total for the year (§ 46 EStG). A taxable sale gain is always at least €1’000, otherwise it would be exempt. So it is always above that threshold.

The €1’000 exemption limit

Since tax year 2024, private sale gains remain tax-free if their total for the calendar year is less than €1’000. Before that the limit was €600.

It is an exemption limit (Freigrenze), not an allowance (Freibetrag). With a gain of €999 you pay nothing. At €1’000 the whole amount is taxable, not just the part above the limit. The limit applies per person and to all private sale transactions together, including gold or other crypto assets. Losses from the same year are deducted first.

That is why it pays to know your total at the end of December. If you are just below it, one more small sale in the same year can make the whole gain taxable. A sale in January, by contrast, falls into the next year with its own limit.

What goes on Anlage SO

Anlage SO is called "Sonstige Einkünfte" (other income). For bitcoin you need the section on private sale transactions (private Veräußerungsgeschäfte), and within it the part for other assets (andere Wirtschaftsgüter). Real estate has its own part, which you leave empty.

For each sale, the form essentially asks for six items:

  1. Description, for example "Bitcoin, 0.03 BTC, exchange account X".
  2. Date of acquisition, meaning the purchase that was sold under FIFO.
  3. Date of sale.
  4. Sale price, the proceeds in euros.
  5. Acquisition costs, the purchase price in euros including purchase fees.
  6. Income-related expenses (Werbungskosten), mainly the fees on the sale.

For married couples filing jointly, each spouse enters their own sales. Each has their own exemption limit.

The form only has room for a few individual cases. With many sales, for instance from a savings plan with partial sales, it is common to enter the totals and attach or keep ready an itemised list. In ELSTER, the German online tax portal, you can submit it as a supporting document. What matters is that the tax office can trace every item in the total.

Interest from bitcoin lending also goes on Anlage SO, but in the section for services (Leistungen), not with the sale transactions. If you have a loss, you enter it the same way. Only then does the tax office record it and offset it against later gains.

FIFO: how to calculate the gain

If you bought several times, you have to establish which bitcoin you sold. The Federal Ministry of Finance (BMF) says: if you cannot assign the specific portion, the ones bought first count as sold first, separately for each wallet or account. That is FIFO, "first in, first out". Why this is so and which alternatives the BMF allows is in the tax guide. Here it is about the calculation.

On Anlage SO there are then two items: 0.03 BTC (bought 02.03.2026, sold 01.10.2026) and 0.05 BTC (bought 02.03.2026 and 01.06.2026, sold 06.10.2026). If a sale combines two purchases, you can also split it into two lines, one per purchase date. That is clearer.

How a taxable partial sale is calculated

Gain = proceeds × (amount sold from recent purchases ÷ total amount sold)
− sale fee × (the same share)
− Σ acquisition costs of the assigned purchases × (assigned amount ÷ purchase amount)

Taxable if Σ of all gains and losses from private sale transactions in the calendar year ≥ €1’000.

Tax-free from = purchase date + 1 year + 1 day (purchase on 02.03.2026 → tax-free from 03.03.2027).

Which records to keep

The tax office does not ask for records every year. But when it does, you must be able to support your figures, including for tax-free sales after more than one year. If you cannot prove the purchase date, it may estimate.

For each tax year, keep:

  • Transaction lists from all exchanges and apps as CSV and PDF, with date, amount, price and fees.
  • Annual or tax reports from the providers, where they exist.
  • Withdrawals to your own wallet with the transaction ID, so it is clear this was not a sale.
  • Your FIFO list per account and wallet, as you would hand it to the tax office.
  • Bank statements showing deposits to and withdrawals from the exchange.

Download this data every year, not only when you sell. Exchanges close, accounts are terminated, old exports disappear. There is no fixed statutory retention period for private individuals here. In practice you need the records of a purchase for as long as you hold those bitcoin, and afterwards until the tax assessment for the year of sale is final.

Tax reports from software: helpful, but check them

If you have many purchases and sales, you do not calculate by hand. Crypto tax tools import the exports or APIs of your exchanges and wallets and produce a tax report for Germany. Some exchanges also offer such a report directly. That saves time, but the result is only as good as the imported data.

Check these five points in particular:

  1. Transfers. If your own wallet is missing from the tool, a withdrawal appears as a sale and the later deposit as a new purchase. That invents gains and restarts the holding period.
  2. FIFO per wallet. Some tools calculate FIFO across all holdings by default. The BMF requires separation per wallet or account. Set the method accordingly.
  3. Completeness. If an old purchase is missing, for example from a closed exchange, the tool often sets the cost to zero. Then the whole proceeds are gain.
  4. Fees. Purchase and sale fees must be included, otherwise the gain is too high.
  5. Euro prices. For exchanges and payments, each transaction needs a euro value at the time it happened.

Attach the finished report as your list. Do not blindly copy the final total. Recalculate two or three sales as spot checks, as in the example above.

Bitcoin ETPs: briefly on Anlage KAP

If you hold bitcoin not directly but as a security in a brokerage account, Anlage KAP for capital income is often the right place, not Anlage SO. It depends on the product:

  • Funds, ETFs and unsecured tracker certificates are capital investments. Gains cost 25% flat-rate withholding tax plus solidarity surcharge, with no holding period. A German custodian bank usually withholds the tax directly. You mainly need to enter them on Anlage KAP if your account is abroad, if you want to offset losses between banks or if your personal tax rate is lower.
  • ETPs with a claim to delivery of deposited bitcoin are treated by the BMF like real bitcoin: after one year the gain is tax-free, before that it goes on Anlage SO. If your bank withheld tax anyway, you can request a review via Anlage KAP. If in doubt, get advice.

Which product is which type, and what else distinguishes an ETP from real bitcoin, is explained in Bitcoin ETP or real bitcoin.

DAC8: what changes from 2026

Since 01.01.2026, crypto providers in the EU record their customers' transactions for the tax authorities. The basis is the EU directive DAC8, implemented in Germany by the Crypto Asset Tax Transparency Act (Kryptowerte-Steuertransparenzgesetz). The data for 2026 goes to the Federal Central Tax Office in 2027 and from there to the local tax offices.

For your return, this mainly means: the tax office can compare your figures with the exchange's data. If you do not declare a 2026 sale that your exchange reported, it will be noticed. The tax office does not see bitcoin in your own wallet directly, but it does see the withdrawal to it. What exactly is reported is in DAC8 and CARF: what crypto providers report.

Good records become even more important. If the tax office asks about a reported withdrawal, you show that it was a transfer to your own wallet.

Correcting mistakes: correction or voluntary disclosure

If you notice that something is missing or wrong in a return you filed, you have three routes depending on the situation. Which one fits depends on whether the assessment is already final and whether the mistake was an honest error.

SituationRouteIn brief
Assessment less than a month oldObjection or request for amendmentsimply submit the corrected figures
Honest error, assessment already finalCorrection under § 153 AOreport without delay, the tax office amends the assessment
Gains left out deliberately or recklesslyVoluntary disclosure under § 371 AOcomplete, before discovery, with back payment

Correction. If you forgot a sale, for example because a tool did not capture an exchange, you must report it to the tax office as soon as you notice. A letter with the correct figures is enough. You pay the tax owed plus interest on the back payment.

Voluntary disclosure. If gains were deliberately not declared, that is tax evasion. A voluntary disclosure (Selbstanzeige) can bring exemption from punishment, but only if it is complete: all years of that tax not yet time-barred, at least the last ten calendar years, and before the tax office discovers the offence or announces an audit. Back payment and interest on evaded tax come on top. An incomplete disclosure has no effect. Have it written by a tax adviser or a specialist lawyer.

With DAC8 the window gets smaller. If you know old sales are missing, clear it up before the reported data reaches the tax office.

Frequently asked questions

Do I have to declare bitcoin that I only hold?

No. Holdings do not go on the tax return, and Germany has no wealth tax. You only report sales, exchanges and payments within one year of purchase, plus income such as lending interest.

Where do I enter bitcoin gains in ELSTER?

On Anlage SO, in the section on private sale transactions, in the part for other assets. For each sale you enter purchase and sale dates, proceeds, acquisition costs and fees. With many sales, you enter the totals and attach a list.

Do I have to report gains below €1’000?

No tax is due on them if all private sale gains of the year together stay below €1’000. Entering them does no harm: the tax office applies the exemption limit itself, and your return matches the exchange's data. You should always enter losses.

Is my exchange's tax report enough?

Only if you traded exclusively there. If you use several exchanges or your own wallets, the report only knows part of your purchases and transfers. Then check that withdrawals to your wallet were not counted as sales.

What happens if I forgot a sale?

Report it to the tax office as soon as you notice. If it was an honest error, that is a correction: you pay the tax and interest, and there is no criminal case. If nothing was declared on purpose, only a complete voluntary disclosure with professional advice helps.

How long do I have to keep the records?

There is no fixed period for private individuals. Keep the records of a purchase for as long as you hold those bitcoin, and afterwards until the assessment for the year of sale is final. For long-term holders that easily means ten years or more.

Sources

Not financial, legal or tax advice. Models are no guarantee.

Tags:

The Bitcoin Power Law newsletter

An email when we publish a new article or calculator. Every issue has a one-click unsubscribe link.

← All articles