# Extract Emails & Phone Numbers from Text

Extract emails and phone numbers from pasted text. Deduplicated, counted, sorted, and private in your browser with no upload.

## Run it

- **CLI:** `gizza tool contact-info-extractor "Reach Alice at alice@corp.com or +1 415 555 2671.
Bob: bob@corp.com, (212) 555-0199."`
- **Web:** https://gizza.ai/tools/contact-info-extractor/
- **Agents:** machine-readable descriptor (parameters JSON Schema) at https://gizza.ai/tools/contact-info-extractor/tool.json

## Inputs

- `input` — Text to scan _(field)_
- `types` — Extract _(field)_
- `dedupe` — Remove duplicates _(field)_
- `sort` — Order _(field)_

## Output

- Extracted contacts (text)

## Query parameters

Open the tool pre-filled and auto-run via URL:

- `input` — Text to scan
- `types` — Extract
- `dedupe` — Remove duplicates
- `sort` — Order

Example: `https://gizza.ai/tools/contact-info-extractor/?input=Reach%20Alice%20at%20alice%40corp.com%20or%20%2B1%20415%20555%202671.%0ABob%3A%20bob%40corp.com%2C%20%28212%29%20555-0199.&types=both&dedupe=true&sort=first-seen`

---

## Extract emails and phone numbers from pasted text

Paste an email thread, signature block, exported notes, CRM snippet, or contact list and this tool returns the contact details it can recognize. It is deterministic regex extraction — no LLM guessing — and it runs locally in your browser.

### What it finds

- Email addresses with common local parts, plus tags, subdomains, and real TLDs.
- Phone numbers written as international numbers (`+44 20 7946 0958`), area-code forms (`(415) 555-2671`), dashed/dotted/spaced groups, or continuous 10–15 digit runs.
- Optional filtering to extract **emails only**, **phones only**, or **both**.
- Optional deduplication: emails by lowercase address, phones by normalized digits.

### Worked example

Input:

`Reach Alice at alice@corp.com or call +1 415 555 2671. Bob: bob@corp.com, (212) 555-0199.`

Output:

- 2 emails: `alice@corp.com`, `bob@corp.com`
- 2 phones: `+1 415 555 2671`, `(212) 555-0199`

### Limits and edge cases

- Phone detection is pragmatic, not a country-aware validator. Use phone-format for country-specific formatting/validation.
- Short numeric codes, years, and long ID numbers are ignored where possible.
- The tool does not infer missing area codes, contact names, companies, or labels.
- Very messy OCR may need cleanup before extraction.

<details>
<summary>Does this validate that an email inbox or phone number is real?</summary>

No. It extracts values that look like email addresses or phone numbers. It does not check MX records, send test messages, call phone-number APIs, or verify deliverability.

</details>

<details>
<summary>How are duplicates handled?</summary>

With dedupe on, emails are compared case-insensitively and returned lowercased. Phone numbers are compared by their digits, so `555-123-4567` and `(555) 123 4567` count as the same number.

</details>

<details>
<summary>Can I keep every occurrence instead?</summary>

Yes. Turn off dedupe to keep duplicate matches in the order they appear. This is useful when you want to count repeated mentions rather than build a clean contact list.

</details>

<details>
<summary>Why did it miss or include a phone-like number?</summary>

Phone numbers vary by country and context. This tool uses safe general patterns with digit-count filters; it may miss unusual local formats or include a phone-like business identifier. For country-specific validation, run the extracted values through a dedicated phone formatter/validator.

</details>

## Related tools

- [Extract Email Addresses](https://gizza.ai/tools/extract-email-addresses/): Pull all email addresses out of any text, deduplicated and optionally grouped by domain — in your browser. Nothing is uploaded.
- [Extract Action Items from Meeting Notes](https://gizza.ai/tools/action-item-extractor/): Extract action items, owners, and decisions from meeting notes or daily notes with deterministic rules. Markdown checklist or JSON, private in-browser.
- [Amazon Order Analyzer](https://gizza.ai/tools/amazon-order-analyzer/): Paste an Amazon order-history CSV export to summarize total spend by month, top items, and category breakdowns. Browser-only, private, with Markdown or JSON output.
- [Base Decoder](https://gizza.ai/tools/base-decoder/): Auto-detect and decode Base16, Base32, Base45, Base58, Base64, and Base85 text, including nested layers, locally in your browser.
- [cURL Command Parser](https://gizza.ai/tools/curl-command-parser/): Paste a curl command to see its method, URL, query params, headers, body, auth, cookies and flags — or rebuild clean curl. Browser-only.
