The best phone number validation API depends on what you need to know about a number: whether it is formatted correctly (free, with Google’s libphonenumber), whether it exists in its country’s numbering plan, who the carrier is and whether it is a mobile, landline or VoIP number (a validation API), or whether the phone is reachable right now (an HLR lookup). This comparison covers seven options, numlookupapi, Twilio Lookup, Vonage Number Insight, Abstract, Numverify, Telesign Phone ID and libphonenumber, with what they return, their free tiers and their prices.
We publish numlookupapi, so we are not neutral. Every price and limit below comes from the provider’s own pricing page or documentation, read in October 2026. Prices are list prices without taxes.
Quick comparison
| Option | Returns | Free tier | Paid pricing |
|---|---|---|---|
| numlookupapi | Validity, carrier, line type, number type (incl. VoIP), location, time zones, all formats; batch of 100; HLR on paid plans | 250 requests a month for testing and personal projects, batch included, no credit card | Flat monthly plans: $9.99 for 5,000, $49.99 for 50,000, $109.99 for 250,000, $179.99 for 500,000 |
| Twilio Lookup v2 | Free: validity and formats. Paid packages: line type, caller name (US), line status, SIM swap, identity match and more | Basic Lookup (validity, formatting) is free | Per request and package: Line Type Intelligence $0.008, Caller Name $0.01 |
| Vonage Number Insight | Basic: country and formats. Standard: number type and current carrier. Advanced: adds roaming and reachability | Basic is free | Per request; being replaced by Vonage Identity Insights (Number Insight ends February 4, 2027) |
| Abstract Phone Validation | Validity, carrier, line type, location | 100 free requests, no credit card | Starter: $19 a month for 5,000 |
| Numverify | Validity, formats, country, location, carrier, line type | 100 requests a month, non-commercial | Basic: $14.99 a month for 5,000 |
| Telesign Phone ID | Phone type, carrier, location, numbering details, blocklisting | Not stated | Per transaction, on Telesign’s pricing page |
| libphonenumber (Google, open source) | Validity by number range, type by range, formats, original carrier outside North America | Free, offline (Apache 2.0) | Free |
What “phone validation” can mean
| Level | Answers | Who offers it |
|---|---|---|
| Format | Is this shaped like a phone number? What is its E.164 form? | libphonenumber, every API |
| Numbering plan | Can this number exist in its country? Mobile or landline range? | libphonenumber, every API |
| Carrier and line type | Which network was the number assigned to? Mobile, landline, VoIP, toll-free? | numlookupapi, Twilio (paid package), Vonage Standard, Abstract, Numverify, Telesign |
| Live network status (HLR) | Is the phone reachable now? Was the number ported? Is it roaming? | numlookupapi (hlr=1, paid plans), Twilio Line Status, Vonage Advanced |
Most sign-up forms need the first three levels. The live status matters before sending SMS to old lists and for fraud checks.
How to choose
- Only formats and typos? Use libphonenumber (or the free phone number validator for single numbers); no API needed.
- Carrier and line type at a predictable monthly cost? A flat-rate plan such as numlookupapi’s keeps the price per lookup fixed, with carrier and line type included in every request.
- Already on Twilio or Vonage for SMS? Their lookup products add per-request costs but keep everything on one bill. On Vonage, plan the move from Number Insight to Identity Insights.
- Validating lists? Use a batch endpoint: numlookupapi validates 100 numbers per request and bills identical numbers in a batch once.
- Need to know whether a mobile number is live? Look for an HLR or line status product, priced per lookup on top of validation.
What 5,000 lookups cost
Carrier and line type for 5,000 numbers a month, at list prices as of October 2026:
| Provider | Plan or price | Cost for 5,000 |
|---|---|---|
| numlookupapi | Basic plan | $9.99 |
| Numverify | Basic plan | $14.99 |
| Abstract | Starter plan | $19 |
| Twilio | Line Type Intelligence, $0.008 per request | $40 |
| Vonage | Identity Insights current carrier, $0.00819 per request | about $41 |
At 50,000 lookups, numlookupapi’s Pro plan costs $49.99 and Twilio’s Line Type Intelligence $400. Flat plans have a monthly quota: compare the plan that fits your volume, and check what the provider does when you go over it.
The options in detail
numlookupapi
A JSON API: one request returns validity, carrier, line type, number_type (which marks VoIP numbers and the landline_or_mobile ranges of the US and Canada), location, time zones and the number in E.164, national, international and RFC 3966 formats. POST /v1/validate takes 100 numbers per request, and the dashboard validates uploaded CSV, TXT and Excel files. On paid plans, hlr=1 adds the live network status of a mobile number (reachable, ported, current carrier, roaming) for 20 extra requests per answered lookup. The free plan is for testing and personal projects; commercial use starts with Basic. Pricing, documentation.
Twilio Lookup v2
Basic Lookup is free and returns whether a number is valid (valid, validation_errors) and its formats. Everything else is a paid package billed per request: Line Type Intelligence ($0.008), Caller Name ($0.01, US only), Identity Match, Line Status, Reassigned Number (US only), and SIM Swap and Call Forwarding in private beta. Good if you already send SMS through Twilio. Our numlookupapi vs Twilio Lookup page compares the two in detail.
Vonage Number Insight
Three levels: Basic (free; country and formats), Standard (number type and current carrier for mobile numbers) and Advanced (adds roaming and reachability). Vonage has announced that Number Insight ends on February 4, 2027, and points to its Identity Insights API, which prices number formatting at no cost, the original carrier at $0.00117 and the current carrier at $0.00819 per request.
Abstract Phone Validation
Returns validity, carrier, line type and location. The free tier starts with 100 requests without a credit card; Starter costs $19 a month for 5,000 requests ($17 a month billed yearly). Phone risk and registration data are on the higher plans.
Numverify
From apilayer. Returns validity, local and international formats, country, location, carrier and line type. The free plan has 100 requests a month and is for non-commercial use; Basic costs $14.99 a month for 5,000 requests.
Telesign Phone ID
Telesign’s Phone ID returns the phone type, carrier, location, numbering details and blocklisting information. Telesign publishes per-transaction prices on its identity pricing page.
libphonenumber
Google’s open-source library (Apache 2.0; release 9.0.42 in October 2026) with ports for JavaScript, Python, PHP and other languages. It validates length and prefix against every country’s numbering plan, tells mobile from landline ranges, formats numbers and maps number blocks to the carrier they were originally assigned to. Its documentation says it does not provide the current carrier, and in our test with the Python port it returned no carrier for a US number. Our tutorials show it in JavaScript, Python and PHP.
numlookupapi in one request
curl -H "apikey: YOUR-API-KEY" "https://api.numlookupapi.com/v1/validate/+14158586273"
{
"valid": true,
"number": "14158586273",
"local_format": "4158586273",
"international_format": "+14158586273",
"country_prefix": "+1",
"country_code": "US",
"country_name": "United States of America",
"location": "Novato",
"carrier": "AT&T Mobility LLC",
"line_type": "mobile",
"e164_format": "+14158586273",
"national_format": "(415) 858-6273",
"rfc3966_format": "tel:+1-415-858-6273",
"possible": true,
"number_type": "landline_or_mobile",
"timezones": ["America/Los_Angeles"]
}
A number that is not in use returns HTTP 200 with "valid": false, so check that field rather than the status code. Start with 250 free requests a month or compare the plans.