Podatek GiełdyKalkulator PIT
Features
Pricing
Supported Brokers
Knowledge Base
FAQ
Home/Stock-Market Loss

Stock-Market Loss — How to Report It in PIT-38

Deducting a loss from previous years step by step

Even if you only have losses in a given year, you must file PIT-38 (art. 45 ust. 1a pkt 1 of the PIT Act). That is where you report the loss you will deduct in the following years. Good news: since 2019 you can deduct a loss of up to 5 million PLN at once in a single year — you do not have to spread it over 5 years. In this guide we explain the rules for deducting stock-market losses and show 3 scenarios with numbers, a table of PIT-38 fields, the differences between losses on shares and on crypto, and the tax-loss harvesting strategy.

Author: Podatek Giełdy Team

Capital gains tax specialists

Stock-market loss and PIT-38 — why you MUST file a return

YES — always. You must file PIT-38 even when your result for the year is negative; the deadline is 30 April of the following year. The return in which you reported the loss is the basis for deducting it in the following years — without it the tax office may challenge the deduction. Failing to file also risks a penalty. If the deadline has passed, file the overdue return as soon as possible.

Many investors make the same costly mistake: in a year in which they had only losses, they do not file PIT-38. The logic seems simple — 'I didn't earn anything, so I don't have to file anything'. That is not true: a return stating the amount of income or the loss incurred must always be filed when you sold securities or derivatives (art. 45 ust. 1a pkt 1 of the PIT Act). The return for the loss year is also the document on the basis of which you will deduct the loss in the following years. Without it the tax office may challenge the deduction. Consequences of not filing PIT-38: • The risk that the loss will not be recognised when you deduct it in the following years • A penalty for not filing the return on time — a fiscal petty offence (art. 56 § 4 KKS); you will find the current fine amounts in the article on penalties for not filing PIT-38 • Czynny żal (voluntary disclosure) (art. 16 KKS) filed together with the overdue return protects you from a penalty if the tax office has not yet started proceedings Filing deadline: by 30 April of the year following the tax year. Twój e-PIT prepares PIT-38 only with data from PIT-8C forms from Polish brokers — you have to add transactions with foreign brokers yourself. Important: the obligation applies to EVERY year in which you sold securities or closed a position in derivatives — at a profit or at a loss. Merely buying shares without selling does not create an obligation. Crypto is different: you also file PIT-38 when you only bought crypto in a given year — the expenses reported in the return carry over to the following years as costs.

How loss deduction works (Art. 9 ust. 3)

The PIT Act (art. 9 ust. 3) allows you to reduce income by a loss from the same source over the next 5 tax years. For investors this means that a loss on shares, ETFs and derivatives can reduce future gains on these instruments. The deduction applies only to the same source of revenue — a stock-market loss will not reduce, for example, income from employment. Since 2019 you have two options:

At once up to 5 million PLN

At once up to 5,000,000 PLN — in one of the next 5 years you deduct the loss up to this amount (art. 9 ust. 3 pkt 2). So you can deduct a loss of up to 5 million PLN in full in a single year.

At most 50% per year

At most 50% per year — in each of the next 5 years you deduct no more than half of the loss (art. 9 ust. 3 pkt 1). The same 50% limit applies to the part of the loss remaining after the one-off deduction.

The right to deduct expires 5 years after the year in which the loss arose. For example: you can deduct a loss from 2021 in the returns for 2022–2026. Any part not deducted in the return for 2026 is lost for good. That is why it is worth deducting losses as soon as possible — ideally in the first year in which you make a profit.

3 loss deduction scenarios — with real numbers

Below we present three realistic scenarios of deducting stock-market losses, with specific amounts and PIT-38 fields. Each scenario shows a different situation — from the simplest (one loss, one gain) to more complex ones (many years, many brokers). These examples are based on Art. 9 ust. 3 of the PIT Act and take into account the 5 million PLN threshold for a one-off deduction.

Scenario A: Full deduction in one year

Year 2024: The investor sold CD Projekt shares at a loss of 10,000 PLN. They filed PIT-38 for 2024, reporting the loss in field C.29 (loss). Year 2025: Through a foreign broker (without PIT-8C) they sold, for 45,000 PLN, Allegro shares bought for 30,000 PLN — a gain of 15,000 PLN. PIT-38 for 2025: • C.22 (revenue, „Inne przychody” (Other revenue) row): 45,000 PLN • C.23 (costs): 30,000 PLN • C.28 (income, calculated automatically): 15,000 PLN • D.30 (losses from previous years): 10,000 PLN — full deduction, because the loss does not exceed 5 million PLN • D.31 (tax base): 15,000 − 10,000 = 5,000 PLN • D.33 (19% tax): 950 PLN Without the deduction they would pay: 15,000 × 19% = 2,850 PLN Saving: 1,900 PLN

