Outcome
You can prepare a supported file, map only current targets, validate a bound preview, and commit Create, Enrich, and Match rows safely.
Navigation path
CRM > Contacts > People > Import
Access
Active CREBuilder subscription with CRM entitlement
On this page
Before you start
Data, sources, and access to prepare
- A first-party CSV with a header row and at least one contact row
- A clear owner and source for the records
- Provider opt-outs retained in the export
Prepare and import contacts from a supported file

Short animated UI capture. No audio.

| Rule | Supported value |
|---|---|
| File type | CSV selected through the CRM importer |
| Required structure | One nonblank unique header per column and at least one contact row |
| Maximum size | 10 MB |
| Maximum rows | 50,000 contact rows |
| Delimiters | Comma, semicolon, or tab |
| Text handling | Quoted and multiline values; UTF-8, UTF-16, or Windows-1252 fallback |
| Identity | Email is required to create; a stable source record ID supports safer reimports |
- 1
Export from the source system
HubSpot, Salesforce, Pipedrive, Zoho, Buildout, Crexi, LoopNet/CoStar, or your spreadsheet
Include a stable source ID, email, names, company, and any supported opt-out column.
Expected result: The local CSV contains one row per source contact and retains provider identity and opt-out evidence.
If this does not happen: If no stable ID exists, plan to rely on normalized email and review reimports more carefully.
- 2
Check file structure
Local spreadsheet or text editor
Confirm unique nonblank headers, consistent columns, and no more than 50,000 data rows or 10 MB.
Expected result: The file meets the importer limits before upload.
If this does not happen: Split an oversized export into controlled batches. Preserve the same headers and source label.
- 3
Choose the import source
CRM > Contacts > People > Import
Select the source preset or Generic CSV.
Expected result: The importer applies the corresponding source context.
If this does not happen: Use Generic CSV for a spreadsheet without a supported provider preset.
- 4
Select the import file
CRM import > Choose file
Choose the prepared CSV file.
Expected result: CREBuilder reads the delimiter and encoding and advances to Map.
If this does not happen: If parsing fails, download the generic template and repair headers or quotes before choosing the file again.
Map only supported fields

| Field | Requirement | What it means | Format | Units | Save behavior | Downstream effect |
|---|---|---|---|---|---|---|
| Source record ID | Recommended | Stable provider identity for safe reimports | Provider-issued text identifier | Not applicable | Stored for safe rows only when Import safe rows succeeds with this column mapped. | Lets later imports match the same provider record more safely. |
| Required | Canonical contact identity and required creation field | Valid email address | Not applicable | Normalized and stored for safe rows only when Import safe rows succeeds. | Creates or matches the canonical person and prevents duplicate email identities. | |
| First name and Last name | Optional | Combined into the contact name | Separate plain-text source columns | Not applicable | Stored for safe rows when the executed mapping uses separate name columns. | Builds the contact display name; use these columns or Full name, not both. |
| Full name | Optional | Single source column used instead of separate names | Plain text | Not applicable | Stored for safe rows when the executed mapping uses Full name. | Builds the contact display name instead of separate first and last columns. |
| Company | Optional | Company name associated with the contact | Plain text | Not applicable | Stored for safe rows when Import safe rows succeeds. | Adds company context used for contact organization and later company matching. |
| Title | Optional | Job title or role | Plain text | Not applicable | Stored for safe rows when Import safe rows succeeds. | Adds professional role context to the contact workspace. |
| Phone | Optional | Primary phone number | Phone number accepted by the import preview | Not applicable | Stored for safe rows when Import safe rows succeeds. | Provides the contact’s primary calling number. |
| Lead type | Optional | Buyer, Tenant Rep, Seller, Landlord, Investor, or Other | Supported lead-type label | Not applicable | Stored for safe rows when Import safe rows succeeds. | Classifies the contact and controls which requirement panel can appear. |
| Do not email | Recommended | Provider unsubscribe or opt-out evidence | Source opt-out value recognized by the import preview | Not applicable | Committed for safe rows when Import safe rows succeeds; import undo does not remove the resulting suppression. | Creates a company Email Blast suppression that protects future hosted audiences. |
Required means the field is needed to complete or support this workflow. Some screens allow a draft to save before every required item is complete. The steps and troubleshooting call out controls the product actively blocks.
Tags are not an import mapping target
A source preset may recognize a provider whose export contains tag columns, but the current CRM mapping screen does not import tags. Add tags after import using supported CRM controls.
- 1
Review suggested mappings
Import > Map
Compare every CREBuilder field, selected source column, and sample value.
Expected result: Only intended columns are mapped and Email is selected.
If this does not happen: Use Skip this field for unsupported or ambiguous columns. Do not map a tag column into another field.
- 2
Choose a name strategy
Import > Map
Map Full name, or map First name and Last name.
Expected result: The alternative name mapping is cleared automatically.
If this does not happen: If source names are inconsistent, keep the raw file and test a small batch first.
- 3
Create the preview
Import > Map > Preview changes
Select Preview changes after the mapping is final.
Expected result: The server creates a preview bound to this file, mapping, user, company, scope, and row set.
If this does not happen: If the file, mapping, permissions, or rows change, create a new preview. Do not try to execute a stale batch.
Validate the safe preview outcomes

