
Cryptocurrency transactions are subject to Income Tax in Germany. The German Federal Central Tax Office or Bundeszentralamt für Steuern (BZSt) has set out strict guidelines on how cryptocurrency buying, trading and mining is taxed. This guide breaks down everything you need to know about individual crypto taxes and how you can avoid notices, audits and penalties later on. We'll also explain how to calculate your crypto taxes, the forms you need and give you tips on how to reduce your tax bill.
One last thing before we start - the rules on crypto tax are in constant flux. At Koinly we keep a very close eye on the BZSt's crypto policies and regularly update this guide to keep you informed and tax-compliant.
First Published 18 May 2021: Welcome to your German cryptocurrency tax guide!
Updated 25th November 2022: Updated for the 2022 tax year.
Cryptocurrency is views as a private asset in Germany, which means it attracts an individual Income Tax rather than a Capital Gains Tax. The key thing to know is that Germany only taxes crypto if it's sold within the same year it was bought.
So while Germany taxes certain crypto events, like short term trades, mining and staking, its tax rules on crypto are far more lax than in other countries. That's because bitcoin and other crypto is not treated as property under the German Tax Acts.
Instead cryptocurrency is classified as 'other assets', and selling it is a 'private disposal.' This distinction is important since the private sale of assets holds tax benefits in Germany. As a 'private sale' in Germany crypto gains are completely tax-exempt after a holding period of one year.
In addition, profits on crypto sales up to 600€ per calendar year remain tax-free.
Crypto traders who use cryptocurrencies for long-term financial investment and do not often relocate them, can thus generate tax-free profits in Germany.
In Germany your individual Income Tax rate is used to tax short term cryptocurrency gains.
As well as income tax, everyone has to pay solidarity tax (Solidaritätszuschlag or 'Soli'), which is capped at 5.5% of income tax.
This surcharge is imposed as a percentage on all individual income taxes. .
The decisive factor for whether taxes are due on a cryptocurrency or not is the time of purchase and sale, i.e. ultimately the holding period. Crypto investors who have Bitcoin, Ethereum and other crypto in their wallets for more than a year can initially sit back and relax, because in this case, no crypto tax has to be paid due to the minimum holding period of 1 year.
When it comes to cashing in on staked crypto, that tax-free holding period is a minimum of 10 years.
If you have owned crypto for over a year, the sale is tax-free regardless of the amount you profit when selling.
You won't pay tax on crypto gains:

You'll only pay tax, as 'other income' on crypto gains:

