Phone Number Validity

The term 'validity' in the context of a phone number can encompass several aspects. This guide outlines concepts related to validity and details how Identity Insights addresses each one.

Format Validity

Phone number format validation involves verifying the length and prefix information at various levels to ensure accuracy and compliance with global numbering standards. A valid format refers to a number that can be freely assigned by carriers to users. However, it does not confirm whether the number is currently assigned to a specific carrier, a specific user or is reachable.

Users can specifically request and retrieve format validation details by checking the format.format_valid field.

Identity Insights checks format validity for any phone number passed and in case it can not be parsed into a valid format phone number it will not retrieve the insights requested, except for the Insight Format which purpose is trying to format a phone number.

When determining whether a phone number format is valid, the connection of a call does not always mean the format is valid, especially for global or automated processes. For example:

  • In some countries, dialing extra digits at the end of a phone number may still result in a successful connection, even though additional characters are entered.
  • During periods of renumbering transitions, some operators might "correct" outdated number formats, continuing to connect calls long after the standard format has changed. However, such adjustments are not consistent across regions and are temporary.
  • Phone numbers that are only locally dialable (e.g., a 7-digit number within the U.S.) are not considered valid in a global context. Without the necessary country and area codes, it becomes impossible for systems, such as APIs, to standardize or interpret these numbers properly.

Carrier Assigned Validity

Phone number validity is often interpreted as verifying whether the number is assigned to a carrier, which is a common method for checking the validity of mobile numbers.

Users can request and retrieve carrier assignment information by querying current_carrier for mobile phone numbers and original_carrier for non-mobile numbers. If the network_type or network_code fields are populated, it indicates that a carrier is assigned to the phone number.

Since users typically do not know the network_type beforehand, it is recommended to first check the current_carrier. Optionally, users can also check the original_carrier if they are interested in the carrier assignment for non-mobile numbers.

While this is typically a reliable way to determine if a phone number can be reached, it’s not foolproof, as a number may still be unassigned to a subscriber. If you dial a mobile phone number that hasn’t been assigned to a user, several outcomes may occur depending on the carrier and the country:

  • Unreachable Number Announcement
  • Error Tone
  • Redirect to Carrier Service Line
  • No Response

Reachability

This refers to whether a phone number is currently reachable via voice, SMS, or data services. There are methods in the market for mobile numbers, based on Home Location Register (HLR) data sources, which claim to determine the voice and SMS reachability of a mobile number. However, our experience and analysis show that these methods are generally unreliable, especially in real-time scenarios. Additionally, they often lack clear information about which countries or carriers they are effective for, making their applicability inconsistent.

While we are currently unable to offer accurate real-time reachability, enhancements in this area are on the horizon.

Conclusions

The most basic method, and the first step to take when determining if a phone number is globally reachable, is to validate its format using format.format_valid. That is a necessary condition, but it is not sufficient.

To assess the likelihood of connecting to a mobile phone number, the recommended approach is to check if it is assigned to a carrier by verifying the current_carrier.network_type is mobile.

Even if a mobile phone number has a valid format and is assigned to a carrier, it may still be unreachable. This could occur if the number is not currently assigned to a subscriber or is out of service (e.g., the device is switched off).

Further Reading