All posts

E.164 Phone Number Format: What It Is, With Examples by Country

··4 min read

E.164 is the international standard format for phone numbers: a +, the country code, then the national number, with no spaces, dashes or brackets, and no more than 15 digits in total. A San Francisco number written (415) 555-2671 is +14155552671 in E.164. A London number written 020 7946 0958 is +442079460958. Every SMS API, dialer and CRM import expects this form, because it's the only one that works from anywhere.

The name comes from the ITU-T's Recommendation E.164, the document that defines the international numbering plan and assigns country codes.

The anatomy of an E.164 number

+44 20 7946 0958   →   +442079460958
 │   └─ national significant number (area code + subscriber)
 └─ country code

Three rules:

  1. Starts with + and the country code (1 to 3 digits).
  2. No trunk prefix. The domestic 0 (or 1 in some countries) that you dial inside the country is dropped.
  3. Digits only after the +, maximum 15.

The + stands for "your international dialling prefix", which differs by country (011 from the US, 00 from most of Europe). Writing + instead lets a phone or API substitute the right one.

Examples by country

Each of these was converted with Google's libphonenumber (version 9.0.41):

Country Code As written locally E.164
United States +1 (415) 555-2671 +14155552671
Canada +1 (604) 555-0199 +16045550199
United Kingdom +44 020 7946 0958 +442079460958
United Kingdom (mobile) +44 07911 123456 +447911123456
Australia (mobile) +61 0412 345 678 +61412345678
India (mobile) +91 098765 43210 +919876543210
Germany +49 030 123456 +4930123456
France (mobile) +33 06 12 34 56 78 +33612345678
Brazil (mobile) +55 (11) 91234-5678 +5511912345678
Mexico +52 55 1234 5678 +525512345678
Nigeria (mobile) +234 0803 123 4567 +2348031234567
UAE (mobile) +971 050 123 4567 +971501234567

Notice the pattern: the local 0 disappears in the UK, Australia, India, Germany, France, Nigeria and the UAE. US and Canadian numbers have no trunk zero, so the 10 digits follow +1 directly.

The UK mobile row comes with a quirk: libphonenumber files 07911 123456 under Guernsey (GG), not GB. The UK's Crown Dependencies share +44, and that range is allocated to a Guernsey operator. It's still a valid +44 mobile; it just isn't on the British mainland.

The mistakes that break conversions

Keeping the trunk zero

+4402079460958 is wrong. It's the most common error when people convert UK, Australian or European lists by just sticking +44 on the front. The exception that proves the rule is Italy: Italian landlines keep their leading 0 after +39 (Rome is +39 06 …), so a blanket "strip the zero" rule breaks Italian numbers. A numbering-plan library knows this; a find-and-replace doesn't.

Guessing the country

0412 345 678 is an Australian mobile. 412 345 678 with no context could be anything. When a number has no country code, you have to tell the converter which country to assume, usually the country the list came from. Getting this wrong produces numbers that are valid somewhere else, which is worse than an error.

Leaving formatting characters in

+1 (415) 555-2671 is human-friendly and fine to display, but it isn't E.164. Store the bare digits after +, and format for display separately.

Treating extensions as part of the number

+1 212 555 0100 ext. 204 has no E.164 form for the extension. Keep extensions in a separate field.

Truncation in spreadsheets

Excel and Google Sheets treat +14155552671 as a formula or a number. They drop the + and can turn long numbers into scientific notation. Format the column as text before pasting, or prefix with an apostrophe. Our Google Sheets guide covers this.

E.164 vs other formats

Format Example Use it for
E.164 +14155552671 Storage, APIs, SMS, dialers, deduplication
International +1 415-555-2671 Display to an international audience
National (415) 555-2671 Display to people in the same country
RFC 3966 tel:+1-415-555-2671 Clickable links in web pages

Store E.164, display whatever suits your audience. Two copies of one number in different formats never match each other in a CRM, and that's how lists end up with duplicates.

Converting a whole list to E.164

For more than a few dozen numbers, use a tool that parses each number against the numbering plan rather than editing strings. In SimpleVerifier, upload a CSV with a phone column on the verifier. Every row gets a phone_e164 column, plus phone_country, phone_type and phone_status. Numbers without a country code are read as US numbers, so add the country code to international numbers first. The full workflow is in how to clean phone numbers in a CSV.

Related: how to check if a phone number is valid · US phone number format · UK phone number format

Common questions

What is E.164 format?

E.164 is the ITU-T standard for international phone numbers. Written out, it is a plus sign followed by the country code and the national number with no spaces or punctuation, for example +14155552671. The whole number is at most 15 digits.

Do I keep the leading 0 when converting to E.164?

No, in most countries. The leading 0 in UK, Australian, French or German numbers is a domestic trunk prefix, so 020 7946 0958 becomes +442079460958. Italy is the notable exception: its landline numbers keep the 0 after +39.

Why do SMS and calling APIs require E.164?

Because it is unambiguous. A number in E.164 says which country it belongs to and can be dialled from anywhere. A number like 07911 123456 only makes sense if you already know it is British.

How do I convert a list of phone numbers to E.164?

Parse each number with a numbering-plan library such as libphonenumber, telling it which country to assume for numbers written without a country code, then format the result as E.164. Doing this with find-and-replace breaks on leading zeros and mixed formats. A bulk validator adds an E.164 column to every row.

Verify unlimited addresses for $29.99/month

Real SMTP mailbox checks. No credits, no per-email fees.

Get Started