What is FIFO?
FIFO (First In, First Out) is an asset disposal valuation method meaning that when selling, shares purchased first are settled first. It is the only method allowed for tax purposes in Poland.
The FIFO method is required by Polish tax law for settling stock market transactions. You cannot choose another method (e.g., LIFO or weighted average).
Note: If you hold shares of the same company purchased in different years, make sure you have imported the full transaction history. Missing earlier purchases will cause calculation errors.
How does FIFO work?
Imagine you buy XYZ company shares in three tranches:
- January: 10 shares at 100 PLN = 1,000 PLN
- March: 10 shares at 120 PLN = 1,200 PLN
- May: 10 shares at 80 PLN = 800 PLN
Then in June you sell 15 shares at 150 PLN. According to the FIFO method, the shares purchased earliest are "used up" first:
- 10 shares from January (cost: 1,000 PLN)
- 5 shares from March (cost: 600 PLN)
- Total cost: 1,600 PLN
- Revenue: 15 × 150 = 2,250 PLN
- Income: 2,250 - 1,600 = 650 PLN
- Tax: 650 × 19% = 123.50 PLN
The remaining 5 shares from March (at 120 PLN) and all 10 shares from May (at 80 PLN) are still in your portfolio. Their acquisition cost will be the basis for calculating tax on future sales.
FIFO calculation examples
Example 1: Simple sale
You bought 20 shares at 50 PLN, then sold all 20 at 70 PLN.
- Acquisition cost: 20 × 50 = 1,000 PLN
- Revenue: 20 × 70 = 1,400 PLN
- Income: 1,400 - 1,000 = 400 PLN
- Tax: 400 × 19% = 76 PLN
Example 2: Multiple purchases
You bought: 10 shares at 100 PLN, 10 shares at 120 PLN, 10 shares at 80 PLN. You sold 25 shares at 150 PLN.
- FIFO: 10 shares (100 PLN) + 10 shares (120 PLN) + 5 shares (80 PLN)
- Cost: 1,000 + 1,200 + 400 = 2,600 PLN
- Revenue: 25 × 150 = 3,750 PLN
- Income: 3,750 - 2,600 = 1,150 PLN
- Tax: 1,150 × 19% = 218.50 PLN
Example 3: Loss
You bought 10 shares at 100 PLN, sold all 10 at 80 PLN.
- Acquisition cost: 1,000 PLN
- Revenue: 800 PLN
- Loss: 800 - 1,000 = -200 PLN
- Tax: 0 PLN (no income)
- The loss can be deducted from income in subsequent years
Partial sale of shares
If you sell only a portion of your shares, FIFO matches the sale to the oldest purchases. The remaining shares stay in your portfolio with their original acquisition cost.
Example:
You have 30 shares (10 at 100 PLN, 10 at 120 PLN, 10 at 80 PLN). You sell 15 shares at 150 PLN.
FIFO matches: 10 shares (100 PLN) + 5 shares (120 PLN) = cost 1,600 PLN.
Remaining shares: 5 shares (120 PLN) + 10 shares (80 PLN) = 1,400 PLN in portfolio.
FIFO for cryptocurrencies
The FIFO method is also mandatory for cryptocurrencies. When selling cryptocurrency, the system automatically matches the sale to the oldest purchases.
Example:
You bought Bitcoin in three tranches:
- January: 0.1 BTC for 150,000 PLN
- March: 0.1 BTC for 180,000 PLN
- May: 0.1 BTC for 120,000 PLN
You sold 0.15 BTC for 200,000 PLN. FIFO:
- 0.1 BTC from January (cost: 150,000 PLN)
- 0.05 BTC from March (cost: 90,000 PLN)
- Cost: 240,000 PLN
- Revenue: 200,000 PLN
- Loss: -40,000 PLN (can be deducted)
FIFO works separately for each cryptocurrency. Bitcoin and Ethereum have separate FIFO queues. You must track the full transaction history from all exchanges.
FIFO matching preview
Our calculator shows detailed matching of buy and sell transactions using the FIFO method. For each sale you will see:
- Which purchases were matched to the sale
- Acquisition cost of matched shares
- Realized profit or loss
- Remaining shares in portfolio
The FIFO matching preview helps you understand how the system calculates tax. You can verify each match and make sure everything is correct.
LIFO vs FIFO — Why Does Poland Require FIFO?
LIFO (Last In, First Out) is an alternative valuation method where the most recently purchased shares are sold first. Many countries allow LIFO — but Poland does not.
Article 30b of the PIT Act mandates FIFO as the only allowed method. You cannot choose LIFO, weighted average, or any other method. Our calculator automatically applies FIFO to all transactions.
| Method | Rule | Allowed in Poland? |
|---|---|---|
| FIFO | First bought = first sold | YES (mandatory) |
| LIFO | Last bought = first sold | NO |
| Weighted average | Average cost of all purchased | NO |
Same portfolio — different tax
You bought: 50 shares at 100 PLN (January), 50 shares at 200 PLN (March). You sell 50 shares at 250 PLN. FIFO: you sell the January shares → profit 50 × (250 − 100) = 7,500 PLN → tax 1,425 PLN. LIFO (if allowed): you'd sell March shares → profit 50 × (250 − 200) = 2,500 PLN → tax 475 PLN. Difference: 950 PLN. But Poland requires FIFO — you pay 1,425 PLN.
FAQ
Can I use a method other than FIFO?
No, FIFO is the only method allowed for tax purposes in Poland. You cannot use LIFO, weighted average, or other methods.
Does FIFO work for all instruments?
Yes, FIFO is mandatory for shares, ETFs, cryptocurrencies, and other capital instruments. Each instrument type has a separate FIFO queue.
What if I don't have the full transaction history?
Missing full history may lead to incorrect calculations. Make sure you export history from the first purchase of shares you still hold or sold in the reporting year.
Can I use LIFO instead of FIFO?
No. Article 30b of the PIT Act mandates FIFO only. There is no option to choose LIFO or weighted average for tax purposes in Poland.
Related articles
Metoda FIFO wyjaśniona
FIFO (First In, First Out) to metoda wyceny rozchodu aktywów, która oznacza, że przy sprzedaży najpierw rozliczane są akcje zakupione jako pierwsze. Jest to jedyna metoda dozwolona dla celów podatkowych w Polsce.
FIFO matching preview
The FIFO matching view shows which buys were assigned to each sale. It helps you verify the calculation and understand where profit or loss comes from.
Częściowa sprzedaż akcji
Przy częściowej sprzedaży pozycji (np. 50 z 200 akcji) metoda FIFO nadal stosuje „pierwsze weszło, pierwsze wyszło”. Rozliczane są kolejno najstarsze zakupy, aż do pokrycia sprzedanej ilości.
LIFO vs FIFO — która metoda jest dozwolona w Polsce?
W Polsce jedyną dozwoloną metodą wyceny rozchodu papierów wartościowych i kryptowalut jest FIFO. LIFO (Last In, First Out) NIE jest dopuszczalne do celów podatkowych.
Use the calculator with automatic FIFO
Our calculator automatically applies the FIFO method to all transactions. Just import files from your brokers - the system will automatically match purchases to sales and calculate tax.