Free tool ยท line type
VoIP number checker
Find out what kind of line a phone number belongs to: mobile, landline, VoIP, toll-free, premium rate or shared cost.
What you get
- VoIP numbers from dedicated VoIP ranges
- Mobile, landline, toll-free, premium rate, shared cost, pager
- Valid or invalid for the country
- Country, calling code and all formats
Private by design
The check runs in your browser with Google's libphonenumber data. The numbers you enter are not sent to our servers or stored.
Building this into an app? Use the Carrier and line type lookup API and its validate endpoint documentation.
Line types explained
| Line type | What it means |
|---|---|
| Mobile | A number issued to a mobile network. Receives calls and SMS. |
| Landline | A fixed-line number tied to a geographic area. |
| Landline or mobile | Shared ranges (US, Canada and others); the number alone does not tell. |
| VoIP | A number from a range reserved for internet telephony. |
| Toll-free | Free for the caller, e.g. 0800 or 1-800. |
| Premium rate | Costs the caller extra, e.g. 0900. |
| Shared cost | Cost split between caller and receiver. |
Detecting VoIP numbers at scale
The free checker covers numbers from VoIP-specific ranges, and so does the API: its number_type field is voip for numbers from those ranges. To check every sign-up automatically, call the numlookupapi API in your sign-up flow and use line_type and number_type to decide whether a number is mobile, landline, VoIP or something else. VoIP services that hand out ordinary landline or mobile numbers cannot be detected from the number.
Frequently asked questions
How can I tell if a number is VoIP?
Why do businesses check for VoIP numbers?
What does 'landline or mobile' mean?
Can text messages be sent to VoIP numbers?
Phone number API
Validate numbers like this in your app
numlookupapi checks any phone number worldwide in one request and returns validity, line type, carrier, location and every standard format as JSON.
Read the documentation100 free requests every month. No credit card required.
GET https://api.numlookupapi.com/v1/validate/+12069220880
{
"valid": true,
"number": "12069220880",
"local_format": "2069220880",
"international_format": "+12069220880",
"country_prefix": "+1",
"country_code": "US",
"country_name": "United States of America",
"location": "Seattle",
"line_type": "landline",
"e164_format": "+12069220880",
"national_format": "(206) 922-0880"
}