Why FIFO Isn't Always Best
FIFO is the legal default. For tax purposes in India, FIFO is mandatory for cost basis reporting. But which specific lots you choose to sell affects your tax outcome in subtle ways.
In this Apple example:
If you sell using FIFO (3 oldest + 1 middle):
- Sell 3 LTCG shares at ₹100 cost, ₹140 current = -₹120 loss (₹40 × 3)
- Sell 1 LTCG share at ₹130 cost, ₹140 current = +₹10 gain (₹10 × 1)
- Total: ₹110 loss
If you sell using specific identification (choose the 4 newest shares):
- Sell 3 STCG shares at ₹160 cost, ₹140 current = -₹60 loss (₹20 × 3)
- Sell 1 LTCG share at ₹130 cost, ₹140 current = +₹10 gain (₹10 × 1)
- Total: ₹50 loss
Wait, FIFO gives a bigger loss (₹110 vs ₹50), so FIFO is better here.
But here's the twist: holding period matters for tax treatment.
Better way to think about it:
If you have both LTCG and STCG shares of the same stock, and you need to sell some for tax loss harvesting, you should prioritize selling:
- STCG shares that are deeply underwater — STCG losses are more flexible (can offset STCG or LTCG)
- LTCG shares that are only slightly negative — Better to preserve the biggest LTCG losses for when you have big LTCG gains
Specific identification lets you do this. FIFO does not.
For many investors, the difference is ₹500-₹1,500 per harvest cycle. But if you do this wrong repeatedly, or if you have large, concentrated positions, the error compounds to ₹3,000-₹5,000+ per year.
Why Your Spreadsheet Can't Help Here
Most DIY spreadsheets track:
- Symbol
- Quantity
- Cost basis
- Current price
- Unrealized gain/loss
But they don't track:
- Lot-level cost basis
- Individual lot holding period
- Lot-by-lot unrealized gain/loss
- Interaction between lots and your remaining tax position
So when you want to harvest a loss, your spreadsheet tells you: 'Sell Apple.' But it can't tell you 'Sell the 3 newest shares of Apple, not the oldest.'
You default to FIFO. And you miss the optimization.
An optimizer with lot-level data can tell you exactly which shares to sell to maximize your tax outcome.
Real Impact: How Much Money Are We Talking?
For a typical investor with 20-30 concentrated holdings (tech stocks, index fund positions bought over years), lot selection mistakes cost ₹2,000-₹8,000 per tax year.
For a sophisticated investor with 50+ holdings, the cost is ₹5,000-₹15,000+.
Over a 10-year investing horizon, this compounds to ₹50,000+ in lost tax-optimized returns.
More importantly, this is NOT a complicated strategy or tax avoidance. This is perfectly legal specific identification of which shares to sell. Your broker supports it. Your CA supports it. The only reason you don't do it is because manually tracking lot-level data is tedious.
How to Fix This
If you're doing manual tax harvesting:
- Track your holdings lot-by-lot. For each stock, record purchase date, quantity, and cost basis separately for each purchase.
- When selling, specify which lot. Tell your broker: 'Sell 100 shares of Apple bought on Jan 15, 2023' (not just 'sell 100 Apple shares').
- Optimize for your tax situation. Prioritize selling the lots that save you the most total taxes, not just the biggest losses.
If this sounds tedious, it is. This is why an optimizer is useful.
An optimizer with access to your holdings can:
- Automatically identify lot-level cost basis and holding periods
- Evaluate all possible lot combinations
- Recommend which specific shares to sell
- Account for interaction with your other holdings
Result: Optimal harvest decisions in minutes, not hours.
See Your Lot-Level Optimization
Upload your tradebook to TaxHarvestLab to see:
- Which specific stocks to harvest (not just 'stocks with losses')
- Which specific lots of each stock to sell (not just 'all of it')
- Exact tax savings from each recommendation
- How lots interact with your remaining portfolio
The tool handles lot-level tracking automatically. No manual spreadsheet tracking needed.
See your recommendations: taxharvestlab.com/optimize
See how this applies to your portfolio
Upload your Zerodha or Groww reports and get personalized recommendations in under 2 minutes.
Analyze My Portfolio FreeFrequently Asked Questions
What is lot selection in tax harvesting?
Lot selection is the practice of choosing which specific purchase lot of a stock to sell when you have multiple lots at different cost bases and holding periods. Instead of defaulting to FIFO, you specify exactly which shares to sell to optimize your tax outcome.
Why is FIFO not always optimal for tax harvesting?
FIFO (first-in, first-out) is the legal default but doesn't account for different tax treatments of short-term vs long-term holdings or how the loss interacts with your broader portfolio. Specific identification of lots can sometimes result in higher total tax savings.
Can my broker execute specific lot identification when I sell?
Yes. Tell your broker the exact purchase date and quantity you want to sell when placing your order. For example: 'Sell 50 shares of Apple purchased on January 15, 2023.' Most brokers support this. If yours doesn't, check their documentation or contact support.
How does lot selection interact with the ₹1.25 lakh LTCG exemption?
If you have multiple lots with different holding periods, lot selection lets you strategically choose which LTCG lots to sell to use your exemption efficiently. You can sell STCG losses to offset realized gains while preserving larger LTCG losses for future use.
Is specific lot identification considered tax avoidance or perfectly legal?
It is perfectly legal. Specific identification is standard practice and recognized by Indian tax law. Your broker supports it. Your CA will advise it. The only reason DIY investors miss it is the operational complexity of tracking lots manually.