Scenario B: Combining losses from several years

Year 2023: Loss of 8,000 PLN (Biomed-Lublin shares). PIT-38 filed. Year 2024: Loss of 5,000 PLN (iShares MSCI World ETF). PIT-38 filed. Year 2025: Gain of 20,000 PLN on shares of various companies. PIT-38 for 2025: • C.28 (current-year income): 20,000 PLN • D.30 (losses from previous years): 8,000 + 5,000 = 13,000 PLN • D.31 (tax base): 20,000 − 13,000 = 7,000 PLN • D.33 (19% tax): 1,330 PLN Without the deduction: 20,000 × 19% = 3,800 PLN Saving: 2,470 PLN Both losses are within the 5 million PLN limit, so each can be deducted in full at once. The 5 million PLN limit applies to each annual loss separately, and the total deduction in D.30 cannot exceed the income in C.28.

Scenario C: Loss at XTB + gain at Revolut

Year 2025: The investor traded on two platforms at the same time. XTB: Loss of 6,000 PLN on share CFDs. Revolut: Gain of 9,000 PLN on US shares (Apple, Microsoft). In one PIT-38 you COMBINE the results from both brokers: • C.20 / C.21 (revenue from PIT-8C): revenue and costs from the PIT-8C from XTB • C.22 / C.23 (other revenue): revenue and costs from Revolut • Combined income (C.28): 9,000 − 6,000 = 3,000 PLN • D.33 (19% tax): 570 PLN Key rules: • The broker does not matter — what counts is the COMBINED result • A loss with a Polish broker (XTB) is combined with a gain with a foreign broker (Revolut) • CFDs, shares, ETFs, options — everything goes into part C/D (instruments under art. 30b) • The only exception: crypto (part E/F) — NOT combined

Table of PIT-38 fields when reporting a loss

The PIT-38 form contains dozens of fields, but when reporting stock-market losses only 7 of them are key. The table below shows the most important fields you fill in when reporting a loss in the current year and when deducting losses from previous years. The field numbers correspond to the PIT-38 form in force for the 2025 tax return:

FieldNameDescription
C.22Revenue („Inne przychody” (Other revenue) row)Revenue from the sale of shares, ETFs, derivatives with brokers that do not issue PIT-8C (e.g. foreign ones)
C.23Tax-deductible costs („Inne przychody” (Other revenue) row)Purchase costs of the securities sold + brokerage commissions
C.28IncomeC.26 − C.27 (if the result is positive). Calculated automatically
C.29LossC.27 − C.26 (if costs > revenue). You enter it as a POSITIVE number. Calculated automatically
D.30Losses from previous yearsLoss from the previous 5 years that you deduct from this year's income — no more than C.28
D.31Tax baseC.28 − D.30, rounded to full złoty. Calculated automatically
D.33Tax (19%)D.31 × 19%. After subtracting the tax paid abroad (D.34) it gives the tax due D.35, rounded to full złoty

In part C you enter revenue and costs. Transactions with a foreign broker (IBKR, Revolut, DEGIRO, etc.) go in the „Inne przychody” (Other revenue) row (C.22 revenue, C.23 costs). Amounts from the PIT-8C from a Polish broker go into the first row (C.20, C.21) — in e-PIT the tax office fills it in itself. The total fields (C.26 revenue, C.27 costs), income (C.28) and loss (C.29) are calculated automatically. You enter the loss from previous years in field D.30 — no more than the income in C.28. The tax base (D.31) is income minus the deducted loss, rounded to full złoty. The 19% tax on D.31 goes into field D.33. If you paid tax abroad on income under art. 30b ust. 5a/5b, you enter it in D.34, and the tax due (D.35) is D.33 − D.34 rounded to full złoty. If you import transactions from several years into our calculator, the system will calculate and fill in these fields itself — you do not have to carry amounts between years by hand.

Loss with one broker, gain with another

YES — gains and losses from different brokers are combined in a single PIT-38. It does not matter whether you trade with a Polish broker (XTB, mBank eMakler) or a foreign one (IBKR, Revolut, Trading 212, DEGIRO) — in the tax return you add up revenue and costs from ALL sources. A loss at XTB and a gain at Revolut? They add up. A loss at DEGIRO and a gain at Interactive Brokers? Same. The only condition: they must be instruments from the same tax source, i.e. Art. 30b of the PIT Act (shares, ETFs, CFDs, options, futures). The exception is crypto (section E/F) — its losses are NOT combined with losses on shares (section C/D). These are two completely separate tax regimes, described in more detail below.

Crypto — a SEPARATE tax regime for losses!

