Crypto Trading Bots and Tax: What Applies With Thousands of Trades a Year
A bot turns one investment decision into hundreds of disposals, and the tax office counts every single one. This guide explains the holding period, FIFO, the exemption limit and the record-keeping duties, and what to set up before the bot makes its first trade.

Table of Contents
Table of Contents
A trading bot does exactly what you switch it on to do: it trades. Twelve decisions a year quickly become twelve hundred, and in Germany every single one of them is a separate event for tax purposes. That is the point at which many bot users start to think twice, usually in March, when the tax return is due and the trading platform's export button produces a file with a four-digit number of rows.
This guide answers the question behind that: what does a crypto trading bot trigger for tax purposes, and what do you have to set up before it makes its first trade? It is about the holding period, about the FIFO allocation rule, about the tax-free threshold, about the line to commercial trading and about the record-keeping duties that the Federal Ministry of Finance has expressly described since March 2025. At the end there is a setup list you can work through.
Why a bot changes your tax position before it makes any profit
The decisive difference between manual and automated trading lies not in the size of the profit but in the number of transactions. Anyone who buys Bitcoin and leaves it alone for three years has two events for tax purposes: a purchase and a sale. A bot that lays a grid of buy and sell orders across a price range may produce a thousand events in the same period.
Not a single rule changes as a result. What changes is the effort required to comply with them, and the likelihood of making a mistake that gets noticed. Whether running a bot pays off at all we have worked through elsewhere, in our piece on whether crypto trading bots are worth it. This text starts one step later: the bot is already running, and now it is about the tax office.
The principle: every swap is a disposal under section 23 of the Income Tax Act
In Germany crypto assets count as other economic goods within the meaning of the Income Tax Act. Gains from their sale therefore fall under private disposal transactions pursuant to section 23 of the Income Tax Act and not under the withholding tax you know from equities and funds. That has two consequences pulling in opposite directions: there is a holding period after which a gain remains tax-free, but within that period the gain is taxed at your personal income tax rate, which can be higher than the flat 25 percent.
A disposal is to be understood more broadly than the word suggests. It covers every swap, not merely a sale for euros: Bitcoin for Ether, Ether for a stablecoin, a stablecoin back into Bitcoin. That is precisely where bot trading is special. A grid bot that shifts back and forth between two coins without ever triggering a payout in euros still produces a tax-relevant event at every step. That nothing arrives in your bank account is irrelevant to this.
The gain per transaction is calculated as the disposal price less the acquisition cost and the directly attributable costs. In a swap, the disposal price is the market value of what you receive, converted into euros at the time of the transaction. That conversion is the point at which a spreadsheet breaks down at a thousand rows.
The one-year holding period and why a bot practically never reaches it
If more than twelve months lie between acquisition and disposal, the gain remains tax-free under section 23 of the Income Tax Act. That period is the reason many German investors hold crypto assets at all rather than trade them.
A bot works structurally against that period. Its job is to capture price moves within hours or days. Every successful trade resets the holding period of the units concerned to zero. In practice that means you will almost always pay the full tax rate on the holdings the bot moves, and you should factor that into your return expectations before switching it on.
From that follows a design rule that sounds simple and is often ignored in practice: separate the holdings the bot is allowed to touch from the holdings you keep for the long term. That is done most cleanly through separate accounts or separate wallets, because units are allocated on a per-wallet basis. If both run through the same pot, the bot also reaches your older units in the calculation, and then you lose holding periods you had already earned.

FIFO: which unit the bot sells is not up to you
If you have bought Bitcoin at five different points in time and the bot sells part of it, the question arises which of those units it gives up in the calculation. Your instinct may say the most expensive one, so that the gain comes out small. That is not how it works.
FIFO stands for first in, first out and means that the unit acquired first always counts as the one disposed of first. The Federal Ministry of Finance provides for this method of allocation, applied to the respective wallet or account. The consequence is uncomfortable: when the bot sells, it reaches your oldest units in the calculation, that is, the ones with possibly the lowest acquisition cost and the highest gain. What exactly distinguishes FIFO from other methods we have taken apart in our explainer on FIFO and LIFO for crypto assets.
For bot operation the same conclusion follows as in the section before, only from a different direction: separate wallets are not tidiness for its own sake but the only lever with which you steer at all which units the bot reaches.
Trading bots comparedThe 1,000 euro threshold, and why an exemption limit is not an allowance
An annual exemption limit applies to private disposal transactions. Since the 2024 assessment period that limit has been 1,000 euros; before that it was 600 euros.
The difference between an exemption limit and an allowance is regularly confused and, in case of doubt, costs real money. An allowance would always stay tax-free, and only the excess would be taxed. With an exemption limit it is different: if it is exceeded by even one euro, the entire gain is taxable, not merely the excess. On an annual gain of 999 euros you pay nothing; on 1,001 euros you are taxed on 1,001 euros.
For bot users that is more relevant than for buy-and-hold investors, because a bot produces many small gains that add up inconspicuously. Anyone close to the limit towards the end of the year has a solid reason to switch the bot off for the final weeks — or, conversely, with accumulated paper losses, a reason to realise those before the turn of the year. Losses from private disposal transactions can, however, only be offset against gains of the same income type, not against your salary and not against equity gains.
When private trading becomes commercial trading
The question that sooner or later comes up with high trade counts: does the trading become commercial at some point, with trade tax, accounting obligations and the loss of the holding period?
There is no fixed number at which that happens. The much-quoted three-object rule comes from property law and does not apply here. For securities trading, case law has developed a fairly generous standard over decades: even a high trading volume and a high number of transactions regularly remain private asset management, as long as you trade for your own account and do not appear in the market like an investment services firm. Signs pointing the other way are, for instance, trading for the account of others, the systematic use of borrowed capital in the manner of a dealer, or an outwardly visible business operation.
Whether that standard can be transferred one to one to crypto assets has not been conclusively settled by the highest courts, and that is precisely why caution is in order with blanket statements — in both directions. Anyone running a bot for third parties, charging fees for it or co-managing several accounts belonging to other people is visibly moving out of private asset management. We have dealt with the delimitation in more detail in our piece on the difference between private and commercial crypto trading. If your set-up comes anywhere near those features, that is the moment for advice and not for an internet search.