Unlike Australia, Canada, UK and the USA, Germany doesn’t have any particular separate Capital Gains taxation policy. When private individuals buy or sell crypto the type of tax they'll need to pay - when applicable - is Income Tax, as outlined throughout the German Income Tax Act.
If you’ve bought or sold cryptocurrency in the last financial year, you will need to declare your crypto totals on your Income Tax Return. You will need to declare this as 'other income' on a separate form to your main income declaration form.
If you have an account with a European digital currency exchange, then it's likely that the Bundeszentralamt für Steuern (BZSt) already has your data.
When the European Union’s Sixth Anti-Money Laundering Directive comes fully into force on June 3 2021, every company that provides financial services to cryptocurrency customers and businesses will have to comply with much tougher regulations about when and how they identify customers. Data is made available between EU member states in a bid to stamp out money laundering and illegal activities.
The German tax year runs from January 1 to December 31. Technically, the tax deadline is on the 31st of July each year. However, if this falls on a weekend it will fall to the next working day. If you are completing your tax return for 2021, it needs to be filed by 1st of August 2022.
The BZSt wants to know about your crypto activity in terms of income and profits made from crypto trades, swaps and sales. You'll need to declare this in your annual tax return (Einkommensteuererklärung), in the same way you need to report your regular income, gains and losses.
Once you, or your accountant has calculated your German crypto tax (we have an app for that!), the easiest way to file your taxes is via 'ELSTER', the BZSt's online tax platform (Elektronische Steuererklärung).
You also have the option of declaring your crypto activity on paper and posting your tax forms to your local tax office (Finanzamt).
To file your German cryptocurrency tax, you'll need 2 forms, one for general income, Hauptformular ESt 1 A, and one for your crypto income, Anlage SO.
Any German resident who has earnt income or made capital gains (not just from crypto).
This form requires you to enter your regular income tax information.
Hauptformular ESt 1 A (general tax form): This details your regular income such as a salary and your German bank account information.
Anyone who has traded in cryptocurrency in the last financial year.
This form requires you to enter all your crypto income totals (income and gains).
Anlage SO (Other income tax form): You must declare your profit from trading in cryptocurrencies in Annex SO (Other Income).
Most tax offices around the world require residents to keep detailed records of cryptocurrency transactions for 5 years. Germany is no different. It's advisable to keep the following records:
Koinly can help with record keeping. By syncing your wallets and exchanges to your Koinly account, you will have one central dashboard from where to record and view all of your crypto activity. Portfolio tracking is available on a FREE Koinly plan.
Crypto tax reporting is fairly new, and a road less traveled for most accountants. That doesn't mean the German taxman is going to cut you any slack. Here are 4 ways you can tackle your crypto taxes and keep in the BZSt's good books. We'll start with the easiest and most accurate method first.
Don't get stuck in the busywork. Don't get it wrong. Don't rely on your accountant to know where to look. Use Koinly. Here's how easy it is:
As we mentioned earlier, most cryptocurrency transactions fall under the income tax regime which requires you to pay a tax on the profit/loss from your trades.
Cryptocurrencies (e.g. Bitcoin, Ethereum and others) are legally not defined as “currencies” but as property (as in “object”) in Germany. Therefore, buying bitcoins is like buying art, music, or other items.
When trading cryptos privately, it is regarded as any other private trade, for example like selling your car. In a private trade in Germany, you only have to pay taxes on any profits you generate with that trade and only if you sell that item within one year of buying it.
Remember that crypto mining is viewed as a business activity and is taxed under a different tax system than Income Tax.
Here's a summary of how your crypto activity is likely to be viewed the BZSt:

