FormatterHQ

Phone Number Validator & Formatter

Paste phone numbers one per line to check they are valid for their country and get E.164, international, national and tel: URI formats, with mobile or landline detection.

Input TEXT
Output TEXT
Ready.

How to use the Phone Number Validator & Formatter

  1. Paste one phone number per line, in any common style such as (415) 555-2671 or +44 20 7946 0958.
  2. Pick a Default country for numbers written without a + code, or choose Detect from +code.
  3. Click Validate & format (results also update as you type).
  4. Copy the E.164, international or national format you need from the results.

Phone Number Validator and Formatter for 240+ Regions

This phone number validator checks each number against the numbering plan of its country, then rewrites it in the formats you actually need: E.164 for databases and SMS APIs, international for display, national for local users, and an RFC 3966 tel: URI for links. It also reports the country, calling code and line type, and handles up to 500 numbers in one go.

What does "valid" mean for a phone number?

Validation here uses libphonenumber metadata, the numbering-plan data that originated with Google's phone library. A number is valid when its length and leading digits fall inside a range the country has assigned, for example a UK geographic block or an Indian mobile prefix. There are three possible results:

  • Valid: the right length and inside an assigned range.
  • Invalid (right length, but not an assigned range): it looks plausible but the prefix is not in use.
  • Invalid (wrong length for this country): too many or too few digits.

Keep in mind that valid does not mean reachable. The check cannot tell whether a number is connected, who owns it, or whether it has been ported to another carrier. To confirm ownership you still need a verification code sent by SMS or a call.

Example

With the default country set to United States, these inputs:

(415) 555-2671
+91 98765 43210
555-1234

produce (abridged):

(415) 555-2671
  ✔ Valid
  Country:        US (United States), calling code +1
  Type:           landline or mobile
  E.164:          +14155552671
  National:       (415) 555-2671
  RFC 3966 URI:   tel:+14155552671

+91 98765 43210
  ✔ Valid
  Country:        IN (India), calling code +91
  Type:           mobile
  E.164:          +919876543210
  National:       098765 43210

555-1234
  ✘ Invalid (wrong length for this country)

The last line fails because US numbers need a three-digit area code. North American numbers are reported as "landline or mobile" because their ranges do not separate the two, while countries like India and the UK use distinct mobile prefixes.

Options explained

Default country only applies to numbers written in national format, without a leading +. A number such as +49 30 901820 is always parsed as German, whatever the default is. If you choose Detect from +code, national numbers cannot be placed and report "unknown country", which is a quick way to find entries in a list that are missing their country code.

Extensions written as ext. 204 or x204 are recognized and shown on their own line, so they do not break the main number.

Why store numbers in E.164?

E.164 is the international standard form: a plus sign, the country calling code and the subscriber number, with no spaces or punctuation and at most 15 digits. Storing that single canonical form makes duplicates easy to spot, sorts cleanly, and is what SMS and voice APIs such as Twilio expect. Format for display only at the edges, using the international or national version this tool produces.

Common errors and fixes

  • A leading 0 plus a country code. People often write +44 (0)20…. The trunk prefix 0 is dropped in international form, and the parser handles this for you.
  • The international dialing prefix. 00 (Europe) or 011 (North America) replace the plus sign when dialing abroad. Rewrite them as + before storing.
  • Letters in vanity numbers. A number like 1-800-FLOWERS is not translated; letters are dropped and it fails as too short. Enter the keypad digits instead.
  • Fictional numbers. Many 555 numbers are reserved for film and TV, but the validator reports on numbering-plan rules, not on whether a line is in service.

Cleaning a whole contact export? Deduplicate it with remove duplicate lines after formatting everything to E.164, and check the email column with the email validator.

Privacy

Parsing and validation run entirely in your browser using a bundled copy of the metadata. The numbers you paste are never uploaded or stored.

Frequently asked questions

What is E.164 format?
E.164 is the ITU standard for international phone numbers: a plus sign, the country calling code and the national number with no spaces, dashes or parentheses, up to 15 digits in total. For example, (415) 555-2671 in the US becomes +14155552671. It is the safest format to store in a database.
Can this tool tell if a phone number is active?
No. It checks that the number follows its country's numbering plan, which catches typos and wrong lengths. Whether the line is in service, and who owns it, can only be confirmed by calling or sending a verification code.
Why is a US number shown as "landline or mobile"?
In the North American Numbering Plan, mobile and landline numbers share the same area codes and exchanges, so the number alone cannot reveal the line type. Many other countries reserve specific prefixes for mobiles, so their numbers get a definite type.
How do I validate numbers from different countries in one list?
Write each number with its + country code and it will be parsed correctly regardless of the default country setting. The default only applies to numbers written in local format without a plus sign.
Why does a number with the right number of digits still fail?
Countries only assign certain prefixes. A number can have the correct length but start with digits that are not allocated to any operator, in which case the result says it is the right length but not an assigned range.

Last updated October 3, 2026

Related tools

Credit Card Validator Check credit card numbers with the Luhn algorithm, detect Visa, Mastercard, Amex and more, and verify length. Runs 100% locally. CSS Validator Validate CSS online: find unclosed braces, missing semicolons and other syntax errors. Email Address Validator Check email address syntax in bulk and flag typos in popular domains, disposable providers, role accounts and duplicates. HTML Validator Validate HTML markup online and find unclosed, mismatched or malformed tags. IBAN Validator Validate IBANs for 80+ countries with the MOD-97 checksum and country length rules, and see bank code and account parts. ISBN Validator & Converter Validate ISBN-10 and ISBN-13 check digits and convert between the two formats, one or many at a time. TOML Validator Validate TOML files online against the TOML 1.0 spec. Find syntax errors by line and column and see the parsed data as JSON. UUID Validator & Decoder Validate UUIDs/GUIDs and decode version, variant and embedded timestamps for v1, v6 and v7 — many at once. JavaScript Validator Check JavaScript for syntax errors online and find the exact line and column of each problem. API Tester (REST Client) Send GET, POST, PUT, PATCH and DELETE requests to REST APIs from your browser and inspect status, headers and pretty-printed JSON. Area Chart Maker Create area charts online from CSV or JSON data: filled line graphs with multiple series, smooth curves and SVG export. ASN.1 Decoder Parse DER/BER ASN.1 structures from PEM, Base64 or hex into a readable tree with OID names, strings, times and integers.