Quick Answer: On the default of €80,000 of revenue against €10,000 of costs, meeting the urencriterium and not a starter, the net income after all levies is €51,149.02. The €70,000 gross profit is reduced by a €1,200 zelfstandigenaftrek and then by a €8,737.60 mkb-winstvrijstelling, leaving €60,062.40 of taxable profit. Box 1 tax of €21,855.65 less €5,917.70 of heffingskortingen gives €15,937.95 of income tax, plus a €2,913.03 Zvw contribution at 4.85%: €18,850.98 of total levies, an effective 26.93% on the profit. The next €100 of revenue costs 48.3%.
Overview
A Dutch sole trader (eenmanszaak, or zzp'er) does not simply pay income tax on profit. Two business reliefs come off first, then the box 1 brackets apply, then the general tax credits, and finally a separate health insurance contribution.
The shape of that relief has changed fundamentally. The zelfstandigenaftrek has been cut from €7,280 in 2019 to €1,200 in 2026 and is nearly spent as a policy instrument. The load-bearing relief is now the mkb-winstvrijstelling at 12.7% of profit after the ondernemersaftrek. Because it is a percentage rather than a fixed amount, it is worth more the more you earn, which is the opposite shape to the deduction it effectively replaced. On the default profit the zelfstandigenaftrek accounts for only 12.08% of the total relief.
Above €78,426 a third mechanism bends the result back. The tariefsaanpassing credits both reliefs at 37.56% while the profit they shelter would have been taxed at 49.50%, clawing back a fixed 11.94 cents per euro of relief.
And the urencriterium is a cliff. Spend fewer than 1,225 hours actually running the business in the calendar year and the entire ondernemersaftrek disappears. It is a threshold, not a proportion.
How This Is Calculated
Step 1 -- Compute gross profit. Revenue less deductible business costs.
Step 2 -- Compute the zelfstandigenaftrek. €1,200 if the urencriterium is met and the profit is positive, but never more than the profit itself, so it cannot create a loss. Zero if the urencriterium is missed.
Step 3 -- Add the startersaftrek if claimed. €2,123, available in three of the first five years of trading, and only where the urencriterium is met. Unlike the zelfstandigenaftrek this one is not capped at profit and can create a loss, matching art. 3.76 lid 5 Wet IB 2001.
Step 4 -- Total the ondernemersaftrek and subtract it from profit.
Step 5 -- Compute the mkb-winstvrijstelling. 12.7% of the profit remaining after the ondernemersaftrek. The two reliefs therefore compound rather than adding. If the base is negative, the vrijstelling is taken as zero and is not grossed up.
Step 6 -- Compute the taxable profit. Profit after the ondernemersaftrek less the mkb-winstvrijstelling.
Step 7 -- Add other box 1 income. Salary, benefits or pension stack on top for bracket purposes.
Step 8 -- Run the box 1 brackets. 35.75% to €38,883, 37.56% from €38,883 to €78,426, and 49.50% above.
Step 9 -- Compute the tariefsaanpassing. Work out how much of the total relief fell above €78,426 by comparing income before the relief against the threshold, then charge the difference between 49.50% and 37.56%, which is 11.94 percentage points, on that portion only.
Step 10 -- Compute the heffingskortingen. The algemene heffingskorting on the taxable income, and the arbeidskorting on the taxable profit plus other income, because business profit is arbeidsinkomen.
Step 11 -- Deduct the credits from the adjusted tax, floored at zero. Any excess is forfeited and reported separately.
Step 12 -- Compute the Zvw contribution. 4.85% of the taxable profit, capped at a bijdrage-inkomen of €79,409. This is the self-employed rate; an employer would instead pay a 6.10% werkgeversheffing.
Step 13 -- Total the levies and compute net income. Income tax due plus the Zvw contribution, subtracted from gross profit.
Step 14 -- Measure the marginal rate. The engine recomputes total levies on €100 more of revenue and differences them, which picks up the bracket, both credit tapers, the mkb-winstvrijstelling and the Zvw cap at once.
Worked Example
A freelancer with €80,000 of revenue, €10,000 of costs, meeting the urencriterium, past the starter years, with no other income.
Step 1 -- Gross profit. €80,000 - €10,000 = €70,000.00
Step 2 -- Zelfstandigenaftrek. min(€1,200, €70,000) = €1,200.00
Step 3 -- Startersaftrek. Not a starter, so €0.00
Step 4 -- Total ondernemersaftrek. €1,200.00
Step 5 -- Profit after the ondernemersaftrek. €70,000.00 - €1,200.00 = €68,800.00
Step 6 -- Mkb-winstvrijstelling. €68,800.00 x 12.7% = €8,737.60
Step 7 -- Taxable profit. €68,800.00 - €8,737.60 = €60,062.40
Step 8 -- Box 1 tax, first bracket. €38,883 x 35.75% = €13,900.67
Step 9 -- Box 1 tax, second bracket. (€60,062.40 - €38,883) x 37.56% = €21,179.40 x 37.56% = €7,954.98
Step 10 -- Box 1 tax before adjustment. €13,900.67 + €7,954.98 = €21,855.65
Step 11 -- Tariefsaanpassing. Income before relief is €70,000, which is below €78,426, so no relief fell in the top band and the adjustment is €0.00
Step 12 -- Algemene heffingskorting. €3,115 - (€60,062.40 - €29,736) x 6.398% = €3,115 - €1,940.28 = €1,174.72
Step 13 -- Arbeidskorting. €5,685 - (€60,062.40 - €45,592) x 6.510% = €5,685 - €942.02 = €4,742.98
Step 14 -- Total credits. €1,174.72 + €4,742.98 = €5,917.70
Step 15 -- Income tax due. €21,855.65 - €5,917.70 = €15,937.95, with €0.00 forfeited
Step 16 -- Zvw contribution income. min(€60,062.40, €79,409) = €60,062.40
Step 17 -- Zvw contribution at 4.85%. €60,062.40 x 4.85% = €2,913.03
Step 18 -- Total levies. €15,937.95 + €2,913.03 = €18,850.98
Step 19 -- Net income. €70,000.00 - €18,850.98 = €51,149.02
Step 20 -- Effective rate on profit. €18,850.98 / €70,000 = 26.93%
Step 21 -- Marginal rate on the next €100 of revenue. 48.30%
Two comparisons the calculator reports. Total relief from profit is €9,937.60, of which the zelfstandigenaftrek is only 12.08%: the mkb-winstvrijstelling now does nearly nine tenths of the work. And missing the urencriterium would raise total levies from €18,850.98 to €19,430.50, a cost of €579.52. That is smaller than the €1,200 deduction suggests, because losing the deduction also enlarges the mkb-winstvrijstelling base and because the credits partly offset.
What This Does Not Account For
- The scope is below AOW age. At AOW age the zelfstandigenaftrek halves to €600 and the startersaftrek to €1,062, and the algemene heffingskorting runs on a different table. None of that is applied here.
- VAT is entirely out of scope. Revenue should be entered excluding BTW, and no VAT position is computed.
- The kleinschaligheidsinvesteringsaftrek is not modelled, nor any other investeringsaftrek. A freelancer with significant qualifying asset purchases will have more relief than this page gives.
- The FOR (fiscale oudedagsreserve) is not modelled. It was abolished for new additions from 2023, but existing reserves still unwind.
- Meewerkaftrek and stakingsaftrek are not modelled.
- Box 3 is absent. Savings and investments are taxed separately and are not part of this calculation.
- No partner allocation is modelled. Fiscal partners can allocate certain items between them, which can change the result materially.
- Only the two main heffingskortingen are applied. The inkomensafhankelijke combinatiekorting and the other credits are not, so a freelancer with young children will have more credit than this shows.
- Pension premiums and other personal deductions are not modelled, and they would reduce the box 1 base before any of this.
- The revenue ladder table holds your costs, urencriterium status, starter status and other income constant while varying revenue, so it illustrates the shape of the effective rate rather than describing alternative businesses.
Common Pitfalls
- Still expecting a large zelfstandigenaftrek. It is €1,200 in 2026, down from €7,280 in 2019. Guidance written even a few years ago overstates it by thousands.
- Adding the two reliefs together. The mkb-winstvrijstelling is 12.7% of profit after the ondernemersaftrek, so they compound multiplicatively. Applying 12.7% to gross profit and then subtracting €1,200 gives a different, wrong answer.
- Treating the urencriterium as pro rata. It is all or nothing at 1,225 hours. There is no partial deduction for 1,200 hours.
- Forgetting the Zvw contribution. At 4.85% of taxable profit it is €2,913.03 here, roughly a sixth of the total levies, and it is not part of the income tax figure. A freelancer who budgets only for income tax will be short.
- Assuming the Zvw is uncapped. The bijdrage-inkomen is capped at €79,409, so it stops growing above that profit and the effective rate falls slightly.
- Ignoring the tariefsaanpassing. Above €78,426 of income before relief, every euro of relief is worth 37.56 cents rather than 49.5 cents. High-earning freelancers get materially less from the mkb-winstvrijstelling than the headline percentage implies.
- Reading the effective rate as the marginal rate. 26.93% is what the whole profit costs; the next euro costs 48.3%, because both credit tapers and the Zvw contribution all bite at the margin.
- Entering revenue including VAT. That inflates profit and every figure downstream of it.
Frequently Asked Questions
How much is the zelfstandigenaftrek in 2026?
What is the mkb-winstvrijstelling and how is it applied?
What happens if I miss the 1,225-hour urencriterium?
What is the Zvw contribution for a zzp'er in 2026?
Why is my marginal rate 48.3% when my bracket is 37.56%?
What is the tariefsaanpassing?
Sources
- Belastingdienst, "Zelfstandigenaftrek 2026" -- "De zelfstandigenaftrek is EUR 1.200" and "Het voordeel wordt berekend met een tarief van 37,56%." Read 2026-08-30.
- Belastingdienst, "Mkb-winstvrijstelling 2026" -- "In 2026 is de mkb-winstvrijstelling 12,7% van de winst, nadat u deze hebt verminderd met de ondernemersaftrek", with the benefit likewise computed at 37.56%. Read 2026-08-30.
- Belastingdienst, "Fiscale informatie 2026", chapter 8 "Ondernemersaftrek en investeringsaftrek" -- the zelfstandigenaftrek at €1,200 (€600 at AOW age), the startersaftrek at €2,123 (€1,062 at AOW age), and the urencriterium: "U besteedt als ondernemer in het kalenderjaar minimaal 1.225 uur aan het feitelijk drijven van uw onderneming(en)." Read 2026-08-30.
- Belastingdienst, "Percentages inkomensafhankelijke bijdrage Zvw" -- the self-employed rate of "4,85% (was 5,26% in 2025)", the employer levy of 6.10%, and a maximum bijdrage-inkomen of "EUR 79.409 (was EUR 75.864 in 2025)". Read 2026-08-30.
- Box 1 brackets and the 37.56% tariefsaanpassing ceiling come from
engine/primitives/netherlands-tax.ts; the two heffingskortingen fromengine/primitives/netherlands-heffingskortingen.ts, each sourced there. - Art. 3.76 lid 5 Wet IB 2001 -- the basis for capping the zelfstandigenaftrek at profit while leaving the startersaftrek uncapped.