This is one of the most common mistakes in PIT-38 filings: investors assume that a crypto loss can be deducted from a gain on shares. IT CANNOT. Polish law treats crypto SEPARATELY from other capital income (kapitały pieniężne) — with a different mechanism for handling excess costs. Shares, ETFs, derivatives (part C/D of PIT-38): • Loss = excess of costs over revenue in a given year • Deduction under art. 9 ust. 3 — from income over the next 5 years • Basis: the loss reported in PIT-38 for the year in which it arose • At once up to 5 million PLN or at most 50% of the loss per year Crypto (part E/F of PIT-38): • The 'undeducted costs' mechanism (art. 22 ust. 14–16 of the PIT Act) • If costs > revenue — the excess costs increase costs in the following year • This is NOT a 'loss' within the meaning of art. 9 ust. 3! • No time limit (undeducted costs do not expire after 5 years) • No 50% or 5 million PLN limit — the full amount of undeducted costs carries over Numerical example: Year 2024: You bought Bitcoin for 40,000 PLN and sold it for 30,000 PLN. Undeducted costs: 10,000 PLN (not a 'loss' — costs!). Year 2025: You bought Ethereum for 15,000 PLN and sold it for 25,000 PLN. You add the carried-over 10,000 PLN to your costs. Part E: revenue 25,000 − costs (15,000 + 10,000) = 0 PLN of income. In parallel — if you had a gain of 20,000 PLN on shares (part C/D), you pay the full 19% on it = 3,800 PLN. Undeducted costs from crypto do NOT reduce the gain on shares.

What if you did not file PIT-38 in a loss year?

All is not lost — but act quickly. You can file an overdue return for the year in which the loss arose. How to do it: 1. Log in to e-Urząd Skarbowy at podatki.gov.pl 2. Select PIT-38 for the relevant tax year 3. Fill in the form, reporting the loss (costs > revenue) 4. File the return — it will be accepted as filed late Important caveats: • Failing to file the return on time carries a penalty (art. 56 § 4 KKS) • At the same time, file czynny żal (voluntary disclosure) (art. 16 KKS) — a notification that you are voluntarily disclosing that you did not file the return. Czynny żal works ONLY if the tax office has not yet started proceedings • You can deduct the loss only in the returns for the next 5 years. A loss from 2020 could be deducted at the latest in the return for 2025, filed by 30 April 2026 — after that it is lost • The sooner you file the overdue return, the easier it is to document the loss Our calculator supports importing transactions from many years — including when you are only now reconstructing your history. Import data from several years, and the system will calculate the losses and gains for each year.

Tax-loss harvesting strategy — legal tax optimisation

Tax-loss harvesting (TLH) is a strategy of deliberately realising losses towards the end of the tax year to reduce the tax on gains. In Poland it is ESPECIALLY attractive because, unlike in the USA, there is no 'wash sale' rule. How it works: 1. Towards the end of the year you identify positions that have lost value 2. You sell them — realising a tax loss. Leave yourself a margin: in practice the year is determined by the settlement date of the transaction (on the WSE (GPW) and most European exchanges T+2, in the USA T+1), so a sale in the last trading days of December may fall into the next year 3. At the beginning of the new year you buy back the same shares if you still want them in your portfolio Why it is legal and effective: • In the USA the 'wash sale' rule applies — buying back the same security within 30 days cancels the tax loss. In Poland there is NO such rule • You can sell and buy back even the next day — the tax loss is recognised • Watch out for FIFO: if you have several lots of the same company, a sale matches the oldest ones first — not necessarily the ones at a loss • The only cost: the brokerage commission for two transactions + the spread (bid/ask difference) Example: You have 100 XYZ shares bought at 50 PLN (cost: 5,000 PLN). The price has fallen to 35 PLN. • 15 December 2025: you sell for 3,500 PLN → loss of 1,500 PLN • 2 January 2026: you buy back for 3,500 PLN • Effect: in PIT-38 for 2025 the 1,500 PLN loss reduces this year's gain, and if there is no gain — you will deduct it from future gains • New acquisition cost: 3,500 PLN (lower than before) Note: TLH only makes sense for loss-making positions. Selling profitable positions 'to deduct' is absurd — you generate additional tax rather than reducing it.

The calculator takes losses into account automatically

Tracking losses manually across many years and brokers is time-consuming and error-prone. You have to remember the loss amounts for each year, keep track of the 5-year limit and correctly fill in fields D.30 (losses from previous years) and D.31 (tax base). Our calculator does this automatically — import transactions from many years and brokers, and the system will detect losses from previous years and deduct them from your gains. You do not have to dig out old PIT-38 returns or keep a separate spreadsheet.

