Skip to content

Phone numbers in the Netherlands (+31)

+31 is the calling code of the Netherlands. The trunk prefix is 0 and the international prefix 00. Every mobile number starts with 061–065, 068 or 097 when written nationally, with the trunk prefix, and no other type of number in the plan does. Read from libphonenumber’s numbering metadata (release 9.0.41) and the ACM number register of 2026-10-19, never from a number anyone typed.

Dialling and writing numbers in the Netherlands

The trunk prefix is dialled in front of a number inside the country and dropped after the calling code; the international prefix is dialled to call out of it. The lengths and the leading digits below say which numbers the plan accepts and what their first digits tell you about the line type.

trunk prefix0, dialled before a number inside the country and dropped after +31
international prefix00
length, mobile9 or 11 digits
length, fixed line9 digits
length, toll free7 to 10 digits
length, premium rate7 to 10 digits
length, VoIP9 digits
length, pager9 digits
length, universal access number5, 6 or 9 digits
mobiles start with061–065, 068 or 097
mobile vs fixed lineseparate ranges in the plan

Lengths count the national significant number, the digits after the calling code, without the trunk prefix. Every value is read from libphonenumber’s metadata, release 9.0.41, which a lookup runs on.

One number in each of its written forms

written nationally06 12345678
written internationally+31 6 12345678
E.164+31612345678
dialled from the United States011 31 6 12345678
dialled from the United Kingdom00 31 6 12345678

This is libphonenumber’s example mobile number, formatted by libphonenumber. An example number can be in service, so read it as notation and never dial or text it.

The numbering plan for the Netherlands

Every phone lookup starts from the numbering metadata: it settles whether a number is valid for the Netherlands, how it is written nationally and internationally, and which line type its range belongs to. The example numbers below are libphonenumber’s examples of each line type’s format; one may be in service, so read them for their shape and never dial or text one as a test.

calling_code+31
example, mobile+31 6 12345678
example, fixed line+31 10 123 4567
example, toll free+31 800 1234
example, premium rate+31 906 1234
example, VoIP+31 85 123 4567
example, pager+31 66 2345678
regulator tableACM number register
table synced2026-10-19 (version 2026-10-19)
area-code pages148
SMS-receiving listings2,092 listings that still score disposable, of 9,562 numbers listed for the Netherlands (lists of 2026-10-28)
fictional rangesnone in Spaw’s list
continentEurope
currencyEUR
timezoneEurope/Amsterdam

The regulator table behind a lookup here

ACM number register (synced 2026-10-19, table version 2026-10-19). The table is complete: it lists every assigned block of its plan, so a geographic number outside it is called unassigned. A lookup names the block holder as carrier with carrier_source block_allocation — the original allocation, never who serves the number today.

  • 84,441 blocks in the table: 82,378 allocated, 2,040 unassigned, 23 reserved.
  • 97.6 % of the blocks are allocated.
  • 100.0 % of allocated blocks name a holder.
  • 7.5 % of allocated blocks settle the line type on their own (887 mobile, 5,306 VoIP).

Measured weekly (last on 2026-10-25) from the table itself. These are shares of the regulator’s own table, not of real traffic, and they say nothing about who serves any one number today.

Who publishes the table, its files and terms, and what the copy installed here holds are on its data source page.

What a lookup answers for a number here

Every number the plan accepts for the Netherlands comes back with its formats, its line_type and line_type_source, its region and timezones, and the is_fictional and is_disposable flags from the bundled fiction ranges and the synced list of SMS-receiving numbers. Because the ACM number register covers the Netherlands, a lookup also answers carrier from the block holder and block_status for every geographic number, unassigned included.

Europe/Amsterdam: the whole country keeps one clock, so a lookup answers that zone for every number here.

Area codes and number ranges in the Netherlands

The Netherlands has 141 area-code pages and 7 pages for non-geographic ranges (mobile, freephone, special-rate); each reads the same table for the blocks under its prefix, their original holders and the line types they settle. Written here with the trunk 0 dialled inside the Netherlands; from abroad the 0 is dropped after +31.

code · place its page names · blocks allocated in the ACM number register (original allocation, not who serves a number today)

Area codes141

Non-geographic ranges7

Run the lookup

The plan’s own example number, answered with every field:

curl https://spaw.co/api/v1/phone \
  -H "Authorization: Bearer sk_live_…" \
  -H "Content-Type: application/json" \
  -d '{"phone": "+31 6 12345678", "country": "NL"}'

Or try one without a key on the free phone number lookup, and read every field in the phone intelligence guide.

Other regions

Wrong result, or is it about you? If this tool said something you think is wrong, tell us and a person reads it. If Spaw is holding data about you and you never signed up here — a customer may have had your address verified, or reported that a message to it bounced — erase it yourself, confirmed by mail to that address and with no account needed.

More free tools

All free tools

Need this at scale?

The Spaw API runs the same lookup with batch and bulk endpoints, monitored number lists, your own suppression list and SMS outcome reporting — 100 free credits a month, no card required.

Get your API key