Bulk Lead Import
For: Anyone adding many leads at once from a spreadsheet
This tool lets you upload many leads at once from an Excel/CSV-style sheet, instead of adding them one by one. It explains what each row needs and what will cause a row to be rejected — no technical background required.
Warning: This tool only creates new leads — it never updates an existing one. If the same lead is uploaded again, it is rejected as a duplicate rather than refreshed.
How it works
Every bulk upload has two steps. You run the same sheet through a Check first, fix anything it flags, then run it again to actually Create the leads.
| Step | What it does |
|---|---|
| 1. Check (recommended) | Reviews your entire sheet and lists every row with a problem — without saving anything. Fix the issues and check again. |
| 2. Create | Once every row passes, upload again to actually create the leads. |
Danger: Creating is all-or-nothing at the Check stage: if even one row fails the checks, none of the leads are created — the whole batch is rejected. This is why checking first is strongly recommended.
Required in every row
These must be filled in correctly on every row:
| Field | What's needed |
|---|---|
| Full Name | The lead's contact person name. Required on every row. |
| Phone | Required on every row. |
| Move-In Date | A valid date. Required on every row. |
Optional fields with rules
These are optional — but if you fill them in, they must follow these rules:
| Field | Rule if you fill it in |
|---|---|
| Priority | If filled in, must be exactly Hot, Warm, or Cold. |
| Potential | Optional estimated deal value — a number. |
| Optional. | |
| Company Name | Optional on its own, but needed for the duplicate check below. |
| Move-Out Date / City / Address / Notes | Optional. |
Must match existing records
If you fill these in, the value must exactly match a record already set up for your company. The match is case-sensitive — 'Cold Call' and 'COLD CALL' are treated as different, and a differently-capitalized name is rejected as 'not found'.
| Field | What it must match |
|---|---|
| Lead Source | Must exactly match an existing Lead Source. Checked at both steps — a mismatch blocks creation. |
| Industry | Must exactly match an existing Industry. Checked at both steps — a mismatch blocks creation. |
| Lead Status | Must exactly match an existing Lead Status. Checked at both steps — a mismatch blocks creation. |
| Campaign Name | Must match an existing Campaign — but this is only verified at the Check step. At Create, a name that doesn't match does NOT block the lead; the lead is created without a campaign link. Double-check spelling before uploading. |
Duplicates & uniqueness
| Situation | What happens |
|---|---|
| The same Company Name + Phone Number appears more than once in your sheet | Rejected — you can't list the same lead twice in one upload. |
| That Company Name + Phone Number already exists as a lead in the system | Rejected — it's already on record. |
| Either Company Name or Phone is blank on the row | The duplicate check is skipped — it only runs when both are present. |
Common mistakes
If a row is rejected, it is usually for one of these reasons:
| If this happens… | …here's what it means |
|---|---|
| Full Name / Phone / Move-In Date is missing | Every row needs all three. |
| Lead Source, Industry, or Lead Status doesn't match | Check spelling and capitalization — it must match exactly, and this blocks creation. |
| Campaign Name doesn't match | Flagged at Check. At Create it won't block, but the lead will have no campaign link. |
| Same Company Name + Phone appears twice in the sheet | List each lead only once per upload. |
| Company Name + Phone already exists as a lead | That lead is already on record — check before re-importing. |
What happens on the final step
- •Each lead gets a sequential ID (LEAD00001, LEAD00002, …), continuing from the last one used.
- •Lead Source, Industry, and Lead Status are linked to their matching records; Campaign is linked only if it matched (otherwise the lead is created unlinked).
- •You — the person doing the import — are set as both the creator and the assigned owner of every lead. Any 'assigned to' column in the sheet is ignored.
- •A note is added to each lead's history showing its starting status.
- •Leads keep the same order as your sheet when viewed in lists sorted by creation time.
Recommended way to work
- Build your sheet with all the leads you want to add.
- Run the Check step first and review the list of problem rows.
- Fix each issue in the sheet using the tables above as a guide.
- Run the Check step again until every row passes.
- Only then run Create to actually add the leads.
- Tip: double-check Campaign Name spelling even after a clean Check — it's the one field where Check and Create don't behave the same way.