Bulk CSV cleaning
Know your contacts.
Before you reach out.
Upload a spreadsheet of leads. Names, emails, phones, addresses, websites, IPs, and signup dates come back beside your columns.
Upload your list
Drop a CSV, Excel, or Numbers file
or choose a file
Clean 10,000 contacts for $100. Pay per file.
See the results.
Your contact list, with the results alongside.
| NameThe name exactly as uploaded. | parse_name_firstThe given name after cleanup. An all-caps name is recased. | parse_name_lastThe surname after cleanup. Empty when the value is a single name. | parse_name_genderfemale or male when the name is recognized. Empty when it is ambiguous or unknown. This is not verified identity. | parse_name_salutationMr or Ms when a gender is recognized. Empty otherwise. | parse_name_validThe value looks like a person. This does not confirm a real identity. | parse_name_duplicateThis name appeared earlier in the column. The row is kept. | parse_nameThe full name after cleanup. | parse_name_errorA row error, when one is recorded. Empty when the check completed. | EmailThe email address exactly as uploaded. | parse_email_deliverabletrue means likely to accept mail. false means delivery was not confirmed. Empty means the mailbox check did not answer. | parse_email_disposableUses a temporary email provider. | parse_email_roleA role address such as info@, sales@, or support@. | parse_email_freeUses a consumer provider such as Gmail. A company address hosted by Google is not a consumer mailbox. | parse_email_validThe address has valid email syntax. This does not confirm that the mailbox exists. | parse_email_duplicateThis address appeared earlier in the column. The row is kept and the result is reused. | parse_email_didyoumeanA suggested address when the domain looks misspelled. The original is kept. | parse_email_domain_typeacademic, government, or military when the domain namespace is recognized. Empty otherwise. | parse_email_errorA row error, when one is recorded. An unanswered mailbox check can leave this empty too. | PhoneThe phone number exactly as uploaded. | parse_phone_validThe number is valid for its country. This does not confirm that the line is active. | parse_phone_internationalThe number in international display format. | parse_phone_duplicateThis number appeared earlier in the column. The row is kept and the result is reused. | parse_phone_errorA row error, when one is recorded. Empty when the check completed. | parse_carrierThe carrier name. Empty when no carrier was returned, including toll-free examples in this file. | parse_carrier_typemobile, landline, voip, or toll_free. Empty when the carrier check did not answer. | parse_carrier_errorA carrier-check error, when one is recorded. A number that fails validation does not run the carrier check. | AddressThe street address exactly as uploaded. | parse_address_validThe value parses as a street address. This does not confirm that mail can be delivered there. | parse_address_registeredThe address matches an official record where coverage exists. Empty when that was not checked. This is not postal deliverability. | parse_addressThe address after parsing. Empty when it does not parse. | parse_address_cityThe city parsed from the address. | parse_address_stateThe state or region parsed from the address. | parse_address_postalThe postal code parsed from the address. Empty when the input did not include one. | parse_address_errorA row error, when one is recorded. Empty when the check completed. | WebsiteThe website or domain exactly as uploaded. | parse_domain_availabletrue means the domain is not registered. false means it is registered. Empty means registration was not answered. | parse_domain_registrarThe registrar, when one was returned. Empty when unknown. | parse_domain_errorA row error, when one is recorded. Empty when the check completed. | IPThe IP address exactly as uploaded. | parse_ip_countryThe country for the IP address. | parse_ip_cityThe city for the IP address. Empty when the address does not resolve to one city. | parse_ip_networkThe network operator. | parse_ip_vpntrue means a known VPN egress. false means it is not on that list. Empty when the flag was not included. | parse_ip_datacentertrue means a known datacenter address. false means it is not on that list. Empty when the flag was not included. | parse_ip_errorA row error, when one is recorded. Empty when the check completed. | SignupThe signup date exactly as uploaded. | parse_signupThe date as YYYY-MM-DD. Empty when the value is not a date. | parse_date_duplicateThis date appeared earlier in the column. The row is kept. |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ALEX MORGAN | Alex | Morgan | true | false | Alex Morgan | alex@example.com | true | false | false | false | true | false | (303) 555-0123 | true | +1 303 555 0123 | false | Example Mobile | mobile | 152 200th Avenue, Ellsworth MN | true | 152 200th Avenue, Ellsworth, MN | Ellsworth | MN | example.com | false | 8.8.8.8 | US | Google LLC | 9/20/2026 | 2026-09-20 | false | |||||||||||||||||
| PRIYA SHAH | Priya | Shah | female | Ms | true | false | Priya Shah | priya@mit.edu | true | false | false | false | true | false | academic | 8/21/2026 | 2026-08-21 | false | ||||||||||||||||||||||||||||||
| Maya Chen | Maya | Chen | true | false | Maya Chen | maya@example.net | false | false | false | true | false | |||||||||||||||||||||||||||||||||||||
| Sam Rivera | Sam | Rivera | true | false | Sam Rivera | trial@example.org | false | true | false | false | true | false | (212) 555-0148 | true | +1 212 555 0148 | false | Example Voice | voip | not an address | false | mailinator.com | false | 2026-08-25 | 2026-08-25 | false | |||||||||||||||||||||||
| support@team.example.com | false | true | false | true | false | (800) 555-0116 | true | +1 800 555 0116 | false | toll_free | ||||||||||||||||||||||||||||||||||||||
| Taylor | Taylor | true | false | Taylor | taylor@gmial.com | false | false | false | false | true | false | taylor@gmail.com | 555 | false | false | gmial.com | TBD | false | ||||||||||||||||||||||||||||||
| ALEX MORGAN | Alex | Morgan | true | true | Alex Morgan | alex@example.com | true | false | false | false | true | true | (303) 555-0123 | true | +1 303 555 0123 | true | Example Mobile | mobile | 9/20/2026 | 2026-09-20 | true |
WHAT COMES BACK
leads.csv
ALEX MORGANReady
A complete contact. The name splits, the mailbox check is positive, the number is mobile, the address separates, and the signup date becomes 2026-09-20.
PRIYA SHAHAcademic
A recognized academic domain. The salutation in this row is an example. Blank phone, address, website, and IP cells stay blank.
maya@example.netUnknown
The mailbox check did not return an answer. Empty means unknown, which is different from a negative result.
trial@example.orgDisposable
A disposable email address. The phone example is an internet line, and this address does not parse.
support@team.example.comShared inbox
A shared inbox such as support@. The number example is toll-free, with no carrier name.
taylor@gmial.comTypo
The domain looks misspelled, so the file suggests taylor@gmail.com. 555 is not a valid phone number, and TBD is not a date.
ALEX MORGANDuplicate
This email and phone already appeared. The row stays, and the repeat is not billed again.
One price for your file.
Choose the checks for a contact list. Files start at $5.
Unique values in each selected column. Up to 1 million.
Estimated file price
Estimate for one unique value per selected column. Blanks and repeats stay out of the bill. Your quote uses the columns in your file.
Upload your listRepeated values cost once.
Automatic partial refunds from $1 per file.
More than a
CSV cleanup.
Check a contact list in one upload. Names, emails, phones, addresses, websites, IPs, and signup dates.
Names
First and last names, plus a salutation when the name is recognized.
Emails
Mailbox checks, disposable and shared inboxes, and typo suggestions.
Phones
Valid numbers, line type, and carrier. Caller ID and live status are optional.
Addresses
Street, city, state, and postal code, plus an official-record match where covered.
Websites
Whether the domain is registered, and the registrar when we have it.
IPs and signup dates
Country and network for an IP, plus signup dates as YYYY-MM-DD.
- disposable email domains
- 75k+
- Spot throwaway addresses before you reach out.
- countries and regions
- 245
- Phone validation from the numbering plan.
- US address points
- 90M+
- Street addresses checked against official records where covered.
Inside your download.
The columns in the contact example, explained below.
true means yes. false means no. Empty means no answer or not applicable.
Names
- Original name
Name - The name exactly as uploaded.
ALEX MORGAN- Cleaned name
parse_name - The full name after cleanup.
Alex Morgan- First name
parse_name_first - The given name after cleanup. An all-caps name is recased.
Alex- Last name
parse_name_last - The surname after cleanup. Empty when the value is a single name.
Morgan- Gender
parse_name_gender - female or male when the name is recognized. Empty when it is ambiguous or unknown. This is not verified identity.
female- Salutation
parse_name_salutation - Mr or Ms when a gender is recognized. Empty otherwise.
Ms- Valid name
parse_name_valid - The value looks like a person. This does not confirm a real identity.
true- Duplicate name
parse_name_duplicate - This name appeared earlier in the column. The row is kept.
truefalse- Name error
parse_name_error - A row error, when one is recorded. Empty when the check completed.
- Empty
Emails
- Original email
Email - The email address exactly as uploaded.
taylor@gmial.com- Deliverable
parse_email_deliverable - true means likely to accept mail. false means delivery was not confirmed. Empty means the mailbox check did not answer.
truefalse- Disposable
parse_email_disposable - Uses a temporary email provider.
truefalse- Shared inbox
parse_email_role - A role address such as info@, sales@, or support@.
truefalse- Consumer mailbox
parse_email_free - Uses a consumer provider such as Gmail. A company address hosted by Google is not a consumer mailbox.
truefalse- Valid email
parse_email_valid - The address has valid email syntax. This does not confirm that the mailbox exists.
true- Duplicate email
parse_email_duplicate - This address appeared earlier in the column. The row is kept and the result is reused.
truefalse- Typo suggestion
parse_email_didyoumean - A suggested address when the domain looks misspelled. The original is kept.
taylor@gmail.com- Domain type
parse_email_domain_type - academic, government, or military when the domain namespace is recognized. Empty otherwise.
academic- Email error
parse_email_error - A row error, when one is recorded. An unanswered mailbox check can leave this empty too.
- Empty
Phones
- Original phone
Phone - The phone number exactly as uploaded.
(303) 555-0123- Valid number
parse_phone_valid - The number is valid for its country. This does not confirm that the line is active.
truefalse- International format
parse_phone_international - The number in international display format.
+1 303 555 0123- Duplicate phone
parse_phone_duplicate - This number appeared earlier in the column. The row is kept and the result is reused.
truefalse- Phone error
parse_phone_error - A row error, when one is recorded. Empty when the check completed.
- Empty
- Carrier
parse_carrier - The carrier name. Empty when no carrier was returned, including toll-free examples in this file.
Example Mobile- Line type
parse_carrier_type - mobile, landline, voip, or toll_free. Empty when the carrier check did not answer.
mobilevoiptoll_free- Carrier error
parse_carrier_error - A carrier-check error, when one is recorded. A number that fails validation does not run the carrier check.
- Empty
Addresses
- Original address
Address - The street address exactly as uploaded.
152 200th Avenue, Ellsworth MN- Standard address
parse_address - The address after parsing. Empty when it does not parse.
152 200th Avenue, Ellsworth, MN- Valid address
parse_address_valid - The value parses as a street address. This does not confirm that mail can be delivered there.
truefalse- Official record
parse_address_registered - The address matches an official record where coverage exists. Empty when that was not checked. This is not postal deliverability.
true- City
parse_address_city - The city parsed from the address.
Ellsworth- State
parse_address_state - The state or region parsed from the address.
MN- Postal code
parse_address_postal - The postal code parsed from the address. Empty when the input did not include one.
- Empty
- Address error
parse_address_error - A row error, when one is recorded. Empty when the check completed.
- Empty
Websites
- Original website
Website - The website or domain exactly as uploaded.
example.com- Unregistered
parse_domain_available - true means the domain is not registered. false means it is registered. Empty means registration was not answered.
false- Registrar
parse_domain_registrar - The registrar, when one was returned. Empty when unknown.
- Empty
- Website error
parse_domain_error - A row error, when one is recorded. Empty when the check completed.
- Empty
IP addresses
- Original IP
IP - The IP address exactly as uploaded.
8.8.8.8- IP country
parse_ip_country - The country for the IP address.
US- IP city
parse_ip_city - The city for the IP address. Empty when the address does not resolve to one city.
- Empty
- Network
parse_ip_network - The network operator.
Google LLC- VPN
parse_ip_vpn - true means a known VPN egress. false means it is not on that list. Empty when the flag was not included.
truefalse- Datacenter
parse_ip_datacenter - true means a known datacenter address. false means it is not on that list. Empty when the flag was not included.
truefalse- IP error
parse_ip_error - A row error, when one is recorded. Empty when the check completed.
- Empty
Signup dates
- Original date
Signup - The signup date exactly as uploaded.
9/20/2026- Signup date
parse_signup - The date as YYYY-MM-DD. Empty when the value is not a date.
2026-09-20- Duplicate date
parse_date_duplicate - This date appeared earlier in the column. The row is kept.
truefalse
Your original columns stay in the file. A contact list adds a prefix such as parse_email_deliverable so each result is clear. The quote can add more checks, including every email and phone column.
Questions and answers.
What kind of file is this for?
A contact list or a list of leads. Typical columns are name, email, phone, street address, website, IP address, and signup date. A CSV, Excel, or Numbers file is enough.
Can I upload a file with only some of those columns?
Yes. Bring the columns you have. Recognized columns are detected automatically, and you review the checks before paying. Blank cells stay blank.
What is included in the example?
The example shows the contact checks: name cleanup, email verification, phone validation, carrier and line type, address parsing, domain registration, IP country and network, and a standardized signup date. Caller ID, live status, and the rest of the email and phone columns are optional on the quote. See email verification and phone validation for those full files.
What is free, and when do I pay?
Preview results for up to 10 rows for free, without an account or card. Choose your checks and see the exact total before confirming the full run. You can pay once for the file. No subscription is required.
Will my original data or duplicate rows be removed?
The full results preserve your original columns and row order, with check results added in new columns. Duplicate values are flagged and their rows are kept.
Do I pay for every row?
You pay for unique values in each selected check. Blanks, values we cannot recognize, and later copies of the same value stay out of the bill. A number that fails validation does not pay for the carrier check.
Do I pay for checks that cannot finish?
For new one-time files, unanswered checks are automatically refunded when the file's total refund is at least $1. Smaller partial refunds are not issued automatically. Failed jobs receive a full refund. An unanswered check leaves its result cells blank. See the billing terms.
What if my file has other columns?
The quote can also check postal codes, countries, user agents, and other recognized columns. You choose them before you pay, and the total updates before the run.
How do I use the results?
Download the CSV and import it into your CRM or email platform. Map the original columns and any result columns you want to keep.
How is my file handled?
Files are stored privately, but anyone with your job link can access them, so keep the link private. Downloads are available for 30 days from upload. See our storage and deletion details, or contact us to request deletion. We do not sell or rent your personal information.