Messaging

Phone number formatter

Reformat any phone number into E.164, international, national and tel: form.

Free, no accountIn your browser

With its country code (+44, +1) or, without one, give the country below.

Two letters, for a number written without its +country code. Ignored when the number starts with +.

Try

Result

Nothing to format yet

Enter a phone number and it is reformatted as you type.

What this is

This phone number formatter takes a number in any common form and shows it in the four formats a system is likely to want - E.164, international, national and RFC 3966's tel: - each with its own copy button, with no claim made about whether the number is valid or what kind of line it is.

A phone number is written differently depending on who is asking: E.164 (+14155552671) is the one format almost every system - an API, a database, a carrier - takes without complaint; international and national are how a person writes it between and inside the number's own country; and RFC 3966's tel: scheme is what a link or a SIP header carries. This tool converts between all four without checking whether the number is actually assigned.

How to read the result

The facts row names the country the number belongs to. Each format below it - E.164, international, national and tel: - has its own copy button, so you can take exactly the one your system needs without retyping or re-escaping it.

Reshaping a number does not confirm it is a real, assigned range on its own, and a malformed number breaks every check further down the line; see sending an SMS that arrives for why that matters before segment pricing, sender-name or A2P checks even start.

Common mistakes

What goes wrong most often, and how to tell.

  • Typing a national number with no country code and no hintA number typed without its +country code can be reshaped into more than one country's formats, depending on which country it belongs to - set the hint below, or start the number with its own +code, so there is only one country to format it for.
  • Assuming a formatted number is a valid oneThis tool reshapes whatever you give it into every common format; it does not check whether the number is a real, assigned range. Use the phone number validator for that.

Questions

What people ask about this tool.

  • No. This tool only reshapes a number into E.164, international, national and tel: form. For a check against real assigned ranges, use the phone number validator.
  • A national number on its own is ambiguous - the same digits can belong to more than one country. A leading + country code carries that information itself; without one, the two-letter country field supplies it.
  • RFC 3966's tel: scheme is what a clickable phone link or a SIP header carries - pasting it as an href lets a phone or softphone dial it directly.
  • No. Everything is reshaped in your browser, against the metadata that shipped with this page itself; nothing you type is ever sent anywhere.

Sources

Every fixed value here comes from the provider’s own documentation. These pages change, so each says the day it was last read.

Use it from the API

The same check, as one request.

Request
curl -X POST https://resellerhq.com/api/tools/phone-number-formatter \
  -H "Content-Type: application/json" \
  -d '{"number":"7911123456","country":""}'
Response
{
  "tool": "phone-number-formatter",
  "input": {
    "number": "7911123456",
    "country": ""
  },
  "result": {
    "verdict": {
      "tone": "danger",
      "headline": "Could not format this number",
      "summary": "No country: start the number with its country code (+44, +1) or give a two-letter country below."
    },
    "findings": [
      {
        "id": "could-not-parse",
        "severity": "fail",
        "title": "Could not read this as a phone number",
        "detail": "No country: start the number with its country code (+44, +1) or give a two-letter country below.",
        "fix": "Start the number with + and its calling code (for example +14155552671), or fill in the two-letter country field below so there is only one country to format it for."
      }
    ],
    "parts": [],
    "limits": [
      "This is the range the number was assigned to, not a live carrier or existence check: it cannot say whether the number is in service, rings, or who carries it today after porting.",
      "Nothing is sent anywhere: the number is parsed in your browser, against metadata that ships with the page.",
      "A country the metadata covers only by length cannot have a type at all, and says so rather than guessing."
    ]
  }
}

Resell phone numbers that receive this kind of message, under your own brand.

Get started

Company names and logos are trademarks of their owners, shown only to identify each service.