numberRank
For developers

Free Twilio Lookup line type intelligence, no API key

If you only need to know whether a number is VoIP or a real carrier line, you do not need an account anywhere. numberRank runs Twilio Lookup's line type intelligence field on every request and returns the result as JSON or plain text, free, with no key, no card and open CORS.

curl "https://numberrank.dev/api/check?number=+15551234567"
{
  "number": "+15551234567",
  "type": "nonFixedVoip",
  "carrier": "Twilio - SMS/MMS-SVR",
  "mcc": "311", "mnc": "950",
  "score": 15, "grade": "F",
  "verdict": { "pass": false, "label": "VoIP", "note": "VoIP numbers are rejected by most OTP and fraud systems." }
}

How it compares

Checked against each provider's own page on 2026-09-16. Prices and tiers change; the links are the source of truth.

OptionLine typeCost to startAuthNotes
numberRankTwilio line type intelligence on every requestFreeNoneOpen CORS, about 20 checks per minute per IP, results cached 30 days. Plain text mode for agents.
Twilio Lookup v2Yes, the same fieldBilled per lookup on your accountAccount SID and tokenThe source. Use it directly when you need volume, other Lookup fields, or your own data residency. Canadian numbers need approval.
Abstract phone validationYes, its own classification100 requests per month free, then a paid planAPI keyIts classification differs from Twilio's. Onvoy ranges that Twilio reads as mobile can read as VoIP here.
API Ninjas validate phoneYesFree tier, non-commercial use onlyAPI keyCommercial use is not permitted on the free tier per its FAQ.

When to use which

Also for agents

The same check is an OpenAPI spec, an MCP server at https://numberrank.dev/mcp with a check_number tool, and a llms.txt that describes the endpoint in a few lines. Add &format=text to get one readable line back.

What we do with your number

It goes to Twilio for the lookup, the result is cached for 30 days, and nothing is sold or shared. Privacy.