CSV Import
Import leads from CSV files.
CSV Import
Import leads in bulk from a CSV file using a 3-step wizard. Navigate to Leads and click the Import button.
Limits
- Maximum rows: 10,000 per file
- Maximum file size: 50 MB
- File format:
.csvfiles only
Step 1: Upload
Configure the import settings and select your CSV file.
Import Purpose
| Purpose | Description |
|---|---|
| Add & Update | Create new leads and update existing matches (default) |
| Add New Only | Only create new leads, skip any that already exist |
| Update Existing | Only update leads that already exist, skip new ones |
| Add All | Create all rows as new leads without deduplication |
Deduplication Settings
- Identifier — The field used to match existing leads:
email,phone, orleadId - Lookup Scope — Where to search for matches:
- Within Campaign — Only match leads in the same campaign
- Across All Campaigns — Match leads across your entire organization
Fallback Campaign
If a row's campaign ID is missing or invalid, the lead is assigned to the Lead Pool by default. You can change this to any active campaign.
After configuring settings, drag and drop your CSV file or click to browse. The file is uploaded directly to secure storage via a presigned URL.
Step 2: Mapping
Map CSV columns to LeadSail fields. The wizard auto-suggests mappings based on common header names (e.g., "First Name" maps to firstName, "Email Address" maps to email).
Required Fields
These fields must be mapped before proceeding:
campaign.campaignId— The campaign to assign the lead tofirstNamelastNameemailphone
Column Mapping
For each CSV column, select the corresponding LeadSail field from the dropdown. Fields are organized by the field library and include:
- Contact fields (name, email, phone, address)
- Questionnaire fields (
questionnaire.<key>) - Attribution fields
- Custom fields
Do Not Overwrite
When updating existing leads, you can protect specific fields from being overwritten. Check Do Not Overwrite for any field that should keep its current value if the lead already exists.
Batch Tag
Each import is tagged with an auto-generated batch identifier (format: imported_YYYYMMDD_HHMMSS). This lets you filter and identify imported leads later.
Step 3: Review
Review the import configuration before submitting:
- Total rows to be processed
- Estimates — Predicted counts for new, updated, and skipped leads
- Warnings — Any validation issues detected (missing required fields, invalid data)
Click Start Import to queue the import job. The import runs asynchronously in the background — you can navigate away and check progress later.
After Import
Imported leads are created with:
- Status set to
new - The
wasImportedflag set totrue - The
importedAttimestamp recorded - The batch tag stored for filtering
Imported leads are not automatically submitted to the qualification engine. To process them, you can manually deliver individual leads or use bulk actions.