Quick Answer: On the default of a DKK 900,000 salary in a 26.30% municipality with no church tax, total 2026 Danish tax is DKK 365,847.83, leaving DKK 534,152.17 net for the year, or DKK 44,512.68 a month. That is an average rate of 40.65% on gross, and it is already DKK 2,937.56 lower than the DKK 368,785.39 the layer-by-layer rates would produce, because personskattelovens § 19 tax ceiling binds at this municipal rate and cuts both the mellemskat and topskat rates by 1.240 percentage points.
Overview
2026 is the first tax year under Denmark's restored three-bracket structure. The 2023-24 agreement on lower tax on work income reintroduced a mellemskat (middle-bracket tax) that did not exist in 2025, and added a top-topskat (additional top-bracket tax) on very high incomes. So a 2026 Danish salary now passes through four state layers, not two, on top of the municipal tax.
The thing that makes Denmark genuinely hard to estimate, and the thing this calculator is built around, is that the four state rates and the municipal rate are not independent. Personskattelovens § 19, det skrå skatteloft, caps the sum of the rates. Where a municipality's rate pushes the total over the ceiling, the state reduces its own rate by exactly the excess. Two people on identical salaries in different municipalities therefore face different state tax rates, not just different municipal ones, and the higher-tax municipality does not cost quite as much as its headline rate implies.
Because the ceiling is calibrated so that the national average municipality sits fractionally under the trigger, most Danish taxpayers get nothing from it. The default here deliberately uses a 26.30% municipality, the top of the 2026 range, so the mechanism is visible.
How This Is Calculated
The four state layers and the municipal layer are computed first, then § 19 relief is subtracted from the progressive state layers:
where $L$ runs over mellemskat, topskat and top-topskat, $B_L$ is that layer's base, $r_L$ its statutory rate and $n_L$ the § 19 nedslag.
Step 1 -- Charge AM-bidrag on gross wage income. 8% of gross, taken off the top before every other tax and outside the ceiling entirely.
Step 2 -- Compute personal income after AM-bidrag. Gross minus the AM-bidrag. Every bracket threshold in Denmark is measured against this figure, not against gross.
Step 3 -- Compute the beskæftigelsesfradrag. 12.75% of gross wage income (the AM-bidragsgrundlag, i.e. before AM-bidrag is deducted), capped at DKK 63,300.
Step 4 -- Compute the jobfradrag. 4.5% of the portion of gross above DKK 235,200, capped at DKK 3,100.
Step 5 -- Compute the bundskat base and charge 12.01%. Personal income after AM-bidrag, less the DKK 54,100 personfradrag. The two employment deductions do not reduce this base.
Step 6 -- Compute the municipal base and charge the municipal and church rates. Personal income after AM-bidrag, less the beskæftigelsesfradrag, less the jobfradrag, less the personfradrag. Both the municipal rate and the church rate apply to this same base.
Step 7 -- Charge mellemskat at 7.5% above DKK 641,200. On personal income after AM-bidrag, before any ceiling relief.
Step 8 -- Charge topskat at 7.5% above DKK 777,900. Same base, before ceiling relief.
Step 9 -- Charge top-topskat at 5% above DKK 2,592,700. Same base, before ceiling relief.
Step 10 -- Add up each ceiling's rate sum. The mellemskat ceiling compares bundskat + mellemskat + municipal. The topskat ceiling compares bundskat + mellemskat + topskat + municipal. The top-topskat ceiling compares all four state rates + municipal. Church tax is excluded from all three sums.
Step 11 -- Derive each layer's nedslag. For each layer, the reduction is the amount by which its rate sum exceeds its ceiling percentage, floored at zero and capped at that layer's own rate. A layer's rate can be reduced to zero but never below it.
Step 12 -- Convert each nedslag into kroner of relief. That layer's base multiplied by its nedslag in percentage points.
Step 13 -- Subtract the relief from each layer and total the tax. Total tax is AM-bidrag + bundskat + municipal + church + the three reduced progressive layers.
Step 14 -- Report the trigger rate and headroom. The municipal rate at which the ceilings start to bind is the mellemskat ceiling percentage minus the bundskat rate minus the mellemskat rate. Headroom is that trigger less your municipal rate; negative means relief is due.
Worked Example
A DKK 900,000 salary, municipality at 26.30%, no church tax, using the calculator's default ceiling percentages.
Step 1 -- AM-bidrag. 900,000 x 8% = DKK 72,000.00
Step 2 -- Personal income after AM-bidrag. 900,000 - 72,000 = DKK 828,000.00
Step 3 -- Beskæftigelsesfradrag. min(900,000 x 12.75%, 63,300) = min(114,750, 63,300) = DKK 63,300.00
Step 4 -- Jobfradrag. min((900,000 - 235,200) x 4.5%, 3,100) = min(29,916, 3,100) = DKK 3,100.00
Step 5 -- Bundskat. (828,000 - 54,100) x 12.01% = 773,900 x 12.01% = DKK 92,945.39
Step 6 -- Municipal base. 828,000 - 63,300 - 3,100 - 54,100 = DKK 707,500.00
Step 7 -- Kommuneskat. 707,500 x 26.30% = DKK 186,072.50
Step 8 -- Mellemskat before the ceiling. (828,000 - 641,200) x 7.5% = 186,800 x 7.5% = DKK 14,010.00
Step 9 -- Topskat before the ceiling. (828,000 - 777,900) x 7.5% = 50,100 x 7.5% = DKK 3,757.50
Step 10 -- Top-topskat before the ceiling. 828,000 is below DKK 2,592,700, so DKK 0.00
Step 11 -- Mellemskat rate sum. 12.01 + 7.50 + 26.30 = 45.81%, against a 44.57% ceiling
Step 12 -- Mellemskat nedslag. 45.81 - 44.57 = 1.240 percentage points
Step 13 -- Topskat rate sum. 12.01 + 7.50 + 7.50 + 26.30 = 53.31%, against a 52.07% ceiling
Step 14 -- Topskat nedslag. 53.31 - 52.07 = 1.240 percentage points
Step 15 -- Relief on the mellemskat base. 186,800 x 1.240% = DKK 2,316.32
Step 16 -- Relief on the topskat base. 50,100 x 1.240% = DKK 621.24
Step 17 -- Total § 19 relief. 2,316.32 + 621.24 = DKK 2,937.56
Step 18 -- Mellemskat after the ceiling. 14,010.00 - 2,316.32 = DKK 11,693.68
Step 19 -- Topskat after the ceiling. 3,757.50 - 621.24 = DKK 3,136.26
Step 20 -- Total tax before the ceiling. 72,000.00 + 92,945.39 + 186,072.50 + 14,010.00 + 3,757.50 = DKK 368,785.39
Step 21 -- Total tax after the ceiling. 368,785.39 - 2,937.56 = DKK 365,847.83
Step 22 -- Net annual salary. 900,000 - 365,847.83 = DKK 534,152.17
Step 23 -- Net monthly salary. 534,152.17 / 12 = DKK 44,512.68
Step 24 -- Average rate on gross. 365,847.83 / 900,000 = 40.65%
Step 25 -- The trigger municipal rate. 44.57 - 12.01 - 7.50 = 25.06%, which the 26.30% municipality exceeds by 1.240 points, exactly the nedslag from Steps 12 and 14.
The marginal rate on the next krone of gross pay works out at 54.76%: AM-bidrag takes 8 øre, and the remaining 92 øre then meets bundskat plus both reduced progressive rates, while the municipal rate applies to the same 92 øre because both employment deductions are already at their caps and no longer grow.
What This Does Not Account For
- The three ceiling percentages are UNVERIFIED in this build. retsinformation.dk returned HTTP 403 to automated access on both 2026-08-30 and 2026-08-31, so personskatteloven § 19 could not be read from the official consolidated text, and skat.dk publishes no English page carrying the figures. The 52.07% topskat ceiling is widely reproduced in reform commentary; the 44.57% and 57.07% figures follow arithmetically from it by subtracting the 7.5-point mellemskat rate and adding the 5-point top-topskat rate. All three are exposed as editable inputs rather than fixed constants precisely because they could not be confirmed. Check them against retsinformation.dk before relying on the output.
- Pension contributions are assumed to be zero. In reality both employee and employer pension contributions reduce personal income, which would lower every layer of this calculation. There is no field for them.
- Capital income is assumed to be zero. Positive net capital income is part of the bundskat base in Danish law and is not modelled here. Negative capital income (typically mortgage interest) generates a municipal-level deduction that is likewise absent.
- Only one municipal rate is modelled, not all 98 municipalities. You supply the rate. The 2026 national average is 25.049%, the range runs from 23.39% in København to 26.30%.
- This is an annual liability, not a payroll withholding simulation. It computes the statutory annual figure that SKAT's forskudsopgørelse targets. It does not reproduce the month-by-month trækprocent-plus-fradrag mechanic employers apply, which distributes tax differently across paychecks for irregular income.
- Personal deductions beyond the standard ones are excluded. Befordringsfradrag (commuting), union fees, A-kasse contributions, charitable deductions and the like are not modelled; only the personfradrag, beskæftigelsesfradrag and jobfradrag are applied.
- Ejendomsværdiskat and grundskyld are out of scope. Property taxes are separate charges under the Ejendomsskattelov and appear nowhere in this figure.
- The result is for a single filer. Transfer of unused personfradrag between spouses and other joint-assessment mechanics are not applied.
Common Pitfalls
- Reading the 52.07% ceiling as a cap on your total tax burden. It is not. It caps the sum of bundskat, mellemskat, topskat and the municipal rate, measured on the base after AM-bidrag. Add the 8% AM-bidrag charged first, and the true marginal rate on gross pay exceeds the ceiling number, 54.76% in the worked example above.
- Forgetting that church tax sits outside the ceiling. Kirkeskat is excluded from all three rate sums, so a church member's total burden legitimately exceeds the ceiling percentage. The ceiling does not give back a single krone for it.
- Assuming ceiling relief is available to most people. The trigger municipal rate is 25.06% and the national average is 25.049%, eleven thousandths of a point below it. The ceiling is calibrated so that the average taxpayer never touches it.
- Applying the beskæftigelsesfradrag to the bundskat base. It does not reduce the state layers at all. Both employment deductions reduce only the municipal and church tax base, which is why they are worth roughly a quarter of their face value rather than half.
- Comparing municipalities on the headline rate alone. Above the trigger, part of a higher municipal rate is offset by a lower state rate. The difference in total tax between a 26.30% and a 25.06% municipality is therefore smaller than 1.24 points of the municipal base would suggest for anyone with mellemskat or topskat income.
- Expecting relief when your income is below the thresholds. At a DKK 400,000 salary the rate sums still breach the ceiling, but there is no mellemskat or topskat base for the reduction to bite on, so the relief is zero.
- Mixing up the two bases. The bracket thresholds (641,200 / 777,900 / 2,592,700) are measured on personal income after AM-bidrag. The employment deductions are computed on gross before AM-bidrag. Using one base for both is a common and material error.
Frequently Asked Questions
What is det skrå skatteloft and who actually benefits from it?
What is mellemskat and why is it new?
Why is my marginal rate higher than the 52.07% ceiling?
Does church tax count towards the ceiling?
Which allowances reduce which tax?
Can I trust the ceiling percentages in this calculator?
Sources
- skat.dk, "Labour market contribution (AM-bidrag)" -- the 8% rate, unchanged since 2008.
- skat.dk/en-us/help/botton-bracket-middle-bracket-top-bracket-and-additional-top-bracket-tax -- bundskat 12.01%, mellemskat 7.5% from DKK 641,200, topskat 7.5% from DKK 777,900, top-topskat 5% from DKK 2,592,700, all on the post-AM-bidrag basis. Re-confirmed 2026-08-30.
- Skatteministeriet (svmn.dk), official table of beløbsgrænser regulated under personskattelovens § 20 for 2025-2026 -- personfradrag DKK 54,100, beskæftigelsesfradrag and jobfradrag rates and caps.
- skat.dk, "Employment and job allowances" -- beskæftigelsesfradrag 12.75%, jobfradrag 4.5% above the threshold.
- danskelove.dk mirror of Personskatteloven § 3, stk. 2 -- confirming that AM-bidrag, but not the employment allowances, is deducted in arriving at personal income, which is why those allowances reduce only the municipal and church base.
- Skatteministeriet (svmn.dk), official 2026 municipal tax statistics -- average kommuneskat 25.049% excluding church tax, 25.688% including, implying an average kirkeskat of 0.639%; range 23.39% (København) to 26.30%.
- Personskatteloven § 19 -- the legal basis for det skrå skatteloft. Not directly read in this build: retsinformation.dk returned HTTP 403 to automated access. See the caveat above and the sourcing block in
engine/primitives/denmark-tax.ts.