Twilio strongly encourages E.164 number formatting for all phone numbers both in the ‘to’ and ‘from’ fields. This format is the internationally-standardized format for all phone numbers, and it includes all the relevant information to route calls and SMS messages globally. E.164 numbers can have a maximum of fifteen digits and are usually written as follows: [+][country code][subscriber number including area code]. Phone numbers that are not formatted in E.164 may work, but it depends on the phone or handset that is being used as well as the carrier from which the call or SMS is being originated. A good reference to find a country’s calling code is this Wikipedia page that lists countries and their calling codes.
Dialing using Twilio is a little different than dialing from your personal phone. When dialing from your personal phone from the United States to the Great Britain, for example, you usually have to dial the international call prefix (011) before dialing the country calling code of +44. When using Twilio to dial or send messages, you will not need to enter the international call prefix for E.164.
For example, to convert a US phone number like 415 555 2671 to E.164 format, you need to add the ‘+’ prefix and the country code (which is 1) in front of the number so it will look like +14155552671. In the UK, and many other countries internationally, local dialing requires the addition of a '0' in front of the subscriber number. However, to use E.164 formatting, this '0' must be removed. A number such as 020 7183 8750 in the UK would be formatted as +442071838750.
A great tool to make sure that your number is valid is the free online Twilio Lookup tool. This simple tool will help validate any phone number to make sure it is correctly formatted to send or receive calls as well as other details such as carriers. Additionally, the Lookup Tool is also available as a part of Twilio’s API (which will incur a cost). Learn more about the Lookup API here.