Skip to content

Contact bulk import

Import many contacts at once from a spreadsheet. A short assistant walks you through four steps: pick a file, line up your columns, choose a few options, and watch the import run.

Where to find it
Contacts list → Bulk Import button
Who can use it
Team members who can create contacts

Bulk import is the fastest way to bring a list of contacts into Nextal — for example, an HR contact list you exported from another tool, or a fresh list from a client. You open the assistant, drop in a spreadsheet, tell Nextal which column means what, and the assistant creates the contacts one by one.

The Bulk Import assistant. The four steps are always visible across the top so you know where you are.

At a glance — the four steps

Step

Name

What happens

1

Upload

Drop in a spreadsheet — CSV or Excel, up to 10 MB. Need a starting point? Download the template right from this step.

2

Map columns

Tell Nextal which column in your file matches which contact field. The assistant guesses for you on common names like “first name” or “email” — review and adjust.

3

Configure

Preview your data, choose whether to skip duplicates, optionally attach tags, and pick which clients these contacts should be linked to.

4

Import

Watch the progress bar. When it’s done, you’re sent to the contacts list with your new entries.

Opening the assistant

  1. Go to your contacts list

    Click Contacts in the main menu.

  2. Click Bulk Import

    You’ll find the button on the list toolbar. The assistant opens on its own page.

Step 1 — Upload your spreadsheet

Drop your file in the middle, or click to browse. The template link sits below the drop zone.

What file types work:

  • CSV (.csv) — the simplest option, opens in any spreadsheet app
  • Excel (.xlsx or .xls)

Size limit: 10 MB. If your file is bigger, you’ll see “File is too large. Maximum size is 10MB.” Try splitting it into two imports.

Wrong file type: if you drop in a PDF or image by mistake, you’ll see “Invalid file type. Please upload CSV or Excel files only.”

Need a template? Click the Download template link near the drop zone. You’ll get a CSV with the right column headers — fill it in with your data, save, and drop it back into the assistant.

Step 2 — Tell Nextal what your columns mean

One row per column in your spreadsheet. Pick the matching contact field from the dropdown. Required fields are highlighted in red until mapped.

You’ll see one row per column in your file. For each one, pick which contact field it should fill. The assistant tries to guess for you — if your column is called “First Name” or “Email”, it’ll be pre-selected. Review each row and adjust if needed.

The three required fields

You can’t move on until these are mapped:

Until all three are mapped, the Next button stays disabled.

What else you can import

You can map any of these 44 fields, organised by category:

Category

Fields

Required

First Name, Last Name, Email

Basic info

Phone number, Position, Role, Title, Department, Company, Description

Additional contact details

Mobile phone, Work phone, Fax, Alternate email

Address

Address, City, State/Province, Postal code, Country

Preferences

Preferred language, Preferred communication channel, Timezone, Contact manager ID

Professional

Years of experience, Skills (comma-separated), Certifications (comma-separated), Education

Social media

LinkedIn, Facebook, Twitter, Google, Instagram, Website, Blog, Portfolio

Relationship

Source, Referred by, Relationship, Status, Rating

Lists

Tags (comma-separated), Client IDs (comma-separated), Entity IDs (comma-separated)

Notes

Notes

Columns that don’t match anything can be left as “Don’t map” — Nextal will simply ignore them.

Small clean-ups Nextal does for you

Before each contact is created, the assistant gently tidies the data:

  • Emails are converted to lowercase and trimmed — so Mary.Smith@Acme.COM becomes mary.smith@acme.com.
  • Phone numbers keep only digits, plus signs, dashes, parentheses and spaces — random characters from formatting are stripped out.
  • Years of experience and Rating are turned into numbers — text like “five years” won’t import correctly; use a numeric value.
  • Client IDs from your spreadsheet are merged with whatever clients you pick in the next step (no duplicates).

Step 3 — Configure your import

Preview at the top, options below. Skip duplicates is on by default. The Client Assignment picker is unique to contacts.

Preview your data

The first ten rows of your file are shown with all your mapping rules applied. This is the last chance to catch a wrong mapping before you commit. If a column looks off, click Back and adjust step 2.

Skip duplicates checkbox

Two contacts in Nextal can’t share the same email address. The checkbox tells the assistant what to do when it finds a contact whose email already exists:

  • On (default) — duplicates are silently skipped and counted as success. This is what you want when re-running an import after a failure: the contacts already created are simply ignored.
  • Off — duplicates are reported as errors. Use this when you want a clean reconciliation report of exactly which contacts in your file were already in Nextal.

Add tags to every imported contact

Pick or type tags in the multi-select. Every contact in this import will get those tags, in addition to anything from your spreadsheet’s Tags column. Handy for tagging a whole batch with something like “imported-2026-02” so you can find them later.

Attach the batch to one or more clients

Pick the clients these contacts work for. Every contact in this import will be linked to those clients, on top of any client IDs from your spreadsheet. Perfect when you’re importing 200 HR contacts from a single agency client export — set the client once here instead of repeating its ID in 200 rows.

Step 4 — Run the import

The progress bar fills as each contact is created. Errors appear in a list below the counters.

Click Start Import and watch the progress bar. For each row in your file:

  1. Nextal applies the column mapping
  2. Runs the small clean-ups above
  3. Validates the email and required fields
  4. Creates the contact
  5. Adds your tags and client links
  6. Pauses briefly, then moves to the next row

You’ll see three counters update in real time: Processed, Successful, Failed. Errors are listed below the bar with the row number and a short explanation (typically a missing required field or a bad email format).

When the import finishes successfully

You’ll get a notification at the top right (“Successfully imported N contacts”), and after a couple of seconds you’re sent back to the contacts list — your new entries are right there waiting.

If every row failed

No notification, no redirect. You stay on the import step with the error list visible. Read the errors, fix your file, then start over from step 1.

How this compares to the candidate import

If you’ve used the bulk import for candidates before, here’s what’s the same and what’s different:

Aspect

Candidate import

Contact import

Paths

Two: spreadsheet or a folder of CVs

One: spreadsheet only

Fields you can import

21

44

Required fields

First name, last name, email

Same

Duplicate check

By email

Same

Extra step option

Assign to a job

Attach to clients

After success

Stays on the page with retry options

Sends you back to the contacts list

Tips

  • Test with three or four rows first. Trim your file down, run the assistant end-to-end, and check the resulting contacts in the list. If the column mapping was wrong, fixing four contacts is fast.
  • Use Attach to clients for client-supplied lists. If a client sends you their HR contacts, set their client once in Step 3 rather than typing the client ID in every row.
  • Leave Skip duplicates on for re-runs. If an import fails halfway through, fix your file and run it again — the contacts already created will be silently skipped.
  • Watch out for email collisions. Two contacts can’t share an email. If you find someone has two work emails on file, pick one before importing.