Short animated UI capture. No audio.
Preview before any CRM contact changes
Create, Enrich, and Match are eligible to commit. Every unresolved outcome stays outside CRM for the separate recovery workflow.
CSV row
Create, Enrich, or Match
Unresolved row
Held outside CRM
- CSV rowCreate, Enrich, or Matchsafe result
- CSV rowUnresolved rowneeds recovery
| Safe outcome | Meaning | Commit behavior |
|---|---|---|
| Create | A permitted new canonical contact can be made. | Creates the contact. |
| Enrich | A permitted existing contact has blank supported fields. | Fills blanks only. It does not overwrite populated values. |
| Match | The row resolves to an existing contact without a safe field change. | Records safe source identity as applicable without duplicating the person. |
- 1
Review totals and opt-outs
Import > Preview
Compare Create, Enrich, Match, unresolved, and provider opt-out counts with the source file.
Expected result: The safe commit size and held-row count are understood before execution.
If this does not happen: If counts are surprising, return to Map or repair the source file. Preview again after every change.
- 2
Inspect safe rows
Import > Preview > Create, Enrich, and Match filters
Review representative and high-value rows in each safe outcome.
Expected result: New people, blank-field enrichment, and existing matches are intentional.
If this does not happen: If identity or ownership is uncertain, do not commit yet. Return to the source and preview again.
- 3
Open the recovery guide for unresolved rows
Import > Preview > unresolved summary
Open the Resolve CRM import conflicts and safely undo a batch guide.
Expected result: The separate recovery workflow opens for the held rows.
If this does not happen: Do not alter identifiers or mappings merely to force a held row into Create.
Commit the reviewed safe rows

- 1
Confirm the preview is current
Import > Preview
Verify filename, source preset, mapping, outcome totals, opt-out count, and unresolved count.
Expected result: The preview still represents the exact file and mapping you intend to commit.
If this does not happen: If anything changed, return to Map and create a new preview.
- 2
Commit safe rows
Import > Preview > Import safe rows
Select Import safe rows once every safe outcome group is reviewed.
Expected result: Safe contact, source-map, result, and suppression changes commit together; unresolved rows stay out.
If this does not happen: If commit fails, the UI states that no contacts changed. Preserve the file and create a fresh preview before retrying.
- 3
Verify the result summary
Import > Results
Compare Created, Enriched, Matched, and unresolved totals with the preview.
Expected result: The executed totals match the reviewed plan.
If this does not happen: If the totals differ, stop and use the import recovery article before another batch.
- 4
Spot-check canonical contacts
CRM > Contacts > People
Open representative contacts from the executed batch.
Expected result: The created or enriched records match the reviewed outcome.
If this does not happen: If a contact differs or unresolved rows remain, use the import recovery article before another batch.
Import is not marketing consent
A contact import creates or enriches CRM data. It does not prove permission for a hosted Email Blast. Imported provider opt-outs become company suppressions.
Resolve import failures without losing evidence


The file will not open
Likely cause: It lacks a header/data row, has duplicate or blank headers, contains an unclosed quote, or exceeds limits.
- Read the exact error.
- Repair the local CSV or use the generic template.
- Keep within 10 MB and 50,000 rows.
- Upload the repaired file as a new preview.
An existing contact was not overwritten
Likely cause: Enrichment intentionally fills blank fields only and respects ownership.
- Open the canonical contact.
- Compare current and source values.
- Edit manually if authorized and the new value is correct.
- Do not alter the source ID to force a new person.
The preview expired or no longer matches
Likely cause: The file, mapping, rows, user, company, scope, or permission context changed.
- Return to Map.
- Review the current mapping.
- Create a new preview.
- Commit only that new batch.
Final verification
- Import > Preview: The preview still represents the exact file and mapping you intend to commit.
- Import > Preview > Import safe rows: Safe contact, source-map, result, and suppression changes commit together; unresolved rows stay out.
- Import > Results: The executed totals match the reviewed plan.
- CRM > Contacts > People: The created or enriched records match the reviewed outcome.
- No blocking warning, failed status, or unresolved validation message remains in the completed workflow.