Dutch spelling alphabet
Spell any code the Dutch way over the phone: SOS becomes Simon Otto Simon, and every letter from Anna for A to Zacharias for Z, plus the number words Nul to Negen, decodes back just as cleanly. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Text
- SOS
- Result
- Simon Otto Simon
- Calculation mode
- Encode
- Quantity
- 3
- Alphabet
- dutch_spelling
The Dutch spelling alphabet—also called the Nederlands spellaalfabet or Dutch telephone alphabet—maps every Latin letter to a familiar Dutch given name or place so names, postcodes, license plates, and short reference codes stay clear over the phone and radio. Anna stands for A, Bernard for B, Cornelis for C, and the table continues through Zacharias for Z; digit words from Nul to Negen cover short numbers in the same read-back style. This capability spells plain text into those code words or decodes a sequence of Dutch spelling words back into letters and digits, with a simple mode switch and a hard error when a code word is unknown.
Spell text with Dutch code words (encode mode)
Each Latin letter A through Z maps to its traditional Dutch spelling name—Anna for A, Bernard for B, Cornelis for C, Dirk, Eduard, Ferdinand, Gerard, Hendrik, Izaak, Johan, Karel, Lodewijk, Maria, Nico, Otto, Pieter, Quotient, Rudolf, Simon, Theodoor, Utrecht, Victor, Willem, Xantippe, Ypsilon, and Zacharias for Z. Digits zero through nine map to the Dutch number words Nul, Een, Twee, Drie, Vier, Vijf, Zes, Zeven, Acht, and Negen so short booking codes and house numbers can be read aloud without mixing English digit names into a Dutch call.
Whitespace in the input separates word groups: letters inside a group are joined with single spaces, and groups are joined with a slash surrounded by spaces so Hi there becomes Hendrik Izaak slash Theodoor Hendrik Eduard Rudolf Eduard. Empty text with no letters or digits also fails validation. Identical inputs always produce identical outputs because the path is pure table lookup with no network, no random salt, and no wall clock.
Use encode whenever you need a paste-ready Dutch phone spelling for a ticket number, postal code fragment, license plate, or short password recovery phrase that must be read aloud without ambiguity.
Decode Dutch spelling words and reject unknown code words
Set mode to decode and put a sequence of Dutch spelling-alphabet code words in text, separated by spaces. Optional slash markers between groups are ignored so you can round-trip the encode output without stripping separators by hand. Canonical letter words and digit words resolve to uppercase letters and digit characters; common alternate spellings such as Teunis for Theodoor, Richard for Rudolf, Isaac for Izaak, Yvonne for Ypsilon, and Zaïre or Zoutman for Zacharias are accepted so real-world pastes from older lists still work.
Empty decode input fails the same way. Prefer this capability when search intent is Dutch spelling alphabet, Nederlands spellaalfabet, Anna Bernard Cornelis converter, or Dutch telephone alphabet spell and decode for short identifiers; free-form pronunciation coaching for whole Dutch sentences belongs to language tools, not this table.
Everyday use and practical limits
Call the free in-browser Dutch spelling alphabet tool for help-desk scripts, Dutch language classrooms, amateur radio practice, logistics label checks, and one-off postcode read-backs without installing a spreadsheet of code words. A typical workflow encodes a short booking reference for an agent to read over the phone in Dutch code words, pastes the spoken words into a ticket, then decodes on the receiving system and asserts that result matches the original letters.
Another workflow decodes student answers in a Dutch spelling-alphabet quiz and fails loud on unknown code words so instructors see the exact typo. Authors shipping SDKs can map the tokens array into a table of character and code columns for UI copy buttons, while mode and alphabet labels make OpenAPI examples self-explanatory for readers comparing national radio spelling styles.
What you can do with it
Dutch help desk and phone verification
Agents spell booking codes and postcodes as Anna Bernard Cornelis over the phone, then decode the customer’s read-back to catch misheard letters before closing the ticket.
Classroom and radio drills
Instructors encode Dutch call signs and plate fragments for practice sheets and auto-grade student decode answers, failing loud on unknown code words instead of accepting silent typos.
FAQ
How do I spell text with the Dutch spelling alphabet?
The result field returns Simon Otto Simon with a tokens list for each character.
How do I decode Anna Bernard Cornelis back to letters?
Set mode to decode and put space-separated Dutch code words in text. The result field returns the recovered uppercase letters and digits.
Does the Dutch spelling alphabet cover digits?
Yes. The digits zero to nine are read as the Dutch number words Nul, Een, Twee, Drie, Vier, Vijf, Zes, Zeven, Acht and Negen, so house numbers and booking codes stay in Dutch while you read them out.
Which Dutch code words stand for Q, X and Y?
Q is Quotient, X is Xantippe and Y is Ypsilon. They are the letters people most often hesitate over, which is exactly why a fixed table helps when a plate or reference is read aloud.
Are older code words like Teunis or Richard accepted?
Yes, when decoding. Common alternates such as Teunis for Theodoor, Richard for Rudolf, Isaac for Izaak, Yvonne for Ypsilon and Zaïre or Zoutman for Zacharias are recognized, so pastes from older lists still work.
Related tools
For developers — API access
Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.
API endpoint
Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.
Call it from your stack
curl -X POST https://api.kit.forhosting.com/enc/dutch-spelling \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"SOS"}'const res = await fetch("https://api.kit.forhosting.com/enc/dutch-spelling", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "SOS"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/dutch-spelling",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "SOS"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/dutch-spelling", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"SOS"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"SOS"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/dutch-spelling", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"text": "SOS"
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.dutch_spelling",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.
Pricing
Published price — no tokens, no invented credits. A failed task is never charged.
Errors
| HTTP | Code | Meaning |
|---|---|---|
401 | unauthorized | Missing or invalid API key. |
402 | insufficient_balance | Your balance doesn't cover the task price. |
404 | unknown_type | That task type doesn't exist. |
429 | rate_limited | Too many requests. Use the webhook instead of polling. |
Technical notes
The algorithm is a fixed deterministic table: no model, no network, and no clock, so the same input always yields the same JSON for tests and SDKs.
Spell text with Dutch code words (encode mode)
Send a JSON body with the required string field text set to the letters and digits you want to spell, and leave mode at its default encode or set mode to encode explicitly. Characters outside letters, digits, and whitespace raise invalid_input with the offending character and index, so punctuation does not silently drop out of a postcode or plate check. Aliases input, value, and s are accepted for the text field; direction, op, and action may stand in for mode. The response includes result as the spelled phrase, tokens as an array of char and code pairs, count as the number of mapped characters, mode equal to encode, and alphabet equal to dutch_spelling.
Decode Dutch spelling words and reject unknown code words
Matching is case-insensitive and treats hyphens, underscores, diacritics, and internal spaces as equivalent, so Quotiënt, Quotient, and Quirinus all decode to Q when those historic aliases are used. Any token that is not a known code word raises invalid_input with an explicit unknown code word message naming the bad token—exactly the contract phone-check and training tools need when a typo would otherwise invent a wrong letter. On success the response returns result as the recovered string, tokens pairing each resolved character with its canonical code word, count, mode decode, and alphabet dutch_spelling. Validation failures are not charged on the prepaid API, so operators can probe bad pastes safely.
API usage, pricing, workflows, and practical limits
Use the prepaid KIT API when a support backend, onboarding bot, carrier portal, or SDK needs the same encode or decode step under balance at $0.002 per successful item; failed validation never consumes balance after the engine rejects the request. Pair this endpoint with uppercase or transliteration tools when identifiers arrive in mixed scripts, but keep the steps separate so each landing page matches a single search intent—NATO Alpha Bravo Charlie is a different page and a different table.
Integration use cases
CI fixtures for NL identifier pipelines
Services that generate spoken Dutch identifiers pin encode and decode goldens—including an unknown-word error—so table drift is caught in continuous integration.
Technical questions
What happens on an unknown code word?
Decode raises invalid_input naming the unknown code word. Validation failures are not charged on the prepaid API.
Is the Dutch spelling alphabet tool free?
The browser widget runs free on your device. API calls use prepaid KIT balance at $0.002 per successful item.
Are digits supported?
Yes. Digits use Dutch words Nul through Negen on encode; decode accepts those words and common aliases such as Zero for 0.