The problem every rate calculator skips
Search “how to set your freelance rate” and you’ll find the same formula everywhere: take your desired salary, add overhead, divide by billable hours, done. It’s a reasonable starting point in most tax systems. In the Netherlands, it quietly breaks, because the formula assumes you already know your tax bill, and your tax bill depends on the very rate you’re trying to calculate.
Here’s the loop. Your Dutch income tax depends on your profit (winst). Your profit is revenue minus costs minus a set of self-employment deductions. Those deductions, and the tax bands they interact with, aren’t flat. The zelfstandigenaftrek (€1,200 in 2026) and the MKB-winstvrijstelling (12.70% of profit after that deduction) both scale with how much you earn, and Dutch income tax itself is progressive across three bands (35.75% up to €38,883, 37.56% up to €78,426, 49.50% above that, combined IB and social-insurance premiums). On top of that sits the ZVW healthcare contribution, 4.85% of taxable profit up to a capped base.
So: your tax depends on your profit. Your profit depends on your revenue. Your revenue depends on the rate you charge. And most guides, Dutch and English alike, ask you to supply your expected annual tax bill as an input, which is exactly the number that’s hardest to know in advance. In the end the obscurity remains in your lap.
Closing the loop instead of guessing it
The way to actually solve this is to work it backwards, iteratively: start with a rate guess, compute the tax that guess implies, adjust the rate, repeat until it converges. That’s mechanical work a spreadsheet resists and software does well — it’s the calculation behind Peil’s hourly rate tool, which shows the full chain rather than a single output number, and the minimum rate tool, which answers the sharper question of what you need to charge just to cover your costs and living expenses.
The number that comes out the other end is what Peil calls your Net Effective Rate (NER): what you actually get to keep per billable hour, after tax, after your buffer, after disability insurance and pension contributions if you’re setting those aside. Not your invoiced rate. What’s left once the pipeline is done with it.
The variable most calculators get wrong: billable hours
Every rate formula divides by “billable hours,” and most quietly assume a number in the 65-70% range. That’s a defensible figure for an established freelancer with a steady client base. It is not defensible for someone in their first year, where acquisition, admin, and building a portfolio can eat most of the working week. Some published starter breakdowns show closer to 25% billable in the early months.
Using an average built for an established freelancer, when you’re not one yet, doesn’t just introduce a small error but compounds through every number downstream: your revenue estimate, your reserves, your rate. The honest fix isn’t a better published average. It’s tracking your own ratio from week one, so the rate calculation uses your actual numbers instead of someone else’s stage.
What this means if you’re new to the Netherlands
If you’ve freelanced somewhere else before, the deductions themselves will be unfamiliar, but the instinct to want a single flat percentage for “how much of my revenue goes to tax” is universal, and in the Netherlands that instinct is the trap. There’s no flat rate. The zelfstandigenaftrek and MKB-winstvrijstelling both require you to have crossed the 1,225-hour urencriterium for the year. Miss it, and your effective tax rate jumps, silently, in a way a generic calculator won’t warn you about.
There’s also a second, unrelated threshold worth knowing before you quote a number: from 31 December 2026, a rate at or below roughly €38/hour can trigger a legal presumption of employment under Dutch labour law, shifting the burden onto your client to prove you’re genuinely self-employed. That’s a labour-law mechanism, not a tax one, but it’s a floor worth being aware of independent of what your NER calculation says you need.
Setting the number
Set your rate too low using a generic formula, and you find out months later, when your reserves don’t cover a tax bill that turned out higher than the flat percentage promised. Set it by working the actual Dutch chain backwards, and the number you charge is the number you can actually keep.
Calculate your real hourly rate in Peil, free, no account required — see every step of the calculation, not just the final figure.