Previous release28 stable releases behind. The latest is 1.13.15.See 1.13.15
JavaScript library · stable
libphonenumber-js 1.12.30
Released 30 Nov 2025. 9 days after 1.12.29. The package is 22 KB larger than 1.12.29.
Install this version
v1.12.30
npm install libphonenumber-js@1.12.30yarn add libphonenumber-js@1.12.30pnpm add libphonenumber-js@1.12.30<script src="https://cdn.jsdelivr.net/npm/libphonenumber-js@1.12.30/bundle/libphonenumber-max.js"></script>At a glance
- Released
- 30 Nov 2025
- Unpacked size
- 9.1 MB
- Files
- 803
- Runtime dependencies
- none
Install 1.12.30
sh
npm install libphonenumber-js@1.12.30sh
yarn add libphonenumber-js@1.12.30sh
pnpm add libphonenumber-js@1.12.30html
<script src="https://cdn.jsdelivr.net/npm/libphonenumber-js@1.12.30/bundle/libphonenumber-max.js"></script>Download
- libphonenumber-js-1.12.30.tgznpm package · 803 files · 9.1 MB unpackedDownload
- Checksumssha512-KxH7uIJFD6+cR6nhdh+wY…
- libphonenumber-min.jsBrowser bundle, min data (smallest) · jsDelivr CDNOpen
- libphonenumber-max.jsBrowser bundle, max data (all number types) · jsDelivr CDNOpen
- libphonenumber-mobile.jsBrowser bundle, mobile numbers only · jsDelivr CDNOpen
- Browse every filejsDelivr file browser for 1.12.30Browse
- v1.12.30 on GitLabReleaseViewSource .zip
We do not host these files. The links go to the official npm registry and public CDNs.
What changed in 1.12.30
- Merged [Endy Gower](https://gitlab.com/endycb)'s [fix](https://gitlab.com/catamphetamine/libphonenumber-js/-/merge_requests/27):
findPhoneNumbersInText()now correctly finds phone numbers that're separated by a/character. Example:651-234-2345/332-445-1234.
Use it in your browser
14 tools built on libphonenumber-js
Each one runs this library in your browser. Nothing you type is uploaded.
- Phone Number ValidatorCheck any phone number, see its country and line type, and copy it as E.164, international or national.
- Phone Number FormatterFormat phone numbers as E.164, international, national or RFC 3966 tel: links. Paste one number or a list.
- E.164 ConverterConvert phone numbers in any style to clean E.164 format for APIs, databases and SMS.
- Phone Number ParserBreak a phone number into country, calling code, national number, extension and line type.
- Bulk Phone ValidatorValidate a list of phone numbers at once and export the valid ones as E.164 or CSV.
- WhatsApp Link GeneratorCreate a wa.me click-to-chat link for any number, with an optional pre-filled message.
- Country Code LookupSearch the international calling code, exit code and trunk prefix of every country.
- Phone Number Length by CountryHow many digits a phone number has in every country, with and without the country code.
- Phone Number Type CheckerCheck whether a number is mobile, landline, VoIP, toll-free or premium rate.
- Phone Number ExtractorPull every phone number out of any text and get a clean E.164 list.
- Phone Number Country CheckerFind out which country a phone number is from, with its flag and calling code.
- Click-to-Call Link GeneratorMake a tel: link and an HTML snippet that starts a call when tapped.
- Phone Number Regex GeneratorCopy a phone number validation regex for any country, with code for JavaScript, Python and PHP.
- libphonenumber-js PlaygroundTry libphonenumber-js online. Type a number and see the exact object it returns, with the code that produces it.
Guides
How to install libphonenumber-jsInstall libphonenumber-js with npm, yarn or a CDN. Compare the min, max and mobile builds with measured bundle sizes, and see TypeScript and import examples.Read the guide libphonenumber-js vs Google libphonenumberHow libphonenumber-js differs from Google's libphonenumber and its ports for Java, Python, PHP, C# and Go. What each one includes and which to pick.Read the guide Format a phone number as the user typesUse the AsYouType class in libphonenumber-js to format phone numbers while typing. Includes a live demo, default country handling and cursor tips.Read the guide