Our calculator automatically handles multi-year losses. Just import transactions from several tax years (e.g. 2021–2025) — the system will itself detect loss years, calculate the loss amounts and deduct them from gains in the following years (in accordance with art. 9 ust. 3). We support imports from more than 20 brokers, both Polish (XTB, mBank eMakler) and foreign (Interactive Brokers, Revolut, Trading 212, DEGIRO, eToro, Saxo Bank, Freedom24). The calculator combines data from many sources, converts currencies at NBP rates (from the last business day before the settlement date of the transaction, art. 11a ust. 1), applies the mandatory FIFO method to match purchase costs and generates a ready PIT-38 with correctly filled fields D.30 (losses from previous years) and D.31 (base after the deduction). If you have income from sales earned abroad, the system will also prepare the PIT/ZG attachments for each country.

Import transactions and deduct losses →

Import from many years and brokers. The calculator will deduct losses automatically.

Frequently asked questions

For how many years can you deduct a loss?

▼

5 consecutive years after the year in which the loss arose (art. 9 ust. 3 of the PIT Act). You can deduct a loss of up to 5 million PLN at once in one of those years — you do not have to split it into instalments. Example: you can deduct a loss from 2024 in the returns for 2025–2029. Deduct as early as possible — any part not deducted within 5 years is lost.

Is a crypto loss combined with shares?

▼

NO. Crypto has a separate section in PIT-38 (E/F) and uses the mechanism of undeducted costs (Art. 22 ust. 14-16), not a loss from previous years (Art. 9 ust. 3). These are two completely different tax paths. You cannot deduct a loss on Bitcoin from a gain on selling Apple shares — even if both transactions were with the same broker. You will find more details in the crypto section below.

What if I did not file PIT-38 in a loss year?

▼

File the overdue PIT-38 return for that year (or an amended return, if you filed a return without these transactions) and report the loss in it. At the same time, file czynny żal (voluntary disclosure) (art. 16 KKS) — it protects you from a penalty if the tax office has not yet started proceedings. You need evidence of the transactions (statements, the annual report from the broker) for that year. The simplest way to keep the right to deduct is to ALWAYS file PIT-38 on time, even when you only have losses.

How does the calculator take losses into account?

▼

You import transactions from several tax years (e.g. 2022–2025). The system automatically detects loss years, calculates the loss amount for each year and deducts those losses from gains in the following years — in accordance with art. 9 ust. 3. The calculator tracks the 5-year limit and fills in fields D.30 (losses from previous years) and D.31 (tax base after the deduction) in the generated PIT-38.

Can I deduct a loss from one broker from a gain at another?

▼

YES. All gains and losses from instruments taxed under Art. 30b (shares, ETFs, derivatives, CFDs, options) add up, regardless of the broker. Loss at XTB + gain at Revolut = combined result in one PIT-38. It does not matter whether the broker is Polish or foreign — what counts is the combined tax result. The calculator automatically adds up transactions from all imported brokers.

Is a CFD loss combined with a loss on shares?

▼

YES. CFDs (contracts for difference), shares, ETFs, options and other derivatives — all are taxed under Art. 30b of the PIT Act and settled in section C/D of the PIT-38 form. Gains and losses from all these instruments add up. A CFD loss at XTB will reduce a gain on shares at Revolut.

What about a loss on options (put/call)?

▼

Exchange-traded options (put and call) are derivatives taxed under Art. 30b — just like shares or CFDs. A loss on an expired option (e.g. you paid a premium for a call option but did not exercise it because the price did not reach the strike price) is a tax-deductible cost in section C/D. It is combined with all other gains and losses from capital income (kapitały pieniężne).

Is there such a thing as a loss on dividends?

▼

Not in the classical sense. A dividend is revenue (art. 30a) — no costs or stock-market losses are deducted from it. If the foreign tax was higher than the treaty rate (e.g. 30% WHT in the USA instead of 15%), you cannot deduct the excess in Poland — in field G.48 you include the tax at most up to the rate in the double tax treaty (art. 30a ust. 9). You can recover the excess only from the foreign tax office.

PIT-38 Calculator →Capital gains tax →FIFO Guide →Article: reporting losses →
Podatek GiełdyKalkulator PIT

Automatic capital gains tax calculation for Polish investors. Stocks, ETFs, crypto, and dividends.

Product

  • Home
  • Sign in
  • Pricing

Calculators

  • Calculators
  • PIT-38 calculator
  • Stock tax calculator
  • Crypto calculator

Brokers

  • All brokers
  • XTB
  • Interactive Brokers
  • DEGIRO

Help

  • Knowledge base
  • Broker exports
  • Forms
  • PIT-38 guide

Legal

  • Terms
  • Privacy Policy
  • Legal disclaimer
  • Cookie policy
Secure SSL connectionGDPR compliant

© 2026 Podatek Giełdy. All rights reserved.

Auxiliary tool for tax calculations. Not legal or tax advice. Consult a tax advisor.