CRM Lead Data Cleaner (Email/Phone Validator + Dedup)
Pricing
$5.00 / 1,000 results
CRM Lead Data Cleaner (Email/Phone Validator + Dedup)
Turn messy CSV or Excel leads into clean, validated, CRM-ready data. Fix Excel E+11 phone numbers, validate emails, remove duplicates, and score lead quality (HIGH, MEDIUM, LOW). Built for sales teams, lead gen agencies, and automation workflows.
Pricing
$5.00 / 1,000 results
Rating
0.0
(0)
Developer
Leoncio Coronado Jr
Maintained by CommunityActor stats
0
Bookmarked
12
Total users
1
Monthly active users
9 days ago
Last modified
Categories
Share
CRM Lead Data Cleaner – Email/Phone Validator + Dedup
Turn messy CSV and Excel lead data into clean, standardized, CRM-ready records.
CRM Lead Data Cleaner processes lead datasets by cleaning text, normalizing phone numbers, validating email syntax, removing duplicate records, and assigning contact-data quality scores.
It is designed for lead generation workflows, CRM preparation, sales operations, spreadsheet cleanup, and data automation pipelines.
What This Actor Does
The Actor takes a CSV or Excel dataset and processes it using deterministic cleaning rules.
Key capabilities include:
- Clean and normalize column headers
- Clean unnecessary text formatting and whitespace
- Normalize supported phone-number fields
- Recover phone numbers stored in scientific notation
- Validate basic email syntax
- Remove known placeholder email values
- Remove duplicate records
- Remove completely empty rows
- Calculate email and phone quality scores
- Calculate an overall contact-data score
- Assign a contact-quality classification
- Process CSV, XLSX, and XLS files
- Store cleaned records in the Apify Dataset
- Generate a cleaned CSV in Key-Value Store
- Limit the number of processed rows with
max_rows
How to Use
For most users, the easiest way to run CRM Lead Data Cleaner is with a publicly accessible CSV or Excel file URL.
Method 1 – Public CSV or Excel URL
- Open the Actor in Apify.
- Go to the Actor input form.
- Enter the public URL of your CSV or Excel file in
file_url. - Leave
file_keyempty. - Set
max_rowsto the maximum number of rows you want to process. - Click Start.
- Wait for the run to finish successfully.
- Open the run's Dataset / Results to view the cleaned records.
Example input:
{"file_url": "https://example.com/leads.csv","max_rows": 1000}
The URL must be publicly accessible without authentication.
For example, a publicly published CSV export can be used as the source.
Method 2 – Existing File in Key-Value Store
This is an advanced workflow.
Use file_key when the source file already exists in the Key-Value Store used by the Actor run.
- Make sure the file is available in the appropriate Key-Value Store.
- Enter its exact storage key in
file_key. - Leave
file_urlempty. - Set
max_rows. - Start the Actor.
- Open the resulting Dataset to view the cleaned records.
Example:
{"file_key": "input.csv","max_rows": 1000}
file_key is a Key-Value Store record key. It is not an API key or authentication credential.
Important Input Rule
Provide only one data source per run:
file_url, orfile_key
Do not provide both.
If neither source is provided, the Actor stops with a missing_input error.
If both are provided, the Actor stops with an invalid_input error.
Input Reference
file_url
A publicly accessible URL pointing to the CSV or Excel file you want to clean.
Example:
https://example.com/leads.csv
The source must be accessible without authentication.
file_key
The key of an existing file in the Actor's Key-Value Store workflow.
Example:
input.csv
For normal Store usage, file_url is generally the simpler option.
max_rows
Maximum number of cleaned rows the Actor will return.
Example:
{"max_rows": 1000}
Use this setting to control the size of the processed output.
Supported File Formats
CRM Lead Data Cleaner supports:
- CSV
- XLSX
- XLS
Excel files are processed using the Excel parsing path.
Other inputs are processed using the CSV parsing path.
For reliable format detection, use file URLs or storage keys that identify the correct file type.
Header Cleaning
Column names are automatically normalized.
For example:
First NamePhone NumberEmail Address
become:
first_namephone_numberemail_address
Headers are:
- Converted to lowercase
- Trimmed
- Converted to underscore-separated names
- Cleaned of unsupported separators and formatting
The Actor preserves cleaned source columns rather than requiring one fixed CRM schema.
Text Cleaning
Text values are standardized before further processing.
The cleaning pipeline:
- Converts values to text when appropriate
- Removes single and double quote characters
- Collapses repeated whitespace
- Trims leading and trailing whitespace
Completely empty rows are removed later in the pipeline.
Phone Number Processing
The Actor automatically detects common phone-number column names, including fields such as:
phonephone_numberphonenumbercleanedphonenumbercleaned_phone_numbercontact_phonecontact_phone_numbermobilemobile_phonetelephone
Columns ending in _phone or _phone_number are also recognized.
The Actor:
- Handles phone numbers stored in scientific notation
- Removes non-numeric formatting
- Removes common spreadsheet numeric artifacts such as
.0 - Rejects values containing fewer than 7 digits
- Produces a normalized phone value
Example input:
19518088800.0
can be normalized to a text-safe phone representation.
The output uses a leading apostrophe before the + sign to help spreadsheet applications preserve the phone number as text.
Email Processing
Columns containing email in their normalized name are treated as email fields.
The Actor:
- Trims whitespace
- Converts email addresses to lowercase
- Performs basic syntax validation
- Removes empty or invalid values
- Rejects known placeholder values containing markers such as:
not_unlockeddummytestnoemail
Example:
JOHN@EXAMPLE.COM
becomes:
john@example.com
Important
Email validation is syntax-based.
The Actor does not:
- Verify that a mailbox exists
- Perform SMTP verification
- Guarantee email deliverability
Duplicate Removal
After cleaning and normalization, the Actor:
- Converts empty strings to missing values.
- Removes completely empty rows.
- Removes duplicate rows.
This helps reduce duplicate CRM entries and repeated outreach records.
Contact Quality Scoring
The Actor adds four fields to the cleaned data:
email_scorephone_scoreoverall_scorecontact_quality
email_score
1.0 = valid email syntax0.0 = missing or invalid email
phone_score
1.0 = 10 or more digits0.5 = 7-9 digits0.0 = missing or invalid phone
overall_score
Calculated as:
(email_score + phone_score) / 2
contact_quality
The final contact-data classification is:
CONTACT_READYPARTIAL_CONTACTLOW_CONTACT
Classification rules:
CONTACT_READY overall_score >= 0.8PARTIAL_CONTACT overall_score >= 0.5LOW_CONTACT overall_score < 0.5
These values measure basic contact-data completeness and validity.
They do not predict whether a lead will respond, purchase, or convert.
Output
Every cleaned row is stored in the run's default Apify Dataset.
After a successful run:
- Open the completed run.
- Open Dataset / Results.
- Review the cleaned records.
- Use Apify's available dataset export options when needed.
The Actor preserves cleaned source fields and adds:
email_scorephone_scoreoverall_scorecontact_quality
Because source datasets can contain different columns, the exact output fields depend on the input file.
Example Output
A cleaned record may look like:
{"first_name": "John","last_name": "Smith","phone_number": "'+19518088800","email_address": "john@example.com","email_score": 1.0,"phone_score": 1.0,"overall_score": 1.0,"contact_quality": "CONTACT_READY"}
Additional source columns are preserved when available.
Cleaned CSV Output
In addition to the Apify Dataset, the Actor creates a CSV representation of the cleaned data.
It is stored in the run's Key-Value Store under:
cleaned_dataset
This output can be useful for:
- Spreadsheet workflows
- CRM imports
- Data exports
- Downstream automation
- Additional processing
Common Errors and How to Fix Them
missing_input
Cause: Neither file_url nor file_key was provided.
Fix: Provide exactly one source.
invalid_input
Cause: Both file_url and file_key were provided.
Fix: Use only one source per run.
file_not_found
Cause: The requested file_key was not found in Key-Value Store.
Fix: Verify the storage key and make sure the file exists in the correct store.
source_file_not_found
Cause: A remote source returned HTTP 404.
Fix: Check the file_url and confirm that the source still exists.
source_access_denied
Cause: The remote source returned HTTP 401 or 403.
Fix: Use a publicly accessible file URL. The Actor does not bypass authentication.
source_rate_limited
Cause: The remote source returned HTTP 429.
Fix: Try again later or use a source that permits the request.
download_timeout
Cause: The remote file did not respond within the allowed download time.
Fix: Verify that the source is online and responds reliably.
connection_failed
Cause: The Actor could not connect to the remote file source.
Fix: Check the URL and source availability.
remote_server_error
Cause: The source returned an HTTP 5xx server error.
Fix: Wait for the source server to recover and run the Actor again.
invalid_file
Cause: The downloaded or stored content could not be parsed as the expected CSV or Excel data.
Fix: Verify that the file is a valid supported format.
Use Cases
CRM Data Preparation
Clean lead lists before importing them into a CRM.
Lead Generation Pipelines
Use the Actor between data collection and CRM ingestion:
Lead Source / Scraper↓Raw CSV or Excel↓CRM Lead Data Cleaner↓Cleaned + Scored Dataset↓CRM / Outreach Workflow
Sales Operations
Standardize contact information and remove duplicate records before outreach.
Spreadsheet Cleanup
Clean common formatting problems in CSV and Excel lead files.
Automation Workflows
Use the structured Apify Dataset or cleaned CSV in downstream integrations and automation pipelines.
Typical Processing Flow
CSV / Excel Source↓File Loading↓CSV / Excel Parsing↓Header Normalization↓Text Cleaning↓Email + Phone Processing↓Empty Row Removal↓Duplicate Removal↓Contact Quality Scoring↓CRM-Ready Dataset↓Cleaned CSV
Pricing
Pricing is shown on the Actor's current Apify Store page and may change over time.
Use max_rows to control the maximum number of cleaned records processed and returned.
Always check the current Store listing for the latest pricing information.
Limitations
CRM Lead Data Cleaner focuses on deterministic data cleaning and basic contact-data validation.
It does not currently:
- Verify whether an email mailbox actually exists
- Perform SMTP verification
- Guarantee email deliverability
- Verify whether a phone number is active
- Identify the phone carrier or phone owner
- Enrich missing contact information from external sources
- Bypass authentication to access private remote files
Remote input URLs must be publicly accessible.
Privacy and Responsible Use
Lead datasets may contain personal or business contact information.
Use this Actor only with data you are authorized to process and in accordance with applicable privacy, data-protection, outreach, and platform requirements.
The Actor does not require users to place authentication credentials in file_url or file_key.
Do not expose passwords, API tokens, access tokens, cookies, or other credentials in public URLs or source datasets.
Reliability
The production pipeline includes:
- Explicit input validation
- Separate CSV and Excel parsing
- HTTP error classification
- Download timeout handling
- Connection failure handling
- Structured file parsing errors
- Deterministic cleaning rules
- Duplicate removal
- Dataset output
- Cleaned CSV generation
- Contact-data scoring
The goal is simple:
Turn messy lead data into predictable, automation-ready output.