Suggestions appear as you type. Use the up and down arrows to choose one and Enter to open it.

This page's audience our own tag's counts — open to see them
–Visits
–Page views
–Clicks to vendors
–Time on page
–Reading now
Clicks to vendors, by tool
  • –
Top countries
  • –
Devices
  • –

– · visits, page views and clicks counted by our own tag, which counts more than our checked analytics; every figure rounded down · how we count

libphonenumber-js

Free#25 of 25 in Phone Number Validation Software

libphonenumber-js: A focused open-source choice for validating phone numbers in web forms. Ranked #25 of 25 in Phone Number Validation Software by our editors (6.8/10); pricing: Free plan; best for open-source web form validation.

6.8/10Editor score
libphonenumber-js6.8 Visit site

At a glance

  • Editor score
    6.8 / 10
  • Pricing
    Free plan
  • Best for
    Open-source web form validation
  • Free plan
    Yes
  • Paid from
    Free
  • Validation modes
    Api
  • Facts checked
    20 Sep 2026
libphonenumber-js screenshot
  • Where it wins

    • Parses, formats, and validates complete phone numbers
    • Formats numbers as users type and detects phone-number types
    • Supports selectable or custom metadata sets and TypeScript definitions
  • Where it doesn't

    • No live carrier lookup or carrier data
    • No bulk validation workflows or paid plans
    • Web-focused library rather than a hosted validation service

Our verdict on libphonenumber-js

libphonenumber-js is an open-source JavaScript/TypeScript library for developers building web forms and other web experiences that handle personal phone numbers. It provides functions to parse complete numbers, check possible and valid numbers, validate length and digits, and format numbers nationally or internationally. It can also find complete phone numbers in text, format input as users type, and provide TypeScript definitions. The package is distributed through npm and can also be included directly in web pages.

Its strongest fit is developer-controlled form validation. As-you-type formatting can help structure input while a user enters a number, while selectable or custom metadata sets give teams control over the information included in the package. With maximum metadata, the library can detect phone-number types. This makes it suitable for web applications that need local parsing, formatting, and validation logic without adopting a hosted service. The open-source model also keeps the core library available without a paid tier.

The scope is deliberately narrower than a full phone-validation platform. libphonenumber-js does not provide live carrier lookup, carrier data, bulk-upload workflows, or paid plans. It is also focused on web use rather than broader platform coverage. Choose it when your team wants an open-source JavaScript/TypeScript library for client-side or application-level phone-number handling and can manage the surrounding application workflow. Consider another option when you need carrier verification, bulk validation, or a hosted service with broader operational features.

Your product? Our editors can test libphonenumber-js in depth and publish a review, labelled as paid · from $149/mo →

libphonenumber-js pricing

Plans Free planFree Free to use — no paid tier required for the core job.
See plans on github.com

libphonenumber-js fact sheet

Free planYes
Paid fromFree
Validation modesApi
Line type dataYes
Carrier dataNo
Reachability dataYes
Bulk validationNo
Monthly lookup limitNot verified
DeploymentCloud
PlatformsWeb
SupportDocs
Built forSolo, Small business, Mid-market, Enterprise (editorial estimate)
PricingFree plan
Websitegithub.com
Facts checked20 Sep 2026

Alternatives to libphonenumber-js

See all libphonenumber-js alternatives →

Used libphonenumber-js? Be the first to review it

The editor score above is our own research. What this page doesn't have yet is a reader's view — what you used libphonenumber-js for, what worked and what didn't. No stars are seeded and no review is paid for; an editor reads every one before it appears.

Write a reviewTwo minutes · verified accounts only · read by an editor before it appears

Reviews come only from verified accounts. Sign in or create an account first — your e-mail is never shown.

Your rating

0 characters · at least 80, up to 3,000

Posted from your verified account. Reviews appear after an editor reads them, usually within two working days.

Featured on iTechGuides

Featured on iTechGuides — libphonenumber-js 6.8/10

libphonenumber-js is listed in our Phone Number Validation Software directory. Add the badge to your site — it links back to this page.

<a href="https://www.itechguides.com/products/libphonenumber-js/"><img src="https://www.itechguides.com/best/badge/libphonenumber-js.svg" alt="Featured on iTechGuides" width="230" height="46"></a>

Reviewed by iTechGuides Editors · Editorial team · Updated Oct 2026

Advertiser disclosure: iTechGuides is reader-supported. Vendors can pay for top positions in our rankings and for a place on other products' pages, and we may earn a commission when you click some links. Bought places stand at the number bought; this page and our disclosure say so. Paying vendors may get a fuller, more detailed review from our editors, and that review can change their score. How we rank.

Last updated · How we research and update