Selling presale ICO or NFT tokens can be taxable in the UK. A quick flip can trigger Income Tax or CGT depending on how you received them.
Key factors that decide tax treatment
Quick sales after a presale are often a disposal for CGT. Three factors can change that outcome.
How you obtained the token matters, as does the nature of your activity; whether the asset is fungible or unique also affects the tax rules.
Paying for the token in fiat or crypto establishes a capital cost basis — convert that cost to GBP at the time of purchase.
If you received the token as a discount, bounty, reward or payment for services, treat the receipt carefully, since HMRC may classify it as a taxable income event at the market value when received.
For fungible tokens, HMRC applies matching rules, including same‑day matching, the 30‑day rule and Section 104 pooling.
NFTs are unique and identified individually for tax, which affects which cost you use for a sale.
Field tip: Many advisers say "just treat everything as CGT." After handling dozens of presale claims, the biggest mistake I see is ignoring discounted receipts. HMRC often treats those receipts as income. Document why you received the token.
Decision tool, quick path
Step 1
How you got the token: Paid / Received
Step 2
If paid → CGT path. If received → check for income (services/discount)
Step 3
Fungible? → Matching/pooling applies. NFT? → identify item by tokenId
Use this to classify each transaction before calculating GBP values and filling the Self Assessment.
Quick classification questions
Was the token paid for in the presale? If yes, start on the CGT route. If it was a reward, discount or paid for services, treat it as income.
Only clear contrary evidence will change that view. Did you behave like a trader? Evidence such as frequent, organised sales, advertising or inventory‑style operations points towards trading income.
In that case, the tax treatment changes to Income Tax. Was the asset unique (NFT) or fungible (ERC‑20)? Fungible tokens use matching and pooling rules.
NFTs require per-item cost records. Use a decision tree that separates airdrops, presales, rewards and paid purchases. This helps if HMRC asks questions later.
If tokens arrive unsolicited with no contract link, presume later gains are CGT disposals. If tokens were issued as consideration for services or promotional work, the receipt is normally income.
The taxable amount is the market value less any price paid. A standard presale purchase where you paid fiat or crypto at a stated price is usually capital in nature.
But a discounted presale you paid materially less for often creates a mixed outcome. The discount element can be taxed as income.
Set the CGT cost basis using the full market value. Rely on factual triggers and contract terms to decide the correct tax path.
Look at advertising, expectation of work, payment requirement and any guaranteed value. Record evidence such as emails, terms and screenshots at the receipt timestamp.
Keep clear records for each timestamped on‑chain transaction.
Paid presale flips, typical investor case
When you bought a token in a presale using fiat or crypto, selling it later is normally a disposal. This disposal is typically subject to Capital Gains Tax.
Calculate the gain in GBP and report it on SA108. Start by converting your acquisition cost to GBP at the purchase timestamp.
Use a reliable exchange rate from the moment the transaction confirmed on‑chain. Next, convert the sale proceeds into GBP at the exact time of disposal.
Deduct allowable costs such as gas, marketplace fees and purchase fees. The result gives you the gain or loss.
Matching and pooling details
HMRC uses same‑day matching, the 30‑day rule, then Section 104 pooling for fungible tokens. This order decides which units are treated as sold.
If you bought 100 tokens across three dates and sold 50 the next day, same‑day purchases are matched first. That matching can change which cost is used and the resulting gain.
Practical rate selection
Use major exchange tickers like Coinbase or Kraken, or a reliable aggregator with timestamped data. Save a screenshot or URL showing the rate at the transaction timestamp.
Using the exact second of on‑chain confirmation as the rate timestamp is best; end‑of‑day averages invite HMRC queries.
Received or discounted presale flips, when income applies
Receiving tokens at a discount, as a bounty or as payment often creates an income event. The market value at receipt becomes taxable and forms the cost basis for later CGT.
If you were paid with tokens for services, enter the market value as income. Select employment or self‑employment pages depending on the facts.
This changes the tax picture. You may pay Income Tax and NICs now and CGT later when you dispose.
The income‑taxed value usually becomes the CGT cost basis.
How to prove market value on receipt
Capture market listings and trades close to the receipt timestamp; presale valuation materials also help.
Exchange trades near the receipt time are best for HMRC.
Practical pitfalls with discounts
Many assume the discount is purely a capital advantage. In practice in England, HMRC commonly treats discounts tied to commercial links or consideration as earnings.
Plan for Income Tax, not just CGT.
Field data: A typical case I handled had presale tokens given to a community moderator. HMRC taxed those tokens as [income](https://mindyourownbusiness.uk/are-nft-flips-taxed-as-trading-income-uk-artists/) at a market value of £3,400.
A later sale produced a small [capital](https://mindyourownbusiness.uk/capital-gains-vs-income-nft-flips-btc/) loss. That did not undo the Income Tax already charged. Keep receipts proving why tokens were issued.
Token↔token swaps and NFT uniqueness
Swapping one cryptoasset for another is a disposal for CGT. Value the disposed asset in GBP at the swap timestamp.
Treat the received asset's GBP value as its acquisition cost. For NFTs, cost identification is per item.
You cannot pool NFTs. Each tokenId has its own cost basis.
This applies whether paid, discounted or taxed as income at receipt. Gas and fees on DEX swaps are allowable costs that reduce gain.
Include these costs at both disposal and acquisition stages.
Token swap worked rule
If you swap Token A for Token B, record proceeds as the GBP value of Token A at swap time. New cost for Token B is the GBP value received.
Later disposal of Token B uses that cost.
NFTs and royalties
NFT creators may receive royalties on secondary sales. Royalties can be taxed as income for the creator.
VAT may apply where the activity is a business providing digital services.
Common filing errors that cost you
The most frequent HMRC triggers are incorrect GBP conversions, ignoring matching/pooling and failing to treat discounts as income. These errors give wrong gains and risk penalties.
Always convert at the transaction timestamp and keep a traceable price source. Do not rely on wallet UIs alone.
Export CSVs and save exchange screenshots showing the rate. Do not pool NFTs.
Error: wrong timestamp
Using a price hours or days away from the on‑chain confirmation can materially change a gain; use the block confirmation time as your timestamp.
Marketplaces, royalty fees and gas are allowable costs. Leaving them out inflates the taxable gain.
Worked examples, convert crypto → GBP
The following three examples use clear numbers, timestamps and price sources. Keep the same method in your calculations.
Example 1. pre‑listing flip
Purchase: 0.5 ETH on 01‑Jan at 09:04 UTC in presale for TokenX (tx hash: 0xabc...01). ETH price at 09:04 UTC = £1,600 (source: Coinbase snapshot).
Acquisition cost in GBP = 0.5 × £1,600 = £800. Gas and platform fee = £10. Total cost = £810.
Sale: sold TokenX to buyer for £2,400 on 10‑Jan at 14:15 UTC (sale page snapshot saved). Marketplace fee = £240 (10%). Net proceedings = £2,160.
Capital gain = £2,160 − £810 = £1,350. Report on SA108. Enter proceeds £2,160, costs £810 and gain £1,350.
Pay CGT on the taxable gain after your annual exempt amount.
Example 2. token→token swap
You swapped 1,000 TokenA (presale acquisition cost = £500 total) for 0.2 ETH on 15‑Feb at 11:22 UTC (tx hash: 0xdef...02). ETH price at 11:22 UTC = £1,700.
Proceeds in GBP = 0.2 × £1,700 = £340. Allowable gas fee = £5. Net proceeds = £335.
Gain = £335 − £500 = loss of £165. That is an allowable loss to offset gains. Cost basis for received 0.2 ETH = £340.
If you later sell that ETH for GBP, use £340 as the acquisition cost to compute the next disposal's gain or loss.
Example 3. NFT minting at discount
Mint: you paid a discounted presale price of 0.05 ETH to mint NFT123 on 20‑Mar at 08:30 UTC. Market value at mint time = 0.5 ETH. ETH price = £1,800.
HMRC view: the discount of 0.45 ETH (£810) is likely taxable as income if linked to services or consideration. Record income £810 on SA100.
Your acquisition cost for CGT is the market value used for income tax (£900). If you sell later for 0.6 ETH when ETH = £2,000, proceeds = £1,200.
Gain = £1,200 − £900 = £300. Pay CGT on that gain and include the income tax liability in your filing.
Worked numeric flip: convert each crypto leg at the timestamp of the on‑chain event. Record gross market values and fees. Apply same‑day, 30‑day and Section 104 matching rules before assigning costs.
Keep clear records for every leg of a chain swap.
Decision matrix
| Acquisition | Disposal | Likely tax treatment |
| Paid in presale (fiat/crypto) | Sold for GBP | CGT (convert both to GBP at timestamps) |
| Received as reward/discount | Sold later | Income on receipt; then CGT on disposal (income value is cost) |
| Airdrop (no contractual tie) | Held or sold | Often CGT; income only if received for services or consideration |
Reporting: exact self assessment steps
Report capital gains on SA108. Income events from presales belong on SA100 under the right income section.
On SA108 enter total proceeds, allowable costs and the resultant gains. Use the Capital Gains summary to calculate tax due after your Annual Exempt Amount.
On SA100 include any presale income at market value in the correct income stream. If Income Tax applies include NICs where relevant.
For token receipts tied to employment, PAYE and NIC adjustments may be necessary.
Filing timeline and boxes
File by 31 October for paper returns or 31 January for online returns after the tax year. Payment deadlines are 31 January and 31 July when payments on account apply.
For the worked examples above, enter the CGT gain on SA108 and reference the sale proceeds and costs in supporting worksheets. If you reported income on receipt, record that on SA100 for the tax year when you received the tokens.
When you file online select 'Tailor your return' and tick 'Capital Gains' to add SA108 pages. Enter total proceeds, allowable costs and gains on the Capital Gains supplementary.
For income events record amounts on SA100 under Employment, Self‑employment or Other income as fits the facts. Keep supporting worksheets with timestamped GBP conversions and price sources to map CSVs into tax software and HMRC fields.
Keep records for at least six years to meet HMRC requests.
Records, CSV template & import
Keep at minimum: date/time (UTC), wallet address, tx hash, token identifier, units, counterparty or market, fees, acquisition and disposal GBP values, and price source URL. Retain screenshots of listings and exchange trades.
CSV template headers (example):
csv
timestamp,tx_hash,wallet,asset,token_id,action,amount,fee_asset,fee_amount,price_source_gbp,gbp_value,notes
2026-01-01T09:04:12Z,0xabc...01,0xYourWallet,ETH,,acquisition,0.5,ETH,0.01,https://coinbase.com/price/2026-01-01,800,presale purchase
2026-01-10T14:15:03Z,0xsale...09,0xYourWallet,TokenX,1234,disposal,1,GBP,240,https://opensea.io/asset/1234,2160,market sale
Map these headers to tax software like Koinly, CoinTracker or Accointing. Match actions to buy, sell, transfer and swap fields. Watch token symbol collisions and include contract addresses.
Retain records for at least six years to satisfy HMRC sample requests and regulatory checks.
Special cases and pitfalls
Discounted presales, airdrops for services, token swaps and marketplace royalties are frequent trouble spots. VAT can apply to creator services; consult VAT guidance if you collect royalties regularly.
Privacy coins and complex cross‑border flows increase compliance risk. While blockchain data is public, linking identities often needs exchange KYC. HMRC has used these routes in enquiries.
Royalties and VAT
Creators receiving royalties may generate trading income. VAT treatment depends on whether the supply is a VATable digital service.
When CGT does not apply
If HMRC treats your activity as trading or employment income, gains are taxed as earnings not CGT. High frequency, organised commercial activity or business‑style structures point to trading treatment.
This advice does NOT apply if you are not UK tax resident, if tokens were received as employment income/salary (these are income rules, not CGT), or if you operate a registered trading business where profits may be taxed as trading income rather than capital gains.
Questions people really ask
How are NFTs taxed in the UK?
NFTs can be income if part of a business or payment. They can be CGT for personal disposals. VAT may apply for creators. Treat each tokenId separately for CGT.
Are NFT sales taxable?
Yes. If you make a gain on sale it is normally subject to CGT. If the activity is trading, sales may be income tax instead.
Do I pay tax when I swap tokens?
Yes. A token↔token swap is a disposal. Value the disposed token in GBP at the swap time and use the received token's GBP value as its cost.
When is a presale discount taxable as income?
If the discount links to services, duties or a contract, HMRC will likely treat it as income at market value when received.
Do frequent flips make me a trader?
Frequency is a strong indicator but not definitive. Organised, profit‑seeking, business‑style activity usually points to trading income.
What to do now
Pause any further sales if you cannot immediately classify receipts. Export wallet and exchange CSVs and snapshot sale pages within 48 hours.
Classify each transaction as paid (CGT path) or received/discount (possible income). Convert acquisition and disposal amounts to GBP at the exact timestamps and compute provisional gains or income.
Populate the CSV template, map to SA100 and SA108 as needed, and file the Self Assessment before the deadline. If sums are large or you are unsure, instruct a crypto accountant experienced with HMRC guidance.
References and useful links
- HM Revenue & Customs, Cryptoassets Manual: https://www.gov.uk/hmrc-internal-manuals/cryptoassets-manual
- Taxation of Chargeable Gains Act 1992 (TCGA 1992)