Phone Number Validator
Check whether a phone number is real and dialable for its country. Reports valid/invalid, the line type (mobile, fixed line, toll free, VoIP, premium rate...), and — when invalid — the reason (too short, too long, unrecognized country code, bad area code/prefix).
Input
Used when the phone number doesn't include a country code
Output
| Property | Value |
|---|---|
| No data yet | |
Guides
Not every string of digits that looks like a phone number is one. This tool checks whether a phone number is actually valid and dialable for its country — matching a real numbering plan, not just "the right number of digits" — and tells you what kind of line it is (mobile, fixed line, toll free, VoIP, premium rate...) or, if it's invalid, exactly why. Everything runs locally in your browser; nothing you type is uploaded anywhere.
How to use it
- Type or paste a phone number into the Phone Number field (or load the built-in example).
- If the number doesn't already start with a
+and a country code, pick the Default Country it should be checked against — a bare5551234567only makes sense once you know which country's numbering plan to test it against. - The result table updates instantly with the verdict, the reason (for invalid numbers), the line type, and the detected country.
Need to check many numbers at once? Switch to the Batch tab, drop in a
.txt file with one number per line, and download the results (including a
zip of every file) — no need to check them one by one.
What each row means
- Valid — the definitive check: does this number match a real, assigned pattern in its country's numbering plan? A number can look plausible and still be invalid (wrong area code, unassigned prefix).
- Reason — for invalid numbers, why it failed: too short, too long, an unrecognized country code, or a right-length number whose area code/prefix doesn't exist. Reads "—" for valid numbers.
- Number Type — mobile, fixed line, toll free, VoIP, premium rate, and so on, where the country's numbering plan makes that distinction knowable from the number alone. Only shown for valid numbers.
- Country / Country Calling Code — the country the number belongs to and its dialing prefix, inferred from the number itself or your chosen default country.
- Possible Number — a looser check than Valid: is the digit count and prefix plausible, even if the exact assigned range isn't confirmed? A number can be possible without being valid (right length, wrong area code) — see Reason for what specifically is wrong.
- E.164 Format — the compact, unambiguous international format
(
+14155552671), shown even for invalid numbers so you can see exactly what was parsed.
Why does a bare 10-digit number need a "Default Country"?
Phone numbers are only unambiguous with their country code attached.
5551234567 could be a complete US number or ten meaningless digits under a
different country's numbering plan. The Default Country tells the validator
which numbering plan to check the digits against when the input doesn't
already carry a + and country code.
"Valid" vs. "Possible" — what's the difference?
Possible only checks that the digit count and prefix fall within the
plausible range for a country — it can't tell a real area code from a
made-up one of the right length. Valid checks the number against the
actual assigned ranges, so +1 511 555 0100 is possible (11 digits, right
shape for a US number) but not valid (511 is not a real US area code). A
valid number is always possible; the reverse isn't true.
Validating vs. formatting vs. extracting vs. generating
This tool answers one question: is this number real and usable? If you
already have a valid number and want it converted between formats (E.164,
national, international, tel: URI), use the Phone Number Parser &
Formatter instead. Need to pull numbers out of a block of text? Try the
Phone Number Extractor. Need throwaway numbers for testing forms? Try the
Phone Number Generator.
Is my data private?
Yes. Validation happens locally in your browser — the number you enter is never sent to a server or stored.