Rate this page:

E.164 is the international telephone numbering plan that ensures each device on the PSTN has globally unique number.

This number allows phone calls and text messages can be correctly routed to individual phones in different countries. E.164 numbers are formatted [+] [country code] [subscriber number including area code] and can have a maximum of fifteen digits.

Examples of E.164 Numbers

E.164 Format

Country Code


Subscriber Number













Processing international phone number input fields with a country code

international phone number input
phone number input translated to e.164 format

Learn more about how to build international phone number input in HTML and JavaScript on the Twilio blog, including how to transform the phone number input into E.164 format.

How to Validate a Phone Number

A simple and robust way to validate phone numbers is to use the Twilio Lookup API to perform phone number validation and formatting without the need for RegEx. You can also find international telephone input and validation in the Twilio Code Exchange.

invalid phone number validation

Reasons to programmatically verify that a string is in a valid E.164 phone number include:

  • Preventing fraud when capturing a user’s phone number in a form
  • Ensuring deliverability when sending a Twilio SMS or voice call
  • Validating previously collected phone numbers in a database

RegEx Matching for E.164

According to the official ITU E.164 recommendation the format must be a number up to fifteen digits in length starting with a ‘+’. You can also exclude 0 as the first character since there are no country codes that start with 0. Here is a sample regular expression:


However, this will also match numbers that are not a valid phone number. We recommend using the Twilio Lookup API for comprehensive phone number validation.

Rate this page:

Thank you for your feedback!

Please select the reason(s) for your feedback. The additional information you provide helps us improve our documentation:

Sending your feedback...
🎉 Thank you for your feedback!
Something went wrong. Please try again.

Thanks for your feedback!