Tax
Filing a Dutch tax return as an expat
The Dutch tax return covers all of last calendar year and is surprisingly user-friendly through Mijn Belastingdienst, once you have DigiD. Here is what to expect, when to file, and what most expats overlook.
By NL Tax Guide editorial·Last reviewed
How the Dutch tax year works
The Dutch tax year is the calendar year. Returns covering year X are filed in spring of year X+1. By late February, the Belastingdienst publishes pre-filled returns: your employer's income data, your bank balances on 1 January, your mortgage interest, and your previous year's deductions are already in the form. Your job is to review, add anything missing, and submit.
Income is taxed across three boxes: Box 1 covers wages, freelance income, pensions, and the home you own and live in (with mortgage interest deduction capped at 37.56% in 2026). Box 2 covers substantial shareholdings (5%+ in a company you control). Box 3 covers savings and investments at 36% on a deemed return. Each box has its own rate structure and rules; the return walks you through them in order.
Migration year: M-form
The year you arrive in the Netherlands (or leave it), you file an M-form rather than the standard P-form. The M-form splits the year into a non-resident period (before arrival, you only owe Dutch tax on Dutch-sourced income) and a resident period (after arrival, worldwide income reportable). Different rules apply on each side of the move date.
The M-form is significantly more involved than the P-form. It cannot be filed online without a tax advisor's software — most expats use a service like Blue Umbrella, J.C. Suurmond, or their employer's tax provider for the first year. Costs range from €150 for simple M-forms to €600+ if you have foreign self-employment, multiple properties, or partial-year fiscal partnership.
The migration-year refund
Standard year: P-form
From your second full year onwards, you file a P-form online via Mijn Belastingdienst with your DigiD. Most fields are pre-filled from your employer's submissions and your bank's data sharing. You mostly review, add Box 3 totals, confirm deductions, and submit.
The system is available in Dutch and partially in English. Field labels translate automatically with most browsers. If you have a fiscal partner, both of your data is consolidated in one return, and the form lets you assign deductions to whoever benefits more (the higher Box 1 earner usually wins for charity and mortgage).
What a jaaropgaaf looks like
Your employer issues a jaaropgaaf in February covering the previous calendar year. It is the document the Belastingdienst uses to pre-fill your return, and the one you cross-check before confirming. The fields are numbered to match the official Belastingdienst layout.
Jaaropgaaf 2026
Acme B.V.
Tax year: 1 Jan – 31 Dec 2026
Employee: J. Smit · BSN: ••• •• 234
Issued: February 2027
- 1.Loon voor de loonheffing(taxable wage for income tax)after 30% ruling reduction€56,000
- 2.Ingehouden loonheffing(income tax + NI withheld)€13,886
- 3.Verrekende arbeidskorting(employment credit applied)€5,007
- 4.Loon Zorgverzekeringswet(wage for healthcare contribution)€56,000
- 5.Ingehouden bijdrage Zvw(employee Zvw withheld)your employer pays this directly to the tax office€0
- 6.Levensloopverlofkorting(life-course leave credit)abolished, included for legacy compatibility€0
- 7.Vergoeding extraterritoriale kosten (30%)(tax-free expat allowance for the year)€24,000
What to gather before filing
- Annual income statement (jaaropgaaf) from each Dutch employer
- Annual income statements from foreign employers (if any)
- Mortgage interest statement (jaaroverzicht hypotheek) and WOZ value
- Bank balances on 1 January (savings, current accounts, abroad too)
- Investment portfolio value on 1 January (every broker)
- Crypto holdings value on 1 January
- Donations to ANBI charities with receipts
- Study cost receipts (only deductible up to 2022 — confirm year)
- Specific medical expense receipts above the deductible threshold
- Childcare cost statements (kinderopvang) for kinderopvangtoeslag
- Foreign property valuations and rental income (if applicable)
- Any letters from the Belastingdienst about provisional assessments
Common refunds expats miss
Bonus over-withholding (bijzonder tarief)
Employers apply a flat high rate to bonuses and 13th-month payments — often higher than your effective annual rate. The reconciliation refunds the difference, typically a few hundred to a few thousand euros for high earners.
Mortgage interest deduction (hypotheekrenteaftrek)
Interest on your owner-occupied home is deductible from Box 1 income. If your employer didn't apply a voorlopige aanslag during the year, the entire benefit comes through at filing.
30% ruling reconciliation
If the ruling was granted partway through the year, the refund of the over-withheld months is calculated at filing. Make sure your jaaropgaaf already shows the correct taxable salary — if not, payroll has miscoded the ruling.
Mid-year arrival or departure
The progressive rate is applied as if you earned 12 months of Dutch income. Earning only six months pushes you into a lower effective bracket and usually triggers a refund. The M-form handles this automatically.
ANBI donations and giro charities
One-off donations are deductible above a 1% threshold of your drempelinkomen (with a €60 minimum), capped at 10% of that income. Periodic donations on a five-year notarised commitment have no threshold but are capped at €1,500,000 per year from 2026 onwards. The 5-year periodieke gift is the much better structure if you give regularly.
Excess medical and care costs
Specific care expenses above an income-dependent threshold are deductible — common items: dietary support, mobility aids, transport to specialists. Routine GP and dental visits are not deductible.
The 30% ruling on your tax return
If you have the 30% ruling, your jaaropgaaf already shows the taxable portion only. You don't reapply the 30% deduction on the return — it's baked in upstream by your employer's payroll. What you may need to handle on the return:
- Mid-year activation: if the ruling was granted partway through the year, payroll corrected the back-months on payslips, but the return is where the final reconciliation lands.
- Partial non-resident election: for legacy rulings (granted before 2024), you can elect partial non-resident status for Box 2/3 on the return. New rulings no longer offer this.
- Salary norm check: if your Dutch-source earnings dipped below the salary norm, the ruling is voided for that year and the return is where the additional tax is collected.
Box 3: savings and investments
Box 3 taxes your wealth on 1 January of each year — bank balances, brokerage accounts, crypto, second homes (not the one you live in), and any other personal capital. The 2026 tax-free allowance (heffingsvrij vermogen) is €59,357 per person, or €118,714 with a fiscal partner. Above that, you pay 36% on a deemed return that varies by asset class: cash 1.28%, investments (incl. crypto, ETFs, second homes) 6.00%, with debts deducted at 2.70%. The bridging law remains in force for 2026 and 2027; the new actual-return regime (Wet werkelijk rendement box 3) is scheduled to start 1 January 2028.
The Belastingdienst pre-fills Dutch bank and broker balances, but you must add foreign accounts, crypto wallets, and any privately held positions yourself. Crypto in particular trips up filers because there's no auto-fill and the values must be in EUR on 1 January — use a price oracle or your exchange's year-end statement.
Don't forget foreign accounts
Provisional assessment (voorlopige aanslag)
If you regularly receive a refund — common with a mortgage — you can request a voorlopige teruggaaf to receive the refund in monthly installments throughout the year instead of as a lump sum after filing. The reverse also exists: if you owe tax (typically with a side business or large Box 3 wealth), monthly payments spread the burden.
What changes after the 30% ruling expires
The first full year without the 30% ruling is a tax shock — your taxable income jumps by ~30% and a chunk of it lands in the top bracket. Box 3 also bites harder once the partial-non-resident shield is gone. Run a fresh net salary estimate the year before expiry and adjust your spending, savings rate, and pension contributions accordingly.
Related calculators and guides
- Box 3 wealth tax calculator: pre-fill your bank and broker totals before filing.
- Net salary calculator: estimate whether you over-withheld and are due a refund.
- Dutch payslip explained: understand bijzonder tarief and year-end reconciliation.
- 30% ruling application: apply or transfer the ruling if you haven't already.
Frequently asked questions
Do I have to file a Dutch tax return?
What's the difference between the P-form and M-form?
What's the deadline?
How long does a refund take?
Will I get a refund?
Should I file together with my partner?
What's a fiscal partner?
I left the Netherlands mid-year. Do I still file?
How does the 30% ruling show up on the return?
Do I have to declare foreign income?
What if I find a mistake after filing?
Do I need a tax advisor?
Related guides
30% ruling application: documents and timeline
How to file the application, the four-month deadline, and the mistakes that get applications rejected.
Dutch payslip explained
Every line on your loonstrook decoded: gross, holiday allowance, loonheffing, and the 30% ruling.
What changed in Dutch tax for 2026 vs 2025
Bracket-by-bracket comparison of every Dutch tax change for 2026: brackets, credits, 30% ruling, Box 3, NHG.
Buying vs renting in the Netherlands
When buying beats renting: hypotheekrenteaftrek, transaction costs, and the breakeven math.
Sources
- Belastingdienst — Income tax for individuals: belastingdienst.nl
- Wet inkomstenbelasting 2001 (Income Tax Act, the legal basis for the box system)
- Tax thresholds, deemed returns, and allowances change yearly. Verify current-year figures on the Belastingdienst site before filing.