Record-keeping duties: what the finance ministry has expressly required since March 2025
With its circular of March 6, 2025, the Federal Ministry of Finance revised its administrative position on crypto assets and replaced the earlier circular from May 2022. The most important addition for bot users concerns the tax return, cooperation and record-keeping duties, which are now described there separately.
The practical core is this: you must be able to evidence your transactions without gaps. That includes the complete transaction statements of the trading venues used, the allocation of holdings to wallets and accounts, the exchange rates at the relevant time and the origin of the funds deployed. If you cannot do that, the tax authority may estimate the basis of assessment. An estimate is not a formality to be smoothed over later but, as a rule, more expensive than the correct declaration would have been.
The catch with automated trading lies in the transience of the data. Trading venues often keep exports available only for a limited time, bot providers disappear from the market, and API keys expire. What you do not secure today may be impossible to obtain in three years — and three years is a short span in tax matters. That is why the export belongs in the monthly rhythm and not in the week before the return is filed. Which tools take that over automatically and connect directly to the trading venues is shown in our overview of crypto tax tools and portfolio trackers.
What running a bot costs and how those costs are classified
Besides the trades, a bot produces running costs of its own: the trading venue's fee per execution, often a monthly subscription for the software, sometimes the cost of a server on which the strategy runs.
Trading fees directly connected with a single transaction reduce the gain on that transaction — so they belong inside the calculation and not on a separate list. Considerably less clear is the treatment of running costs such as the subscription or the server, because they cannot be allocated to any single transaction. Do not count firmly on being able to deduct them in full here, and have the point clarified rather than deciding it yourself. More important than the tax outcome is the commercial question anyway: a bot whose subscription and fee load eats up the gross return is a loss-making exercise even with perfect tax treatment. Which models bill in which way you can set side by side in our comparison of crypto trading bots.
Document thousands of trades cleanlyWhat to set up before the bot makes its first trade
Five things can be dealt with in advance, and every one of them is laborious to impossible to catch up on later.
- Separate accounts or wallets for the bot holdings and the long-term holdings. This protects earned holding periods from FIFO access and is the single most effective step of all.
- A monthly, automatic export of all transactions. Store it somewhere that exists independently of the trading venue and of the bot provider.
- A tax tool that connects to the trading venues directly. At four-digit trade counts, manual work is no longer a serious option.
- A note on the strategy and on the period in which the bot ran. A year later you will otherwise no longer know why a hundred trades arose on a particular day.
- A tax reserve kept separate from the trading capital. Gains within the holding period are taxed at your personal rate, and that amount is not available to you for further trading, even if it is sitting in the account.
Trading bots and tax: what to take away
- Separate the holdings before you start the bot. Separate wallets for trading and long-term holdings prevent FIFO from using up your old units that are ripe for the deadline. Which provider allows which account and sub-account structure you can see in the trading bot comparison.
- Set up the monthly export, not the annual one. The record-keeping duties fall on you, not on the trading venue, and exports are available only for as long as the provider keeps them. The suitable tools are in our overview of tax tools.
- Check your annual position against the 1,000 euro threshold before the turn of the year. One euro above makes the entire gain taxable. Where the figures end up in the return later is explained in our piece on where to enter crypto in your tax return.
The authoritative texts in the original: the wording of the law on private disposal transactions in section 23 of the German Income Tax Act and the Federal Ministry of Finance circular of March 6, 2025 on individual questions of the income tax treatment of certain crypto assets.
This text is a general classification and does not replace tax advice. How your case is to be treated depends on your set-up, your volume and your other income; settle that with your tax adviser or your tax office.
(As of September 24, 2026. This article is not investment advice. Prices and fee structures change; check the terms with the provider before you buy.)
Transparency note: This article was produced with the assistance of artificial intelligence and reviewed by our editorial team before publication. All figures and claims were checked against the primary sources linked in the text. The feature image was generated with AI.
Related articles
- Selling XRP After a 53 Percent Week: What the Holding Period Costs
- Take Ethereum Profits or Wait Out the Holding Period? What the Price Jump Means for Your Tax Bill
- Bitcoin 29 Percent Below Last Year: Which Crypto Losses You Can Still Use Before the One-Year Holding Period Expires
- Bitcoin Savings Plan and Tax: How the Holding Period, FIFO and the Exemption Limit Interact on Monthly Buys
- Crypto Loss Carryforward in Germany: What Happens to Old Losses Under the 2027 Tax Plan






