Here's a breakdown of the most common crypto scenarios and the type of tax liability they result in:
Cryptocurrency interest income, staking income, and hard forks are taxed as income only when gains are made past a specific holding period. Here's a breakdown of the most common crypto scenarios where income tax applies:
In Germany, if you sell bitcoins or any other cryptocurrency within twelve months of buying, you will need to pay income tax. When trading cryptos privately, it is regarded as any other private trade, for example like selling your car. In a private trade in Germany, you only have to pay taxes on any profits you generate with that trade and only if you sell that item within one year of buying it.
This means that whenever you sell something that you have owned for more than one year, you do not have to pay taxes on the profits you generated with that trade.
To avoid this, you would need to a) sell for under 600€ or b) wait for a year to pass before you sell.
Hilda buys 0.1 Bitcoin in July for 1,000€ and sells it in November for 1,800€. As she has sold her crypto within the same year as buying it and the profit exceeded the 600€ tax-free cap. Hilda has effectively added 800€ to her annual income. She will be taxed on this gain, according to her Income Tax bracket.
Trading one crypto for another (i.e. BTC → XRP) is a taxable event in Germany if a profit is made exceeding 600€, and if that gain is made in the same year as the initial crypto purchase was made.
A stablecoin - like TrueUSD or EURB, is simply a class of cryptocurrency that offers price stability. That's because stablecoins are backed by a reserve asset, usually a stable fiat currency like USD or EUR. The sale of a stablecoin will attract tax if the value exceeds
There is no major advantage or disadvantage between trading with fiat and trading with a stablecoin when it comes taxes. Like with all disposals, stablecoins will attract tax only if they are traded in one year, and if the profit realised exceeds 600€
ICOs (Initial Coin Offerings) or IEOs (Initial Exchange Offerings) refer to a situation where investors can purchase tokens/coins in a yet-to-be-released cryptocurrency/company. This purchase usually happens via an existing cryptocurrency likes Bitcoin or Ethereum.
From a German tax perspective, this could amount to a crypto-to-crypto trade. The taxable event is triggered on the date of the ICO transaction, when you receive the new tokens. When you sell the new tokens at a later date, the cost base of that transaction will be the value of the cryptocurrency that you paid for it on the date of the ICO/IEO.
You will only be taxed if you dispose of the new coins within a year from purchase.
Margin trading with crypto involves borrowing funds from an exchange to carry out your trades and then repaying the loan later. There is usually some interest involved as well.
There is currently no guidance on how this is taxed however it is important to note that there is a clear difference between margin trading and trading with futures, so the rules that apply to futures trading/speculation may not apply to margin trades.
On a futures trade you are speculating on the rise/fall of a coin, on a margin trade you are borrowing funds to carry out some trades. Most exchanges have different platforms for both, for ex. Binance allows margin trading on spot markets, whereas you have to trade on a completely different platform if you want to do futures as well - Binance Futures.
Taking this into consideration, the conservative approach is to simply treat borrowed funds as your own investments and pay CGT on the repayment of the loan (since this would be deemed a disposal).
Purchases of goods and services with crypto are treated the same as trading crypto in Germany. For example, if you acquire 7,000€ worth of ETH and purchase a gaming PC with that crypto when it’s now all worth 9,000€, you will be taxed on the 2,000€ net gain on that crypto as if it were income.
You could, however, avoid this tax if you held the ETH for a year before making your purchase. Gains after one year of purchase are tax free.
In Germany coins can be sold tax free when they were held for over 1 year. Except they were used to gain additional profit as it is the case with staking. Then the period is extended to 10 years. Any profit made off staked crypto should be declared in your annual tax return as 'other income'.
Whether you are freelancing or working for a company that pays employees in crypto, you can't escape income tax.
Any crypto - BTC or otherwise - received as income are taxed at market value at the time you received them so make sure you declare this income on your annual tax return or you might end up facing the tax hammer.
Converting cryptocurrencies into fiat currencies (e.g. Euro or USD) or into other cryptocurrencies is regarded as a sale. In the case of converting Bitcoin into Ethereum, be careful to wait until you have owned the Bitcoin for at least one year. Otherwise, you would need to pay taxes on any profits at the time of conversion.
In futures trading, you are not actually buying or selling any crypto. Instead you are speculating on the rise or fall of the price of a crypto asset in the future. When you close your position, you will either make a profit or a loss (P&L). Depending on the scale at which you're doing this - this may be subject to income tax - regardless of how long you hold your asset for.
Note: If you are using Koinly to calculate your taxes then you can control how the P&L is taxed on the settings page.
Any crypto you get in return for signing up or referring users to a service is taxed as Income.
The major thing to remember is that crypto trades are tax free under 2 conditions: if the profit made is less than your 600€ tax-free cap, and if a sale/swap/trade happened 1 year after the related crypto was purchased.
In Germany, if you've owned crypto for over a year - the sale is tax-free regardless of the amount you profit by selling them. Furthermore, you don’t need to declare them in your tax return!
Giving Bitcoin or other crypto to your family or friends as a gift is regarded as any other gift in Germany. Gifts are tax-free up to a value of 20,000€ for friends and up to 500.000€ for spouses. Any higher value is taxable under the “Schenkungssteuer”, which has different tax rates depending on who you gift it to (i.e. spouse, your children, your parents, your siblings, or friends). The tax rates for gifts range from 7% up to 50%. The tax exemption limits are renewed after 10 years.
In Germany, if you sell bitcoins or any other cryptocurrency within twelve months of buying, up to 600€ earned with crypto trading is tax-free. This is according to rule 23 EStG, where private sales that do not exceed 600€ are tax exempted.
Like in most parts of the world, there are no taxes on buying or HODLing cryptocurrencies in Germany. However, keeping accurate records of the purchase is very important so that you can calculate the cost basis of the transaction when you decide to sell or 'dispose' of your crypto.
Koinly is not just crypto tax software, but a crypto portfolio tracker too - the perfect tool to keep records of your crypto purchase and sale dates.
In Germany, crypto can be sold tax free if it was held for over 1 year. Staked crypto needs to be held for 10 years after purchase in order to be tax exempt.
In the context of an airdrop, a trader receives crypto without having purchased it or provided any other service for them. The cryptocurrencies are not transferred to the user from the legal sphere of a third party. Rather, they come into 'existence' only in the user's assets. The cryptocurrency is created directly in the wallets of the users, and the wallets must fulfill certain criteria. In this respect, airdrops resemble a lottery win or a chance find (so-called windfall profits).
In the absence of a purchase transaction, taxation in accordance with Section 23 (1) No. 2 of the German Income Tax Act (EStG) is not possible in the case of a subsequent sale. If the user does not provide services, other income as defined by Section 22 No. 3 EStG is also not applicable. Therefore the sale of airdrops is tax-free.
Moving crypto between different exchanges, wallets or accounts is not a taxable event and doesn't trigger income tax. Having said that, it's important to keep track of these movements. Try an automated crypto tax software like Koinly to keep track of your cost-basis.
Let's look at how crypto tax is calculated in Germany to help us understand how Koinly can help.
To calculate the crypto taxes for Karim we are going to use Koinly which is a free online crypto tax calculator.
After entering the 3 transactions into Koinly manually, this is the output:

