Browse documentation

Import your pipeline from a CSV

Move your contacts, deals, and notes into NeoKivo from a CSV. The import wizard reads your file in the browser, maps columns for you, and lets you resolve owners and stages before anything is saved.

Updated 2026-07-06

Open Data → Import & export in the app and drop in a CSV. NeoKivo parses the file in your browser, so nothing leaves your machine until you confirm the import. You can bring in three kinds of records: contacts, deals, and notes.

Companies are not a separate import. When a contact or deal row names a company, NeoKivo creates or links that company for you as part of the import.

The steps

  1. 1Upload. Drag a .csv onto the drop zone, or click Browse files. Only .csv is accepted.
  2. 2Confirm the type. NeoKivo guesses whether the file is contacts, deals, or notes from its headers, and shows how many columns it recognized. If the guess is wrong, pick the right type yourself.
  3. 3Map columns. NeoKivo matches your headers to its fields automatically. Review the mapping, adjust anything, and check the live preview of the first few rows.
  4. 4Resolve owners and stages (deals only). Point each owner and stage value in your file at a real teammate and pipeline stage.
  5. 5Import. Confirm, and NeoKivo writes the records. A summary tells you how many were imported, updated, or skipped.

Mapping columns

NeoKivo recognizes the common export headers from other CRMs and spreadsheets, so most columns map themselves. Turn on "Review all mappings" to see every field and set it by hand. A field can be mapped to a column or skipped. The preview shows exactly what each record will look like, and flags rows that will be skipped because a required field (like a contact name or deal title) is empty.

A single import handles up to 5,000 rows. Split larger files and run them in batches. There is no file-size limit beyond the row count.

Deals: owners and stages

Deals get an extra step. For every distinct owner value in your file, choose the teammate it belongs to, or leave it unassigned. NeoKivo matches on email first, then name, and marks the ones it is confident about. Stage values map to the stages of your default pipeline. If a stage in your file does not exist yet, you can create it in place, and it is added to that pipeline.

Unmapped columns become custom fields

Also for deals: any column that does not map to a built-in field is offered up on the resolve step. For each one you can ignore it, map it to an existing custom field, or create a new field — naming it and picking a type of text, number, or date. NeoKivo infers the type from the column's values as a starting point. A counter shows how many custom fields you have used against your workspace limit.

Duplicate contacts

When you import contacts, NeoKivo matches rows against existing contacts by email, so an import never creates a second copy of someone you already have. Choose what happens on a match: Skip keeps the existing contact untouched, or Update fills in that contact's blank fields from the row. Rows without an email cannot be matched and are always added. Deals and notes are not de-duplicated.

When it finishes

The wizard shows a plain summary — how many records were imported, updated, and skipped — and lists any per-row warnings, such as a deal whose contact name matched more than one person and so was left unlinked. From there you can jump to People or the pipeline, or import another file.

Spotted something out of date? Email hello@neokivo.com.