India's 30% Crypto Tax: What Bitcoin Traders Must Know in 2026

India's 30% Crypto Tax: What Bitcoin Traders Must Know in 2026

When you buy Bitcoin in India, you’re not just buying a digital asset-you’re stepping into one of the most complex tax systems in the world. Since April 2022, every trade, every sale, every transfer of cryptocurrency has been hit with a 30% tax on profits. No exceptions. No deductions. Not even if you lost money elsewhere in your portfolio. This isn’t capital gains tax like in the U.S. or Europe. This is a flat, punitive rate that treats your $100 profit the same as your $100,000 profit-with the same 30% cut. And it’s gotten worse since July 2025, when GST slapped an extra 18% on exchange fees. If you’re trading Bitcoin or any crypto in India, you need to understand exactly how this system works-before you owe more than you made.

How the 30% Crypto Tax Actually Works

The tax isn’t complicated to calculate, but it’s brutal in practice. Here’s the formula: (Selling Price - Purchase Price) × 30% = Tax Owed. That’s it. No holding period matters. Whether you held Bitcoin for 2 days or 2 years, it’s still taxed at 30%. No matter if you’re a casual buyer or an active day trader. The Indian government doesn’t care. All you can deduct is what you originally paid. No fees. No gas costs. No wallet charges. Not even the $5 you paid to transfer coins from Binance to CoinSwitch.

Say you bought 0.1 BTC for ₹3,00,000 in January 2023. You sell it in March 2026 for ₹4,50,000. Your profit? ₹1,50,000. Your tax? ₹45,000. Simple. But here’s the catch: if you lost ₹1,20,000 on Ethereum the same year, you still pay ₹45,000 on the Bitcoin gain. You can’t use that loss to lower your tax. That’s the rule under Section 115BBH. Losses vanish. They don’t carry forward. They don’t offset. They just disappear.

The Hidden Tax: 1% TDS on Every Sale

On top of the 30%, there’s a 1% Tax Deducted at Source (TDS) that kicks in when your total crypto transfers exceed ₹50,000 in a financial year. For most traders, that’s easy to hit. If you buy ₹10,000 of Bitcoin and sell ₹12,000 of it, that’s ₹22,000 in transfers. Do that five times, and you’re over the limit. The exchange automatically takes 1% off the sale amount before it hits your wallet.

Let’s say you sell ₹2,00,000 worth of ETH. The exchange withholds ₹2,000 as TDS. That money goes straight to the government. You get ₹1,98,000. Later, when you file your return, you can claim that ₹2,000 as a credit against your 30% tax bill. But here’s the problem: if your profit is only ₹50,000, your 30% tax is ₹15,000. You already paid ₹2,000 as TDS. You still owe ₹13,000. And if your profit is less than ₹2,000? You paid TDS on money you didn’t even make. There’s no refund for that. You just lost ₹2,000 for nothing.

What About GST? Yes, It Applies Now Too

In July 2025, the government added another layer: 18% GST on all crypto platform services. That means if you pay ₹500 to trade on WazirX, ₹90 of that goes to GST. If you use a P2P platform and pay a ₹200 fee, ₹36 is GST. Even if you’re not making a profit, you pay this tax. It’s on the service, not the gain. So now, every time you trade, you’re paying three taxes:

  • 30% on your profit
  • 1% TDS on the sale amount
  • 18% GST on platform fees
This triple tax structure doesn’t exist anywhere else in the world. In the U.S., you pay capital gains tax, but no TDS, no GST on fees. In Germany, crypto is tax-free after a year. In Singapore, no capital gains tax at all. India’s system is designed to discourage trading, not support it.

A trader's crypto loss and profit balanced on scales, with a 'NO OFFSET' stamp crushing the loss side.

Why Loss Offsetting Is a Killer for Traders

