Operelio

Salesforce import templates

Import leads into Salesforce
with the Data Import Wizard

The wizard’s first screen decides whether your file updates the leads you already have or adds them a second time. Here’s each choice, and what Salesforce’s documentation says it does.

IntoSalesforce

Each template page checks your export first, in your browser, for what Salesforce would skip. Nothing is uploaded.

Only need Salesforce’s columns? Leads CSVContacts CSV

FreeNo accountLeads and Contacts files

The number to check after
an import is Records Updated

This job closed with 12 failures out of 1,860 records. The 0 under Records Updated is the bigger problem.

Recent Import Jobspartner-event-leads.csv
StatusObjectRecords CreatedRecords UpdatedRecords Failed
ClosedLead1,848012

Behind those three numbers

412of the 1,848 new leads were already in Salesforce. Match Lead by was left at None, and the org’s standard lead duplicate rule, on by default, had been turned off. Nothing compared them, so every row was created.

1,848leads are owned by whoever ran the import. No assignment rule was picked and the file had no owner column.

0workflow rules or processes ran on them. The box that runs them starts unchecked. Any Apex triggers ran anyway.

The import is made up. What happens to it is from Salesforce’s help pages, and all three trace back to the wizard’s first screen.

What each screen of
the Data Import Wizard decides

Three screens and a results table. Most of what goes wrong is decided on the first one.

SetupHomeObject Manager
Data Import WizardHelp for this page
Choose data
Edit mapping
Start import
What kind of data are you importing?
Standard objectsCustom objects
Accounts and Contacts
Leads
Solutions
What do you want to do?
Add new records
Update existing records
Add new and update existing records
Match Lead by --None--
Assign New Leads to this Source Partner
Assign All Leads Using this Assignment Rule --None--
Trigger workflow rules and processes for new and updated records
Where is your data located?
Drag CSV file here to upload
partner-event-leads.csv1,860 records
Character CodeISO-8859-1 (General US & Western European)
Values Separated ByComma

1 of 5

A drawing based on the wizard’s own screens, not a screenshot. Each point is from Salesforce’s help pages.

What an update does
to a lead you already have

The same file again, this time matched by Email with Add new and update existing records. Elena is already a lead, so her row updates her.

Elena Torres, Halcyon Freightelena.torres@halcyonfreight.co
FieldIn Salesforce nowIn the fileAfter the import
TitleVP OperationsOperationsOperationsVP Operations
IndustryTransportationFreight & LogisticsFreight & Logisticsnot on your Industry list
Lead OwnerJordan HaleSam PatelYoutwo users are called Sam Patel
DescriptionRenewal due Q3blankRenewal due Q3blank cell skipped
Replaced
Title and Industry. Every mapped value with something in it replaces the one on the lead, better or not. Industry took a value that isn’t on its list: Salesforce keeps the file’s value when a picklist isn’t restricted. To protect a text field, leave its column unmapped. An unmapped picklist or checkbox still gets its default value, if it has one, even on an update.
Reassigned
Lead Owner. Two users are called Sam Patel, so Salesforce gave the lead to the person importing. An owner’s User ID can’t be shared.
Kept
Description. A blank cell leaves the value alone, so the wizard can’t clear a field. Salesforce says that needs Data Loader.

If you match leads by name instead

Salesforce’s name matching is case-sensitive. So it misses people whose name is written differently, and matches different people who share a name.

ELENA TORRESrow 77, from a badge scanNo match

The scanner wrote her name in capitals. To a case-sensitive match that’s a different name, so she’s created a second time.

Elena Torresrow 1,402, at Corvane HealthWrong match

A different Elena Torres. The name is all that’s compared, so her title, phone and industry are written over the Halcyon Freight lead.

Match leads by Email where you can. It compares the exact address, and two people rarely share one.

One row the wizard
takes the first time

Use Salesforce’s field names as headers so the wizard can map more columns itself. What’s left is getting each value into a form Salesforce accepts.

Xsalesforce-leads-import.csv
ABCDEF1LastNameCompanyOwnerIdStatusEvent_Date__cInterests__c2Torres1Halcyon Freight20058d00000AbCdE3Open - Not Contacted403/05/20265Pricing;Demo6

Event_Date__c and Interests__c are custom fields, included for the date and multi-select formats. A US-locale user writes March 5, 2026 as 03/05/2026.

1
Last Name on every row

A lead or contact can’t be saved without one. First Name is optional: a row with no first name imports, a row with no last name fails.

2
Company on every lead

Required for leads, not contacts. A personal sign-up with no company needs something in this column, or the row fails, unless your org uses person accounts.

3
Owners by User ID

The 15 or 18 character ID Salesforce recommends. A name shared by two users sends the lead to you. A name that doesn’t exactly match a user can fail the whole import.

4
Picklist values from the list

An unrestricted picklist takes any value, so a typo is saved on the lead as typed. A restricted one gets its default value instead.

5
Dates in your own locale

The way dates show in Salesforce for the person importing. The same file can read differently for a colleague in another locale.

6
Multi-select split by semicolons

Up to 100 values in a record. Past that, Salesforce leaves the field blank.

More of Salesforce’s import rules