We can see the gain/loss on each transaction clearly. Navigating to the Tax Reports page also shows us the total capital gains.

As you can see, Karim will have a taxable capital gain of 500€ along with taxable income of 10€ from cryptocurrencies.
The good thing about crypto tax software is that whether you have 10 transactions or 10,000 - it is equally easy to generate your crypto tax reports! You can sign up for a free Koinly account and view your capital gains in a matter of minutes.
The German tax office hasn't yet clarified whether there is a correct cost basis method for calculating your crypto taxes. However, the FIFO - First In First Out - cost basis method is commonplace. This means you sell the coins you bought first and use this to calculate your subsequent proceeds and profits.
There are a few ways you can reduce your tax bill in Germany...
The first step towards minimising your tax liability is figuring out what losses and expenses you can offset against your taxable income. Expenses could include
You pay no tax if you hold your Bitcoin, Litecoin, Ethereum, Ripple, or other altcoins, for a period of over one year. No matter how much you make selling your cryptocurrencies, you don’t pay tax on gains if you’ve held them for over one year. You will only pay tax on short term gains.
By separating your accounts into specific wallets or ledgers, say one for short term trades and one for the crypto you HODL, you can keep your data clean and manageable and avoid paying tax accidently.
However, you should record any losses as you can set off these losses with any future crypto profits within one year. In order to claim this loss, you need to be able to provide certain evidence. This includes:
The BZSt is focused on ensuring all taxpayers meet their tax obligations. If you’re not sure whether you’ve correctly reported your crypto taxes over previous years, it’s best to be proactive and amend your previous tax reports.
While the task of preparing your crypto taxes can seem quite daunting - especially if you traded on multiple exchanges - there are tools like Koinly which can make your life really easy.
Here's how it works with Koinly so you can see for yourself:
Most exchanges have API's that can allow Koinly to download your transaction history automatically. You can also import CSV or excel files with your transaction history if you prefer that (or if your exchange does not have an API).
Koinly does a number of things under the hood in order to calculate your capital gains and income.
First it fetches the market rates at the time of your trades, then it matches transfers between your wallets and exchange accounts and finally it calculates your capital gains. You can easily configure the accounting method used for the gains (it supports FIFO, LIFO, HIFO, Spec ID and a number of other methods). The default in Germany is FIFO.
All this is automated so the only thing you have to do is head over to the Tax Reports page to see a summary of your gains:
Note that you can also use the Dashboard to stay on top of your taxes as you carry out trades. This can help you make good tax-friendly trades and avoid surprises at tax time! It also helps with record-keeping.
The final step is to download your tax reports. The tax report you want is called the Complete Tax Report.
From us to your inbox, weekly.