This is where most traders get burned. Imagine this scenario:

  • You buy 1 BTC for ₹35,00,000
  • You buy 5 ETH for ₹20,00,000
  • You sell 1 BTC for ₹30,00,000 → Loss of ₹5,00,000
  • You sell 5 ETH for ₹25,00,000 → Profit of ₹5,00,000
Your net portfolio gain? ₹0. But your tax bill? ₹1,50,000. Because you can’t offset the BTC loss against the ETH gain. The government sees two separate transactions. One loss. One profit. Only the profit gets taxed. You owe ₹1,50,000 on the ETH sale, even though you lost money overall.

This rule makes active trading nearly impossible. Most traders don’t win every trade. Even the best have losing months. But in India, every loss is a dead weight. You can’t use it to reduce your tax. You can’t carry it forward. You can’t even use it to lower your taxable income. The system punishes volatility, not rewards it.

Record Keeping: The Burden You Can’t Ignore

The Income Tax Department now requires every crypto transaction to be tracked and reported in Schedule VDA on your ITR. That means:

  • Date of purchase
  • Amount paid (in INR)
  • Exchange used
  • Wallet address
  • Date of sale
  • Amount received (in INR)
  • Profit or loss per transaction
If you traded on 5 different exchanges, used 3 wallets, and bought crypto over 3 years? You’re looking at 50+ entries. Most people don’t track this. They assume their exchange will give them a report. But exchanges don’t always report accurately-especially for P2P trades or transfers from international platforms. If you used Binance, Kraken, or Coinbase before 2022, your cost basis might be missing. The government doesn’t care. You’re responsible for proving what you paid.

Professional tax software like Koinly and ClearTax now have India-specific modules. But even those can’t fix bad data. If you didn’t save your transaction history from 2021, you’re stuck guessing. And guessing can get you audited.

A cluttered desk with crypto records and tax software as a tiny accountant helps a trader file an ITR form.

Who’s Getting Hurt the Most?

The tax system didn’t just affect traders-it changed the entire market. Trading volumes dropped 40-60% after the 2022 tax rollout. Retail investors fled to international platforms. Many now use Binance or Bybit, but that creates bigger compliance risks. If you trade on an offshore exchange, you’re still required to report gains to India. The government can track your transactions through bank links and KYC data.

Active traders are leaving. Long-term holders are staying. Why? Because if you hold Bitcoin for 5 years and sell it once, you pay 30% once. But if you trade weekly? You pay 30% every time-and 1% TDS every sale-and 18% GST on every fee. The math doesn’t work. The system is designed to turn crypto into a savings account, not a trading asset.

What’s Next? No Changes Coming Soon

As of September 2025, the government has made no moves to change the 30% rate, the TDS rule, or the loss offsetting ban. There’s no indication GST on crypto services will be removed. Experts say the system is here to stay-at least until 2027. Some analysts think the government will tweak the TDS threshold from ₹50,000 to ₹1,00,000. Others think they might allow loss offsetting between the same asset (e.g., Bitcoin loss offsets Bitcoin gain). But nothing’s official.

The Reserve Bank of India and SEBI are working on a broader digital asset framework, but it’s focused on regulation, not tax relief. If you’re trading crypto in India, you’re trading under a system built to discourage you. There’s no incentive to grow. Only consequences for profiting.

What Should You Do?

If you’re still trading:

  • Use tax software that supports India’s crypto rules (Koinly, ClearTax)
  • Save every transaction receipt, even for small P2P trades
  • Don’t assume your exchange’s report is accurate-cross-check with your wallet history
  • Don’t try to hide trades. The government can see your bank deposits linked to crypto purchases
  • If you’re a high-volume trader, hire a CA who understands crypto tax. It’s worth the cost
If you’re holding long-term, you’re in the least punished group. But even then, when you sell, you’ll pay 30%. There’s no tax-free window. No 1-year exemption like Germany. No 0% rate for low earners like the U.S.

This isn’t a tax policy. It’s a deterrent. And if you’re trading Bitcoin in India, you’re playing by rules no other country enforces.

Comments (11)

Write a comment ( All fields are required )