Quick Answer: On a taxable base of 100,000 zl under the 2026 skala podatkowa, PIT due is 8,400 zl. The scale itself takes 12,000 zl (12% of 100,000 zl, all of it inside the first bracket, with nothing in the 32% bracket), and the kwota zmniejszajaca podatek of 3,600 zl is then subtracted, leaving 8,400 zl. That is an effective rate of 8.4% against a marginal rate of 12%, and it leaves 91,600 zl after PIT. There is 20,000 zl of headroom before the 32% bracket starts. The same base under the flat 19% podatek liniowy would cost 19,000 zl, which is 10,600 zl more.
Overview
Poland's personal income tax scale has only two brackets, and since the 2022 Polski Lad reform and its 2023 correction they have been stable: 12% on taxable base up to 120,000 zl, and 32% on everything above. What confuses people is not the brackets. It is the tax-free amount.
The kwota wolna od podatku is 30,000 zl a year, but it is not delivered as a slice of income exempted before the rate applies. It is delivered as a fixed cash reduction of the computed tax: 3,600 zl, which is 12% of 30,000 zl. That design has a consequence most explanations skip. Because the reduction is a flat złoty amount rather than an exempt band taxed at your top rate, it is worth exactly 3,600 zl to a 40,000 zl earner and exactly 3,600 zl to a 400,000 zl earner. Unusually for a progressive system, the allowance does not scale with income at all.
This page is the scale itself, not a payroll calculator. It starts from a taxable base, the podstawa opodatkowania, which is annual income after deductible ZUS social contributions and koszty uzyskania przychodu, and returns the PIT that scale produces. For an employee, the taxable base is typically 10% to 15% below gross salary. Arriving at a net wage from a gross salary, with ZUS and the NFZ health contribution, is a different calculation.
How This Is Calculated
The engine holds four constants: a bracket threshold of 120,000 zl, a first-bracket rate of 12%, a second-bracket rate of 32%, and an annual tax-reducing amount of 3,600 zl.
The 10,800 zl constant in the upper branch is not a separate rule: it is 12% x 120,000 minus 3,600, so the reducing amount is already netted out of the published bracket-2 formula. The max(0, ...) in the lower branch matters, and it is why the reducing amount can never by itself produce a refund. Below a base of 30,000 zl the scale tax is smaller than 3,600 zl, and the result is floored at zero rather than going negative.
With the default base of 100,000 zl:
Step 1 -- Take the taxable base. Base = 100,000 zl
Step 2 -- Find how much of the base falls in the 12% bracket. min(100,000, 120,000) = 100,000 zl
Step 3 -- Apply 12% to that portion. 100,000 x 0.12 = 12,000 zl
Step 4 -- Find how much of the base falls in the 32% bracket. max(0, 100,000 - 120,000) = 0 zl
Step 5 -- Apply 32% to that portion. 0 x 0.32 = 0 zl
Step 6 -- Add the two to get the gross scale tax, before the allowance. 12,000 + 0 = 12,000 zl
Step 7 -- Subtract the kwota zmniejszajaca podatek, floored at zero. max(0, 12,000 - 3,600) = 8,400 zl
Step 8 -- Measure what the allowance was worth in cash. 12,000 - 8,400 = 3,600 zl
Step 9 -- Take PIT out of the base. 100,000 - 8,400 = 91,600 zl after PIT
Step 10 -- Divide the tax by the base for the effective rate. 8,400 / 100,000 = 8.40%
Step 11 -- Read the marginal rate off the bracket. The base is at or below 120,000 zl, so the next złoty is taxed at 12%
Step 12 -- Measure headroom to the 32% bracket. max(0, 120,000 - 100,000) = 20,000 zl
The page also runs a flat comparison against the podatek liniowy, the 19% flat regime open to business and self-employed taxpayers:
Step 13 -- Apply the flat 19% rate to the same base. 100,000 x 0.19 = 19,000 zl
Step 14 -- Compare it to the scale result. 19,000 - 8,400 = 10,600 zl more expensive under the flat rate
Worked Example
A senior specialist with a taxable base of 200,000 zl.
Step 1 -- Base in the 12% bracket. min(200,000, 120,000) = 120,000 zl
Step 2 -- Tax from the 12% bracket. 120,000 x 0.12 = 14,400 zl
Step 3 -- Base in the 32% bracket. 200,000 - 120,000 = 80,000 zl
Step 4 -- Tax from the 32% bracket. 80,000 x 0.32 = 25,600 zl
Step 5 -- Gross scale tax before the allowance. 14,400 + 25,600 = 40,000 zl
Step 6 -- Subtract the reducing amount. 40,000 - 3,600 = 36,400 zl of PIT
Step 7 -- Effective rate. 36,400 / 200,000 = 18.20%
Step 8 -- The flat 19% alternative on the same base. 200,000 x 0.19 = 38,000 zl
Step 9 -- Difference. 38,000 - 36,400 = 1,600 zl, so the scale is still cheaper here
Note what has happened between 100,000 zl and 200,000 zl. The allowance is still worth exactly 3,600 zl, unchanged, while the gross scale tax has more than tripled. The flat 19% has closed most of the gap but has not yet overtaken the scale, because the scale's cheap first 120,000 zl plus the 3,600 zl reduction still outweigh 32% on the excess. The crossover sits somewhere above this base.
What This Does Not Account For
- It does not compute the taxable base from a gross salary. ZUS social contributions and koszty uzyskania przychodu must already have been deducted before the number you enter. Enter a gross salary and the result will be too high.
- The NFZ health contribution is not included anywhere. It is a separate levy from PIT, not deductible against it in the way it once was, and it can be a larger cash cost than the PIT itself for some taxpayers.
- The podatek liniowy comparison is a bare 19% of the same base. In reality the flat regime carries a different health-contribution rate and a deduction of health contributions capped at 14,100 zl a year for 2026, which changes its own taxable base. The 19,000 zl figure is a like-for-like comparison of the two tax rates on one identical base, not a full comparison of the two regimes. Do not choose a regime on this line alone.
- No reliefs, credits or joint filing are applied. Joint assessment with a spouse, the single-parent calculation, the child relief (ulga na dzieci), the under-26 exemption, the return relief, the four-plus-children relief, IKZE contributions, donations and rehabilitation expenses all change the outcome and none of them are modelled here.
- The 4% danina solidarnościowa is not applied. The solidarity levy on income above 1,000,000 zl is a separate charge outside this scale.
- The kwota zmniejszajaca is applied annually and in full. In payroll it is delivered monthly at 300 zl through a PIT-2 declaration, and only where that declaration has been filed. If you have not filed one, your monthly withholding will be higher and the difference comes back in the annual settlement.
- Rounding to whole złoty is not enforced. The statutory base and the tax are rounded to whole złoty in a real return; the engine works to two decimal places on whatever you enter.
- The ryczałt and the karta podatkowa regimes are out of scope, as are capital gains taxed at the flat 19% under a separate schedule.
- The 2026 constants are corroborated, not all primary-fetched. The 120,000 / 12% / 32% / 30,000 figures come from podatki.gov.pl and the consolidated PIT Act text, and are cross-checked against pit.pl, pitax.pl and poradnikprzedsiebiorcy.pl 2026 summaries, all reporting identically. Some adjacent Polish figures held elsewhere in the same engine module, such as the 2026 minimum wage, are flagged in the source as secondary-corroborated rather than fetched from the underlying regulation, because the primary sites did not expose those raw figures to automated retrieval.
Common Pitfalls
Thinking the first 30,000 zl is untaxed. It is not exempted from the base. Tax is computed on the whole base and then 3,600 zl is subtracted. The cash result at 12% is the same, which is exactly why the design goes unnoticed until someone in the 32% bracket assumes their allowance is worth 9,600 zl. It is worth 3,600 zl to everyone.
Crossing 120,000 zl and expecting the whole base to be taxed at 32%. Only the excess is. A base of 130,000 zl pays 32% on 10,000 zl, not on 130,000 zl.
Entering gross salary as the taxable base. For an employee the base is typically 10% to 15% lower, after ZUS and the standard cost deduction.
Choosing podatek liniowy on the tax rate alone. The flat 19% forfeits the kwota wolna entirely and cannot be combined with joint filing or the child relief. Below the crossover it is straightforwardly more expensive: 10,600 zl more on a 100,000 zl base.
Forgetting the PIT-2. Without it your employer withholds without the 300 zl monthly reduction, and you carry the difference until your annual return.
Frequently Asked Questions
How much PIT do I pay on 100,000 zl in Poland?
When does the 32% tax bracket start in Poland?
How does the 30,000 zl tax-free amount actually work?
Is the flat 19% podatek liniowy cheaper than the scale?
Why is my effective rate lower than 12%?
What is the difference between my gross salary and my taxable base?
Sources
- Ministerstwo Finansow / KAS, Portal Podatkowy: https://www.podatki.gov.pl -- the skala podatkowa: 12% up to 120,000 zl, 32% above, with a 30,000 zl kwota wolna od podatku delivered as a 3,600 zl annual kwota zmniejszajaca podatek.
- Ustawa o podatku dochodowym od osob fizycznych (the PIT Act), consolidated text, as amended by the 2022 Polski Lad reform and its 2023 correction.
- Zaklad Ubezpieczen Spolecznych: https://www.zus.pl -- ZUS contribution rates and bases underlying the taxable base.
- Cross-corroborating 2026 summaries reporting identical 120,000 / 12% / 32% / 30,000 figures: https://www.pit.pl, https://www.pitax.pl, https://poradnikprzedsiebiorcy.pl
- The 14,100 zl annual cap on the health-contribution deduction under the podatek liniowy, noted in the engine's B2B section from faktura.pl and bizky.ai 2026 summaries.
Figures verified 2026-08-23 for the 2026 Polish tax year.