IPQualityScore Phone Validation API vs libphonenumber-js
IPQualityScore Phone Validation API
ipqualityscore.comlibphonenumber-js
github.comSide by side
| Figure | IPQualityScore Phone Validation API | libphonenumber-js |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | Yes | — |
| Open source | — | — |
| Web | Yes | Yes |
| iOS | Yes | — |
| Android | Yes | — |
| API | Yes | Yes |
| Self-hosted | Yes | — |
| Plans published | 3 | 1 |
| Spec score · Phone Number Validation Software | 8.7 (#1) | 7.5 (#15) |
| Purpose | The API validates phone numbers and scores their reputation to help identify suspicious users and invalid information in real time. | A smaller JavaScript/TypeScript rewrite of Google Android’s libphonenumber for parsing and formatting personal phone numbers. |
| Support | Phone-validation support is advertised seven days per week with typical responses within minutes; general contact support says replies usually arrive within hours. | The README says issues can be reported on GitHub or GitLab and gives instructions for reporting behavior differences from Google’s library. |
Plans
IPQualityScore Phone Validation API
- FreeFree
- Phone Validation APIFree
- Phone validation usageFree
In their own words
IPQualityScore Phone Validation API
IPQualityScore Phone Validation API validates phone numbers and scores their reputation to help identify suspicious users and invalid information in real time. It checks syntax, active connection status, carrier, line type, porting, and disconnection status, and analyzes reputation and abusive-behavior history. Coverage includes countries, carriers, and line types such as mobile, landline, VOIP, toll-free, and virtual numbers; detection includes disposable, temporary SMS, and VOIP numbers. Reverse lookups can return a subscriber or business name, with the product page reporting around 90% hit rates for most US and Canadian numbers. Queries return JSON or XML, and users can upload lists through a dashboard for batch processing. Salesforce and HubSpot integrations are listed. The API documentation advises providing at least 10 digits or a valid country for best results with short numbers. The free plan includes 1,000 lookups per month; paid access starts at $99/mo, with volume-tiered rates and no monthly contracts. A free trial is also available. The product page says support is available seven days a week, with typical responses within a few minutes.
libphonenumber-js
libphonenumber-js is a free JavaScript and TypeScript library for parsing and formatting personal phone numbers. It can assess whether a number has a possible length and whether its digits fit phone-number rules. Its “As You Type” formatter handles complete or incomplete number input, and a search function can find full phone numbers, including those with extensions, in text. Developers can select min, max, mobile, or custom metadata to balance supported checks with package size. The README lists a 145 kB full build, consisting of 65 kB of code and 80 kB of metadata, and compares it with 550 kB for Google’s library. The package can be installed through npm or added to a web page with a script tag or npm CDN. It is available under MIT and Apache-2.0 licenses. Its coverage excludes emergency numbers, short codes, alphabetic numbers, and geolocation. The live formatter accepts digits and an initial plus sign, ignores other punctuation, and does not accept extensions as input. Strict digit checks may become stale as numbering plans change; the README suggests considering length-only validation for some applications.