Skip to main content
This guide covers the exact CSV format you need for importing contacts into HoopAI, including required columns, data formatting, and common pitfalls.

Required columns

Only one field is technically required — you need at least one identifier:
ColumnRequired?Notes
EmailRequired (if no phone)Must be a valid email address
PhoneRequired (if no email)E.164 format recommended (+1XXXXXXXXXX)
You must have at least email or phone for each row. Rows missing both are skipped.

Standard columns

Column headerFormatExample
firstNameTextJohn
lastNameTextSmith
emailEmailjohn@example.com
phoneE.164 or national+15551234567
address1Text123 Main St
cityTextAustin
stateText or abbreviationTX
postalCodeText78701
countryISO 2-letter codeUS
companyNameTextAcme Corp
websiteURLhttps://example.com
dateOfBirthYYYY-MM-DD1990-05-15
sourceTextWebsite Form
tagsComma-separatedlead, webinar, vip

Phone number formatting

HoopAI accepts multiple formats, but E.164 is strongly recommended to avoid errors:
FormatExampleAccepted?
E.164 (recommended)+15551234567Yes
National with country code15551234567Yes (assumes US if no +)
National only5551234567Yes (assumes US)
Formatted(555) 123-4567Yes (parsed automatically)
With dashes555-123-4567Yes
International+442071234567Yes
For international contacts, always include the country code with a + prefix. Without it, numbers default to US formatting and may be invalid.

Date formats

Accepted formatExample
YYYY-MM-DD (recommended)2024-03-15
MM/DD/YYYY03/15/2024
DD/MM/YYYY15/03/2024
MM-DD-YYYY03-15-2024
Use YYYY-MM-DD to avoid ambiguity between US (MM/DD) and international (DD/MM) date formats.

Custom field mapping

To import data into custom fields, use the custom field’s key (not the display name) as the column header. Find the key in Settings → Custom Fields. Example: If you have a custom field “Lead Score” with key lead_score, your column header should be lead_score.

Tags formatting

Tags can be included in a single column, separated by commas:
tags
"lead, webinar-attendee, vip"
If a tag does not exist yet, it will be created automatically during import.

Do-Not-Disturb flags

ColumnValuesEffect
dndEmailtrue / falseSets email DND
dndSmstrue / falseSets SMS DND
dndCalltrue / falseSets call DND
dndAlltrue / falseSets DND on all channels

Sample CSV template

firstName,lastName,email,phone,companyName,tags,source,address1,city,state,postalCode,country
John,Smith,john@example.com,+15551234567,Acme Corp,"lead, webinar",Website Form,123 Main St,Austin,TX,78701,US
Jane,Doe,jane@example.com,+15559876543,,"vip, customer",Referral,456 Oak Ave,Denver,CO,80202,US
Bob,Wilson,,+442071234567,UK Ltd,"prospect",Import,10 Downing St,London,,SW1A 2AA,GB

Import steps

1

Prepare your CSV

Format your CSV according to the guidelines above. Save as UTF-8 encoded CSV.
2

Go to Contacts

Navigate to Contacts and click Import → Import from CSV.
3

Upload the file

Select your CSV file. HoopAI will preview the first few rows.
4

Map columns

Map each CSV column to the corresponding HoopAI field. The system will auto-match common column names.
5

Set import options

  • Duplicate handling — choose to skip, update, or create new for duplicates
  • Tags — optionally apply a tag to all imported contacts
  • Source — set the import source for tracking
6

Import

Click Import and wait for processing. You will receive a notification when complete.

Common errors and fixes

ErrorCauseFix
”Invalid email format”Email column has invalid addressesCheck for spaces, missing @, or invalid domains
”Phone number invalid”Number missing country code or too shortUse E.164 format with + prefix
”Duplicate detected”Email or phone matches an existing contactChoose update or skip in duplicate handling
”Row skipped — no identifier”Row has no email or phoneAdd at least one identifier per row
”Date format not recognized”Ambiguous date formatUse YYYY-MM-DD format
”File encoding error”File saved in non-UTF-8 encodingRe-save as UTF-8 CSV
”File too large”CSV exceeds the upload limitSplit into multiple files under 50MB each
For detailed troubleshooting of import issues, see Bulk import troubleshooting.
Last modified on March 6, 2026