Mask email addresses in a list or CSV before you share it
In short: Turns jane.doe@example.com into j******e@example.com, ***@example.com, a numbered placeholder or a SHA-256 hash, keeps every other column, and can shorten names to initials and phone numbers to their last two digits. Limit: Masked data can often be linked back to a person; it isn't anonymous by default.
To mask email addresses, paste the list or upload the CSV, choose a style and press Mask. jane.doe@example.com becomes j******e@example.com, ***@example.com, a placeholder like contact-0001@masked.invalid, or a SHA-256 hash. Other columns are kept, names can become initials and phone numbers their last two digits. It all runs in your browser.
Price: this tool is free. Checking a whole email list is from $9/mo, and the first 100 checks are free with Google, no card. See pricing
Sample result
5 addresses masked: jane.doe@northwind.example is now j******e@northwind.example.
- Masked
- 5 addresses
- Distinct
- 4
- Also masked
- name, phone
What this means for you
Share the masked file; names became initials and phones keep their last two digits.
- First and last letter, or domain too
- Numbered placeholders
- SHA-256, same value per address
- Names to initials, phones masked
- Privacy
- Sharing
- CSV
By SimpleVerifier Team · Last updated · Runs in your browser; nothing you paste is sent to us
How do I mask the email addresses in a list?
- Choose a mask style: first and last letter, domain masked too, name part hidden, numbered placeholder or SHA-256 hash.
- Leave the name and phone options on to mask those columns as well; they're found by their headers.
- Paste the list or upload the CSV and press Mask the addresses.
- Download the masked CSV and share that file; your original is unchanged.
Example
- You enter
- A 5-row CSV with email, name, phone, company and status columns;
jane.doe@northwind.exampleappears twice. - You get
- With the first-and-last-letter style,
jane.doe@northwind.examplebecomesj******e@northwind.example, Jane Doe becomesJ. D.and+1 415 555 0132becomes+* *** *** **32; company and status are untouched. 5 addresses masked, 4 distinct. - Limits
- Runs in your browser with no row cap; an uploaded file can be up to 25 MB.
How do I mask email addresses in Excel?
In Excel 365, =LEFT(A2,1)&REPT("*",FIND("@",A2)-2)&MID(A2,FIND("@",A2)-1,99) keeps the first letter, stars out the middle and keeps the last letter and the domain. It breaks on one-letter names and blank cells, and masking the domain or numbering the addresses needs much more.
This tool does each style in one step, keeps every other column, and gives the same placeholder or hash to the same address everywhere it appears, so duplicates and counts in the shared file still add up.
Which mask style should I use?
Keep the domain (j******e@example.com) when the reader needs to see which companies or mail providers are in the list, as in a deliverability review or an agency report. Hide the name part (***@example.com) when only the domain matters. Use numbered placeholders when the file goes into a demo or a bug report: .invalid is a top-level domain reserved so that it can never be a real address (RFC 2606).
SHA-256 hashing is for matching rather than showing: two parties who hash the same lowercased address get the same value. For ad platform uploads, use the Customer Match hasher, which follows Google's and Meta's normalisation rules.
Is a masked email list anonymous under GDPR?
Not necessarily. Data that can still be linked back to a person with extra information is pseudonymised, and GDPR treats pseudonymised data as personal data (GDPR Recital 26). A partially masked address with the company domain, a hash anyone can recompute, or a placeholder file shared next to the original can all be linked back.
Masking reduces what a screenshot or a shared sample exposes; it doesn't make a file safe to publish. Share the least you need, and see our note on email verification and GDPR.
Is this easier than a formula?
| This tool | Excel formula | |
|---|---|---|
| First and last letter kept | Yes | LEFT, REPT and MID |
| Domain masked | Yes | Another nested formula |
| Same placeholder for the same address | Yes | Lookup table |
| SHA-256 | Yes, in the browser | Not built in |
Who uses this tool, and for what?
- Agencies
- Show a client a sample of a lead list, or the results of a check, without handing over the addresses.
- Support and engineering
- Attach a real-shaped CSV to a bug report or a vendor ticket with every address replaced by a placeholder.
- Marketers
- Take screenshots of a list for a deck or a case study without exposing anyone's address.
- Data teams
- Hash addresses so two teams can match records without exchanging the addresses themselves.
What can’t this tool tell you?
- Masked data can often be linked back to a person; it isn't anonymous by default.
- Only the email column, and name and phone columns found by their headers, are masked. Check other columns, such as notes or addresses, yourself.
- Partial masks keep length and the first and last letter, which can be enough to guess a short or well-known address.
- A SHA-256 hash of a known address can be matched by anyone who has the same address.
Common questions
- How do I hide part of an email address?
- Paste the addresses here, choose first and last letter, and press Mask: jane.doe@example.com becomes j******e@example.com.
- Can I mask the domain too?
- Yes. The domain-masked style keeps only the ending, so jane@example.com becomes j**e@e*****e.com.
- Is SHA-256 hashing reversible?
- Not directly, but anyone with a list of addresses can hash them and compare, so a hash of a known address is easy to match.
- Is my list uploaded?
- No. Masking and hashing run in your browser; nothing is sent anywhere unless you choose to check the original addresses afterwards.
- Can I check the real addresses as well?
- Yes. After masking, the button under the result checks the original addresses, not the masked ones; the first 100 checks are free with a Google sign-in, no card.
Sources
A tidy list can still be full of dead addresses.
Extracting, deduplicating and syntax checks all work on the text of an address. None of them can tell whether the mailbox exists. Only the server that hosts it can answer that, through an SMTP check, and that is what the paid product does.
- Upload the cleaned file as it is: CSVs up to 100,000 rows
- A real SMTP mailbox check on every row, with catch-all detection
- Small list? Starter at $9/mo covers 2,500 emails a month, cancel anytime
Plans from $9 a month, cancel anytime, no contract. Sign in with Google and your first 100 email checks are free, no card. The free tools stay free either way.