Checkbox
1 for checked, 0 for unchecked
Currency
Format amounts for your locale
Formula fields
Read only. Leave them out of the mapping.
Record type
Set on new records only. An update doesn’t change it.
Unmapped fields
An unmapped picklist or checkbox gets its default value, if it has one
Encoding
Pick the one the file was saved in. CSV UTF-8 needs UTF-8.

The Salesforce field names our templates use

The 23 fields our 30 Leads and Contacts templates fill, the most common first. Department, AccountName and the Mailing fields are Contact fields. AccountName is the wizard’s Account Name mapping, which links a contact to its account. LinkedIn_URL__c is a custom field: create it before you import. Every field’s API name is in Object Manager, under Fields & Relationships.

Download the Leads CSV
Email,FirstName,LastName,Description,Phone,Title,Company,Country,City,State,LinkedIn_URL__c,PostalCode,Street,LeadSource,MobilePhone,Status,Website,AccountName,Industry,MailingCountry,Department,MailingCity,MailingState
EmailEmail
First NameFirstName
Last NameLastName
DescriptionDescription
PhonePhone
TitleTitle
CompanyCompany
CountryCountry
CityCity
State/ProvinceState
LinkedIn URLLinkedIn_URL__c
Zip/Postal CodePostalCode
StreetStreet
Lead SourceLeadSource
Mobile PhoneMobilePhone
Lead StatusStatus
WebsiteWebsite
Account NameAccountName
IndustryIndustry
Mailing CountryMailingCountry
DepartmentDepartment
Mailing CityMailingCity
Mailing StateMailingState

Importing leads from Excel

The Data Import Wizard “supports only the CSV format,” Salesforce says. Save the sheet as a CSV in Excel first, then upload that file to the wizard.

  • Save As, then a CSV typeIn Excel, File, then Save As, and pick CSV (Comma delimited) as the file type.
  • One tab per fileExcel saves only the active sheet to a CSV. Each tab you need goes in as its own import.
  • Or convert it hereExcel to CSV exports one tab at a time to a CSV, free for files up to 2,000 rows.

From Salesforce Help: Data Import Wizard and Microsoft Support: Save a workbook to text format, read October 13, 2026.

Importing contacts instead of leads

The same wizard and the same limits. On its first screen, under Standard Objects, choose Accounts and Contacts instead of Leads.

  • What every row needsLast Name on every contact. Company is for leads only.
  • The permissionImport Personal Contacts, for your own accounts and contacts.
  • Contacts you already haveContacts match on Salesforce ID, name, email or External ID. Choosing none creates every row as new.

On Starter and up, an Operelio push sends people to Contacts or Leads, whichever you pick, and can also write Accounts and Opportunities. It matches each row on email: a match updates that record, a new email creates one, and a row with no email is skipped.

Mass and bulk imports:
the Data Import Wizard’s limits

From Salesforce’s import documentation. The wizard stops at whichever comes first.

50,000records per import
100 MBper file
400 KBper record
90fields per record
  • Long notes are cutA note or description over 32 KB is shortened to fit.
  • Past 50,000, Data LoaderA separate desktop app, for Enterprise edition and up or orgs with API access. It runs workflow rules and processes on every import, with no box to turn them off.

Salesforce import questions

Why did my Salesforce import create duplicate leads?

The wizard only looks for existing leads when you tell it how. With Match Lead by set to None, it creates every row as a new lead. Set it to Email to update the leads you have. Name matching is case-sensitive, so it misses people whose name is written differently. If your org’s lead duplicate rule is on, those rows fail instead, even when the rule is set to Allow with an alert. Our guide to Salesforce duplicate rules explains why, and how to load a list without tripping them. Pushing from Operelio instead matches on email before anything is written. A match updates the existing record and fills only its blank fields unless you choose to overwrite. A new email creates a record, and a row with no email is skipped. By default, rows in your file that share an email are cut to one first, the first one kept. The email match looks only at the record type you push to, Leads or Contacts. Someone already in Salesforce as either type, with a similar name at the same company, can be flagged as a possible duplicate. The report shows which rows are new, updated or not sent before you confirm, and Operelio never merges or deletes Salesforce records.

Can I undo a Data Import Wizard import?

Not as such. Salesforce’s way back is Mass Delete Records, which needs the Modify All Data permission and removes records the import created. It can’t put back the values an update replaced, so export the records before you update them.

Who owns the leads I import?

The person importing, unless the file has an owner column or you pick an assignment rule. In an owner column, use each owner’s User ID. A name that two users share sends the records to you instead.

Do workflow rules run on imported records?

Only if you check Trigger workflow rules and processes for new and updated records on the first screen. It’s unchecked unless you check it. Apex triggers run whatever the box says.

Why were some records not imported?

A record missing a required field, such as Company on a lead, isn’t imported. Nor is one that fails a validation rule: Salesforce runs them on every record first. They’re counted under Records Failed in Recent Import Jobs, and Salesforce emails you the result.

Can an import clear a field?

No. A blank cell leaves the value already in Salesforce alone. Salesforce says clearing values in bulk needs Data Loader, which requires Enterprise edition and up, or API access.

Which fields are required to import leads or contacts into Salesforce?

Last Name and Company on every lead; Last Name on a contact.

Salesforce import templates

Know what Records Updated will say before you start.

Run the export through the CRM Formatter first. Mapping to Salesforce’s fields is on every plan, and from Starter it reads your Salesforce to count new leads and updates before anything is sent.