Importing Contacts from CSV
Import contacts from CSV or Excel files with automatic column mapping
Save time and migrate your contact database quickly by importing contacts from CSV or Excel files. Demeterrr's intelligent import wizard automatically detects column formats, including automatic InputKit migration detection.
This guide walks you through the entire import process from file preparation to troubleshooting common errors.
Overview
The CSV import feature supports:
- File formats: .csv, .xlsx, and .xls files
- File size: Up to 10MB per import
- Upload method: Drag-and-drop or browse to select
- Automatic mapping: Intelligent column detection including InputKit format
- Preview: See exactly what will be imported before processing
- Error handling: Detailed error reporting with row numbers
Preparing Your File
Before importing, ensure your spreadsheet is properly formatted:
Required Columns
Each row must have at least one of these:
- Email address
- Phone number
Rows without either will be skipped and reported as errors.
Recommended Columns
For best results, include:
- First name
- Last name
- Phone
- Preferred language (EN or FR)
- Organization name
- Location name (if applicable)
Data Quality Tips
- Remove duplicates in your source file. Duplicate emails will be skipped during import
- Standardize phone formats. Any format works, but consistency helps
- Check NPS scores are between 0-10 if included
- Match location names exactly as they appear in your Demeterrr account
- Use UTF-8 encoding if your file contains accented characters (é, à, etc.)
Step-by-Step Import Process
Access the import wizard from Settings > Import in your dashboard.
Step 1: Upload File
- Drag your CSV or Excel file into the upload zone, or click to browse
- The system validates your file size and format
- Click Next to proceed to column mapping
File Requirements:
- Maximum 10MB
- Formats: .csv, .xlsx, .xls
- Must contain at least one row of data
Step 2: Map Columns
This is where Demeterrr's intelligent mapping shines. The system analyzes your column headers and automatically suggests mappings.
Automatic InputKit Detection
If you're migrating from InputKit, the system automatically detects their French column format. When at least 4 InputKit column names are recognized, you'll see an InputKit Detected badge at the top of the page.
InputKit columns are automatically mapped as follows:
| InputKit Column | Maps To | Demeterrr Field |
|---|---|---|
| Prénom | First Name | firstName |
| Nom | Last Name | lastName |
| Organisation | Organization | organizationName |
| Courriel | ||
| Numéro de téléphone | Phone | phone |
| Bureau | Location | location (by name) |
| NPS | NPS Score | npsScore |
| Avis laissé | Has Left Review | hasLeftReview |
Generic Column Detection
For non-InputKit files, the system uses smart regex patterns to detect common column names:
- Email: Matches "email", "e-mail", "courriel", "mail"
- Phone: Matches "phone", "téléphone", "mobile", "cell"
- First Name: Matches "first name", "prénom", "firstname", "given name"
- Last Name: Matches "last name", "nom", "lastname", "surname", "family name"
- And more...
All pattern matching is case-insensitive.
Manual Column Adjustment
You can override any automatic mapping using the dropdown menus:
- Each column from your file appears as a row
- Use the dropdown to select the Demeterrr field it should map to
- Select Skip for columns you don't want to import
- Review the Preview section showing the first 3 rows of data
The Data Preview table at the bottom shows 5 sample rows with your current mappings applied, so you can verify everything looks correct before proceeding.
Step 3: Review Import
Before processing begins, review the import summary:
- Total rows to be imported
- Fields mapped count
- Duplicate warning: Any rows with duplicate emails will be skipped
This is your last chance to go back and adjust mappings. Click Start Import when ready.
Step 4: Processing
The system processes your import in the background. You'll see:
- A progress spinner
- Current processing status
- Estimated completion time for large imports
Most imports under 1,000 contacts complete in under 30 seconds.
Step 5: Complete
The results screen shows detailed success and error information:
Success Card (Green)
- Number of contacts successfully imported
- Number of organizations created (if applicable)
Error Card (Red, if applicable)
- Number of rows that failed
- List of first 50 errors with specific row numbers and reasons
Error List Details
Each error includes:
- Row number from your original file
- Specific validation message (e.g., "Missing email and phone", "Invalid NPS score")
You can download the error list, fix the issues in your source file, and re-import just the failed rows.
Next Steps Buttons
- Import Another File: Start a new import
- View Contacts: Jump directly to your contact list
InputKit Migration
If you're switching from InputKit to Demeterrr, the import process is seamless:
- Export your contacts from InputKit as CSV
- Upload the file to Demeterrr's import wizard
- The system automatically detects the InputKit format and shows the detection badge
- All French column names are automatically mapped to the correct Demeterrr fields
- Review and import
Your InputKit data structure is fully preserved, including:
- Contact details and language preferences
- Organization associations
- NPS scores and review status
- Location assignments
Column Mapping Reference
Complete list of importable fields:
| Field | Required | Format | Notes |
|---|---|---|---|
| One of email/phone | Valid email format | Must be unique; duplicates skipped | |
| Phone | One of email/phone | Any format | Can include dashes, spaces, parentheses |
| First Name | No | Text | - |
| Last Name | No | Text | - |
| NPS Score | No | Number 0-10 | Values outside range cause errors |
| Has Left Review | No | Boolean | "yes", "true", "1" = true |
| Location | No | Text | Must match existing location name exactly |
| Organization Name | No | Text | Creates new organization if doesn't exist |
Troubleshooting Common Errors
"Missing email and phone"
Cause: Row has neither email nor phone number Solution: Add at least one contact method to the row
"Duplicate email: [email@example.com]"
Cause: Email already exists in your database Solution: Update the existing contact manually, or remove from import file
"Invalid NPS score"
Cause: NPS value is not between 0-10 Solution: Correct the value to be within range, or leave blank
"Location not found: [Location Name]"
Cause: Location name doesn't match any in your account Solution: Create the location first, or fix the spelling to match exactly
"Invalid email format"
Cause: Email doesn't match standard format (e.g., missing @) Solution: Fix the email address format
"File too large"
Cause: File exceeds 10MB limit Solution: Split into multiple files, or remove unnecessary columns
"No data rows found"
Cause: File contains only headers, no data Solution: Ensure file has at least one row of contact data
Import Limits and Performance
- Maximum file size: 10MB
- Maximum errors logged: 100 per import (first 50 shown in UI)
- Typical processing speed: ~100 contacts per second
- Recommended batch size: Under 5,000 contacts per file for optimal performance
For very large databases (50,000+ contacts), consider splitting into multiple imports or contact support for assistance.
Next Steps
// Related articles
Managing Your Contacts
Create, edit, search, and organize your customer contact database
Contact Preferences and Consent
Manage language preferences and consent tracking for your contacts
Organizations
Group contacts by company or organization for B2B relationship management
Was this article helpful?
Let us know if you found this article helpful or if you need more information.
Join hundreds of businesses already using demeterrr to collect feedback, boost reviews, and grow faster.
Start Your Trial