Phone Number Extractor

Paste text or upload a file and this tool scans for phone-number-like sequences, handling spaces, dashes, dots, parentheses, and leading country codes, then deduplicates them by their underlying digits. Optionally run a best-effort E.164 normalization pass: numbers that already include a country code are cleaned up as-is, and numbers without one get a default country calling code you choose prefixed to them. Everything runs in your browser, which matters since phone numbers pulled from logs or support tickets are often sensitive.

PrivateFreeWorks offline

Reviewed by Vincenzo Manto, Founder & Lead Developer · Last updated September 27, 2026

How it works

  1. 1

    Paste text into the box, or drop/upload a .txt or .log file.

  2. 2

    The tool scans for digit sequences that look like phone numbers, allowing common separators and an optional leading country code.

  3. 3

    Matches are deduplicated by comparing their digits, ignoring formatting differences.

  4. 4

    Optionally enable E.164 normalization and pick a default country code, then copy or download the results.

Pulling phone numbers out of messy text

Phone numbers show up in dozens of inconsistent formats across contact exports, scraped web pages, and support logs. This tool handles the common separator styles in one pass so you don't have to write a regex yourself, and gives you a deduplicated list you can act on immediately.

Why E.164 normalization is labeled best-effort

E.164 (the +[country code][number] format used by telecom systems) requires knowing exactly which digits form the country code versus the local number - information that plain text alone doesn't reliably provide. This tool's normalization pass is a practical starting point, not a guarantee, and results should be spot-checked, especially for numbers pulled from mixed international sources.

Safe for sensitive sources like server logs

Because the whole process runs in your browser with no network calls, it's safe to paste server logs, support tickets, or CRM exports that contain real customer phone numbers without that data ever leaving your machine.

Frequently asked questions

Does this tool upload my text or file anywhere?

No. Extraction and normalization run in your browser with JavaScript, so nothing is sent to a server.

What formats of phone numbers does it recognize?

Sequences using spaces, dashes, dots, or parentheses as separators, with an optional leading + and country code, as long as the total digit count falls within a realistic phone number length (roughly 7 to 15 digits). This intentionally excludes short numeric runs like years, prices, or IDs.

How exact is the E.164 normalization?

It's best-effort. If a number already starts with '+', the tool trusts that as the country code and just strips other formatting. If it doesn't, the tool prefixes the country calling code you select. Free-text extraction has no reliable way to know which digits are a country code, an area code, or an extension, so double-check normalized numbers before relying on them.

Are duplicate numbers with different formatting merged?

Yes. '555-123-4567', '555.123.4567', and '(555) 123-4567' all reduce to the same digit sequence and are treated as one number, with the first-seen formatting kept in the output list (before normalization).

Can I export results as CSV?

Yes, alongside plain .txt - both export options are available from the toggle above the output box.

Related tools