UniswapDEX
How are Uniswap swaps taxed in Germany?
In short
For tax, every swap on Uniswap has two sides: you dispose of the token you give up and acquire the one you receive. A gain is taxable under § 23 of the Income Tax Act (EStG) if you held the token you gave up for no more than a year, unless your gains from all private sales add up to less than €1,000 for the year. Gas reduces the gain as deductible expenses (Werbungskosten).
When you put tokens into a pool as liquidity, TaxMaxi reads that as a swap for your position, and withdrawing as a swap back. The fees your position earns are income from other services under § 22 Nr. 3 EStG once you collect them.
- As of:
- 5 November 2026
- Based on:
- § 23 EStG, BMF letter of 6 March 2025
What is Uniswap?
Uniswap is a decentralized exchange on Ethereum and many other chains, including Base, Arbitrum, Optimism, Polygon and BNB Chain. Instead of an order book it has pools: each one holds two tokens that other people put in, and the price follows from the ratio between them. To swap, you put one token into the pool and take the other out, and you pay a small fee to the people whose liquidity is in the pool.
Three versions run side by side. In v2 you get an LP token for your liquidity. In v3 you place it in a price range and get an NFT for your position. In v4 all the pools sit in a single contract, the PoolManager, and a position is an NFT again.
- The app app.uniswap.org You pick what you want to swap or add as liquidity, and confirm in your wallet.
- The router 0x66a9…a8af Uniswap's Universal Router carries out your swap, through one pool or several.
- The pools v2, v3 and v4 This is where the other people's tokens sit, the ones you swap against.
For tax, only the swap counts: one token leaves your wallet and another arrives. It makes no difference whether you swap on app.uniswap.org, in a wallet app or through an aggregator that uses Uniswap's pools.
Uniswap at a glance
- Type
- DEX on Ethereum
- Contract
- 0x66a9893cc07d91d95644aedd05d03f95e1dba8afUniswap: Universal Router
- Contract
- 0x000000000004444c5dc75cb358380d2e3de08a90Uniswap v4: PoolManager
- Contract
- 0xc36442b4a4522e871399cd717abdd847ab11fe88Uniswap v3: positions
- Contract
- 0xbd216513d74c8cf14cf4747e6aaa6420ff64ee9eUniswap v4: positions
- Token
- UNIa crypto asset like any other
A Uniswap swap on the blockchain
A real swap through Uniswap from a public wallet, as TaxMaxi reads it. Next to each item the wallet gives up or receives is what it means for tax.
- −13,843,579.620029 KERMIT Disposalat the euro value of what was received
- +0.044159529940379093 ETH Acquisitionstarts the one-year period
- −0.00027121565232125 ETH Network feedeductible expenses (Werbungskosten) of the swap
Contracts called
- Uniswap: Universal Router0x66a9…a8afruns the swap through Uniswap's pools
- Uniswap v4: PoolManager0x0000…8a90holds the Uniswap v4 pools the swap went against
Just over 13.8 million KERMIT, a memecoin, went for just over 0.044 ETH. The router sent the swap through a Uniswap v4 pool, and the ETH came back from the PoolManager. The wallet paid the gas in ETH: that's a small swap too, and on a taxable swap it reduces the gain.
An example in euros
You buy ETH in February and in August you swap part of it for USDC on Uniswap, so within a year. You pay the gas in ETH. This is how TaxMaxi works out the swap:
- 1 February 2025Bought 1.5 ETH for €3,900.00
- 20 August 2025Swap: 1 ETH given up
- 20 August 2025Received: 3,700 USDC, worth €3,170.00
- 20 August 2025Fee: 0.0004 ETH
- Proceeds value of the USDC received
- €3,170.00
- Cost basis 1 ETH from 1 February 2025
- − €2,600.00
- Deductible expenses (Werbungskosten) the network fee
- − €1.27
- Gain after 200 days, taxable
- +€568.73
The fee in ETH is itself a small swap, so the year 2025 comes to +€568.96. That is under the exemption limit of €1,000: if it's your only gain from private sales in the year, you pay no tax on it.
If you had bought the ETH before 20 August 2024, more than a year before the swap, the same gain would be tax-free.
Worked out by TaxMaxi's tax engine, on the same principles as for your wallet.
The legal basis
Whether a swap costs tax is set by the Income Tax Act (EStG), above all § 23 EStG on private sales. How tax offices apply this to crypto is set out in the finance ministry's letter of 6 March 2025, which binds them.
The letter is divided into numbered paragraphs (Randnummern). Each principle below says where to find it; a click opens the letter at that spot.
- 1
-
2
One-year holding period
The year runs from the day of acquisition to the swap, and each swap starts it again for the token you receive. There's no extension to ten years. For tokens you acquire from 2027, a finance ministry draft would drop the holding period: What is set to change from 2027.
- 3
- 4
- 5
- 6
-
7
The exemption limit (Freigrenze)
If the sum of all your gains from private sales in the year stays under €1,000 (up to 2023: €600), it's tax-free. Above that, all of it is taxable, not only the part over the limit.
See the BMF letter, paragraph 53
-
8
Liquidity in a pool
When you put tokens into a liquidity pool, we treat that as a swap for your position: they count as disposed of at their market value, and that value is the position's cost basis. When you withdraw liquidity, we treat that as a swap back: the position's share, what was paid in first going first, counts as disposed of at the market value of the tokens that come back, and you acquire those tokens anew, with a new holding period. That's also where impermanent loss shows up. The finance ministry's letter says nothing about liquidity pools. Even whether paying in is a disposal at all is disputed, and with it the new holding period: the other reading sees the position as a mere receipt and the deposit as a loan. We take the cautious reading.
-
9
Fees from a pool
Fees and rewards that a position in a liquidity pool pays you are income under § 22 Nr. 3 EStG when you collect them, at their market value on that day, and each one gets its own acquisition date. What the position had earned by the end of the year but not yet paid out can't be looked up for past years, so it counts when you collect it.
Common questions
Is every swap on Uniswap taxable?
Every swap is a disposal, even between two stablecoins or with a memecoin (the finance ministry's letter of 6 March 2025, paragraph 54). The gain is taxable if you held the token you gave up for no more than a year and your gains for the year reach €1,000 in total. After more than a year it's tax-free. For the token you receive, the one-year holding period starts over.
How is liquidity on Uniswap taxed?
TaxMaxi reads it as a swap: when you put tokens into a pool, they count as disposed of at their market value, and that value is your position's cost basis. When you withdraw the liquidity, you swap the position back, and the tokens that come out start a new one-year holding period. The BMF letter doesn't name liquidity pools explicitly; TaxMaxi follows what it says about swaps. This reading is disputed: both views are on the liquidity pools page.
Are the fees from my position income?
Yes, income from other services under § 22 Nr. 3 EStG, on the day you collect them, at their value that day. If your income of this kind stays under €256 for the year in total, it's tax-free. TaxMaxi counts what the position has earned but not yet paid out only when you collect it. In v2 the fees sit inside the LP token and show up when you withdraw.
Does gas count as deductible expenses (Werbungskosten)?
On a taxable swap, yes: it reduces the gain (BMF letter, paragraph 59). On a swap after more than a year it doesn't count. Since you pay gas in ETH, you give up ETH for it, and that's a small swap too.
What doesn't TaxMaxi read on Uniswap yet?
A position opened before your wallet's start or whose NFT came from another address, a v4 pool with a hook that changes what positions pay, and copies of Uniswap such as QuickSwap. TaxMaxi puts such transactions in front of you in the review, and you say what happened.
Does this also apply to Uniswap on Base or Arbitrum?
Yes. TaxMaxi reads swaps and liquidity on Uniswap the same way on Base, Arbitrum, Optimism, Polygon and BNB Chain, each with that chain's contracts. If you add your address once, TaxMaxi reads each of these chains you've used it on.
More Ethereum protocols
This page explains how TaxMaxi calculates. It is not tax advice and does not replace a tax advisor.