All Docs
FeaturesNurtureHubUpdated March 21, 2026

CSV Contact Import

CSV Contact Import

NurtureHub supports bulk contact import via CSV, accessible from /dashboard/contacts. This lets you migrate contacts from agentOS, Reapit, Alto, or any spreadsheet-based export into NurtureHub without manual data entry.


Getting Started

  1. Navigate to Contacts (/dashboard/contacts).
  2. Click Import CSV (or drag and drop a .csv file onto the Contacts page).
  3. Work through the three-step import flow: Map → Validate → Import.

Step 1 — Upload

Drag and drop your CSV file onto the upload area, or click to browse and select a file.

Supported source formats

CRM / SourceNotes
agentOSStandard contact export
ReapitStandard contact export
AltoStandard contact export
Generic CSVAny UTF-8 encoded CSV with a header row

CSV files must be UTF-8 encoded and must include a header row.


Step 2 — Column Mapping

After upload, the column mapping UI displays each column header detected in your CSV file. Use the dropdowns to match each CSV column to the corresponding NurtureHub contact field.

Required fields

  • Email — used as the unique identifier for deduplication.
  • First Name
  • Last Name

Optional fields (map if available)

  • Phone
  • Address
  • Postcode
  • Source / Origin
  • Any other standard contact fields

Columns you do not map are ignored and not imported.


Step 3 — Validation Preview

Before any data is written to your account, NurtureHub runs a validation pass and displays a preview of the results.

Errors flagged in the preview

ErrorDescription
Duplicate email (in file)Two or more rows in your CSV share the same email address.
Duplicate email (existing contact)A row's email matches a contact already in your NurtureHub account.
Missing required fieldA row is missing Email, First Name, or Last Name.

Rows with errors are highlighted. You can:

  • Proceed — import valid rows only, skipping errored rows.
  • Cancel — go back and fix the source file before re-uploading.

Step 4 — Import & Post-Import Report

Once you confirm, NurtureHub performs a bulk insert with email-based deduplication. A post-import report is displayed immediately after completion.

Report summary includes:

  • Imported — contacts successfully added.
  • ⏭️ Skipped — rows skipped because the email already exists in your account.
  • Rejected — rows that failed validation and were not imported.

You can download the report for your records.


Categorising Imported Contacts

Imported contacts arrive in NurtureHub with no category assigned. NurtureHub will prompt you to categorise them.

Assigning a category (e.g. Seller, Landlord, Buy-to-Let Investor) is what triggers the AI to generate a personalised three-email nurture sequence for each contact. Until a category is assigned, no emails will be sent.

To categorise imported contacts:

  1. From the Contacts page, filter by Uncategorised.
  2. Select one or more contacts.
  3. Choose a category from the Assign Category dropdown.
  4. The AI nurture sequence is generated automatically.

Frequently Asked Questions

Can I re-import the same file twice? Yes. Deduplication by email means existing contacts will be skipped — no duplicates will be created.

What happens to contacts that are skipped due to duplicates? Their existing record in NurtureHub is left unchanged. The import does not overwrite or merge data.

Is there a row limit? No hard limit is documented for this release. For very large files, import time may vary.

Which CRM formats are supported natively? agentOS, Reapit, and Alto standard contact exports are recognised without any reformatting.