Import contacts from CSV
Import is not a “one-time admin chore.” It’s the moment your campaigns become real.
This guide covers Callaro’s contact import wizard end-to-end: how to prepare a CSV, map fields (including custom fields), and interpret import history and errors.
At a glance
- The wizard has 4 steps: Upload → Map Columns → Review → Import.
- You can map columns to standard fields or to custom fields (
cf:<key>). - Import runs as an async job — success is confirmed on the import detail page.
Before you start (what to prepare)
- A clean CSV where each row is one contact.
- A valid phone number column.
- Any fields you want your agent to use at call time (company, timezone, lead source, etc.).
If you want personalized calls, you need consistent fields. A practical minimum for most outbound programs is: phone, first_name, company, and timezone.
Step 1 — Upload
Upload your CSV. The UI will parse headers and show a preview.
If your CSV uses advanced formatting (quoted cells with commas, multiline text), keep it simple for the first pass.
Step 2 — Map Columns
For each column, choose what it maps to:
- standard contact fields (phone, first name, last name, email, company, tags, timezone)
- custom fields (shown as
cf:<key>) - skip (ignore the column)
The UI warns if multiple columns map to the same target field. Treat this as a blocker — otherwise you’ll import confusing data and spend weeks debugging campaigns that were “fine.”
Step 3 — Review
Review shows:
- how many rows will be imported
- how many rows are missing a phone number (these will be skipped)
- whether any columns remain unmapped
Step 4 — Import
Import creates an async job. After submit, you’ll be taken to an import detail page where you can track progress and errors.
Sample CSV (what “good” looks like)
Use a CSV like:
phone,first_name,last_name,email,company,timezone,tags- plus any custom fields your team cares about (example:
lead_source,plan_tier)
If your tenant has custom fields defined, the import template includes them. This is intentional — it keeps your schema consistent.
Auto-create unmapped custom fields (when to use it)
The import wizard can optionally auto-create missing custom fields for unmapped columns.
Use it when:
- you’re importing a stable field you’ll reuse (example:
lead_source) - you have an owner for your custom field schema
Avoid it when:
- the CSV is an experiment with one-off columns
- the columns are not meant to live beyond the pilot
What to check after import
- Open Import history and ensure the job completed.
- Open a sample contact and confirm fields are populated.
- If you plan to use segments, build a segment now using the imported fields.