Phone number validator and formatter
Validate phone numbers online for any country, one at a time or as a pasted list, right in your browser so full numbers are never uploaded.
Every row is checked in this tab, and full numbers are never uploaded.
Start with + and the country code, or choose a country for local numbers.
This phone validator runs in your browser on Google's open numbering data. You get a verdict with the reason, the line type, the country and four formats to copy.
Is this phone number valid? What the check covers
A valid phone number format has a known country code, the right length and digits that fit the country's numbering plan. Mobile number validation also reads the line type from the range, so in most cases you can tell a UK or Indian mobile from a landline.
| Number entered | Verdict | Why |
|---|---|---|
| +44 20 7946 0123 | Valid phone number | Fits a London landline range, so the type reads Landline |
| +1 212 555 0123 | Valid phone number | Fits a New York range. US ranges mix mobiles and landlines, so the type reads Landline or mobile |
| 020 7946 012 (UK) | Possible | Right length for some UK numbers, but no range matches. Usually a missing digit |
| 123-456-7890 (US) | Possible | Ten digits, but no US or Canadian area code starts with 1 |
| +44 20 7946 01234 | Invalid: too long | More digits than any UK number has |
| 555-0123 (US) | Invalid: too short | A US number needs its three-digit area code |
| +999 123 4567 | Invalid: unknown country code | No country uses +999 |
Treat Possible as a fail. As a fake phone number checker, the validator flags made-up numbers like 123-456-7890, but a wrong digit that lands in another real range still passes. Both Valid rows are fiction numbers, so Valid can't tell you if this is a real phone number someone answers.
Phone number formatter: E.164, international and national
Paste a number in any style and the phone number formatter returns the E.164 phone number format your contact list or SMS tool expects, plus the international and national versions. The US, UK, French and German examples come from ranges kept for fiction, and the others are the numbering data's own samples.
| Country | E.164 | International | National |
|---|---|---|---|
| United States Part of the 555-0100 to 555-0199 block, reserved for fiction. | +12125550123 | +1 212 555 0123 | (212) 555-0123 |
| United Kingdom London landline from Ofcom's TV and radio drama range. The 0 drops after +44. | +442079460123 | +44 20 7946 0123 | 020 7946 0123 |
| Germany Mobile from the Bundesnetzagentur's range for film and TV. German numbers vary in length, so a fixed digit count fails. | +491713920012 | +49 171 3920012 | 0171 3920012 |
| France Landline from ARCEP's range for films and TV shows. The 0 drops after +33. | +33199001234 | +33 1 99 00 12 34 | 01 99 00 12 34 |
| India Mobile sample. Ten digits after +91. | +918123456789 | +91 81234 56789 | 081234 56789 |
| Mexico Sample number. Ten digits for mobiles and landlines, with no extra 1 after +52 since August 2019. | +522221234567 | +52 222 123 4567 | 222 123 4567 |
| Brazil Mobile sample. 11 is the São Paulo area code (DDD). | +5511961234567 | +55 11 96123 4567 | (11) 96123-4567 |
| Japan Mobile sample. The leading 0 drops after +81. | +819012345678 | +81 90 1234 5678 | 090-1234-5678 |
How to write a phone number in international format
Here is how to write a phone number with country code, using a valid phone number example from London. The international phone number format works the same way almost everywhere.
Do
- Start with + and the country code, such as +44 for the UK.
- Drop the 0 used only for calls inside the country, so 020 7946 0123 becomes +44 20 7946 0123.
- Keep the 0 on Italian landlines, where it belongs to the number, so Rome's 06 stays after +39.
- Remove the spaces, as in +442079460123, when a form, CRM or SMS tool asks for E.164.
Don't
- Don't save 020 7946 0123 without +44. It only works for calls made inside the UK.
- Don't write +44 (0)20 7946 0123. Some forms reject the (0).
- Don't store exit codes such as 0044 or 011 44. The + stands in for them wherever the caller is.
Bulk phone number validator for lists and CRMs
Paste a column from a spreadsheet or CRM export and the bulk phone number validator checks every row without uploading your list.
Paste any style
One number per line, brackets and dashes allowed. Rows without a + use the country you pick.
A verdict per row
Valid phone number, Possible or Invalid, with the reason, line type, country and E.164 form.
Export CSV or copy
Re-import clean E.164 into your contact list. Once every row is in E.164, duplicates typed in different styles match.
Fix before you send
Possible and Invalid rows point to typos, missing country codes or junk sign-ups. Clean them before an SMS or call campaign.
Phone number validation for developers: why regex isn't enough
Phone number validation needs rules for each country's prefixes, range lengths and mobile ranges. A phone number validation regex only checks the shape, so parse with a numbering-plan library and store the E.164 string.
import { parsePhoneNumberFromString } from 'libphonenumber-js/max'
const phone = parsePhoneNumberFromString('020 7946 0123', 'GB')
phone.isValid() // true
phone.getType() // 'FIXED_LINE'
phone.number // '+442079460123' (E.164)
phone.formatInternational() // '+44 20 7946 0123'
phone.getURI() // 'tel:+442079460123'
// A typical regex accepts a number the plan rejects
/^\+?1?\d{10}$/.test('1234567890') // true
parsePhoneNumberFromString('1234567890', 'US').isValid() // falseThis page runs libphonenumber-js with its max metadata, built on Google's open libphonenumber data (v9.0.40). The smaller min build checks length only.
Questions people ask
What is E.164 format?
E.164 is the ITU-T standard for international phone numbers. In E.164 format a number starts with +, then the country code and the national number, with no spaces or domestic prefix and at most 15 digits, as in +442079460123. Each number has exactly one E.164 form, which is why CRMs and SMS platforms store numbers this way.
What is the correct US phone number format?
In the US it's (212) 555-0123, with a three-digit area code, a three-digit exchange and a four-digit line number. Internationally it's +1 212 555 0123, and in E.164 it's +12125550123. Regular US ranges don't separate mobiles from landlines, so the validator shows Landline or mobile for them, and VoIP numbers look the same. Toll-free numbers such as 800 numbers show Toll-free.
How do I check if a phone number is real?
Call it or send it a one-time code, because the digits alone only show whether a number can exist. Run it through the validator first to catch typos and made-up numbers. Possible or Invalid means it breaks its country's numbering plan, so it almost certainly won't connect unless the range is brand new. Valid means it fits the plan. To see its country, and often the city for landlines, check where a phone number is from. If it called you unexpectedly, check a number for scam red flags.
Can I verify a phone number without sending a text?
Partly. You can verify a phone number for free with no text sent, but only its format, length, range, line type and country. The validator can't show whether the line works or who holds it. That takes a one-time code by SMS or call, or a network (HLR) lookup through a messaging provider, which covers mobiles only. For UK, Indian and European mobiles you can also check which carrier a number belongs to and see the network that first held the range.
What does a UK phone number format look like?
A UK number looks like 020 7946 0123 inside the UK and +44 20 7946 0123 from abroad, where the leading 0 drops. Mobiles start with 07 and are written like 07xxx xxxxxx. Most UK numbers have 10 digits after the 0. For forms and contact lists, the E.164 version of that London number is +442079460123.
Can a valid number be disconnected or out of service?
Yes. Valid only means the number fits its country's numbering plan. Lines get canceled and numbers get reassigned, and numbering data can't see that. To check if a phone number is active, call it or send a one-time code. Mobiles can also be looked up on their network through an SMS provider.
Why does a form keep saying 'please enter a valid phone number'?
The usual causes are a missing country code, a 0 kept after it as in +44 (0)20, characters the form won't accept, or a country it doesn't expect. Paste the number into the phone validator above. If the verdict reads Valid phone number, give the form the E.164 version. If the form still refuses, its own pattern is probably too strict.
Is this phone number validation tool free and private?
Yes. The single and bulk checks on this page are free and run in your browser, so the full numbers you type or paste are never uploaded. They use open numbering data covering 245 countries and territories, and results stay in this tab until you copy them or download the CSV.
Validate a phone number before you save it
Paste one number or a whole column into the phone validator and copy back clean E.164.
Validate a number