Import & Export Setup
Configure Import and Export workflows to bulk manage contact data, migrate from other CRMs, and create backups. This guide walks through preparing your first CSV import, mapping fields correctly, handling duplicates, and exporting contact lists with custom columns.
Prerequisites
Before importing or exporting data, ensure you have:
- Admin access to your GoHighLevel sub-account
- A CSV file prepared with contact data (for imports)
- Custom fields created in advance if your CSV includes non-standard fields
- A clear understanding of your deduplication preferences (email or phone priority)
Prepare Your CSV File
Structure your CSV file to match system requirements, reducing errors and ensuring accurate field mapping during import.
Open your contact data in Excel, Google Sheets, or any spreadsheet tool.
Verify the file meets basic requirements:
- Format: .csv files only (not .xlsx or .xls)
- Size limit: Under 30MB
- Sheet count: Only one sheet per file
- Header row: Required, matching field names in the CRM
- First row: Must not be blank
Ensure every contact record includes at least one of these identifiers:
- First Name
- Email Address
- Phone Number
If you plan to update existing contacts, include a unique identifier such as Contact ID, Email, or Phone based on your duplicate detection settings.
Format fields correctly:
- Phone Numbers: Use E.164 format (
+11234567890) or US standard without special characters. Remove spaces, parentheses, and dashes. - Email Addresses: Must include @ and domain (for example,
[email protected]). - Date Fields: Use consistent format like MM/DD/YYYY or YYYY-MM-DD throughout the file.
- Multi-Select Fields: Separate values with commas (for example,
VIP, Lead, Active). Values must match existing options exactly. - Tags: Separate with commas or semicolons (for example,
Blue, Yellow). Tags are created automatically if they don’t exist. - Contact Owner: Use the exact first and last name of an existing user (for example,
John Smith).
Remove any columns you don’t need and rename column headers to match your CRM field names exactly.
Remove duplicate rows by highlighting all data, using your spreadsheet tool’s “Remove Duplicates” feature, and confirming only unique rows remain.
Save the file as a .csv file. If working in Excel or Google Sheets, use “Save As” or “Download” and choose CSV format.
Create Custom Fields in Advance
If your CSV includes columns for custom fields that don’t exist in your account yet, create those fields before importing to ensure proper mapping.
Navigate to Settings > Custom Fields and select the Contact object type from the dropdown.
Click + Add Custom Field to create a new field.
Enter a Field Name that matches the column header in your CSV exactly (for example, “Lead Score,” “Industry,” or “Referral Source”).
Choose the Field Type that matches the data in your CSV column. Options include:
- Text (Single Line) for short text values
- Large Text for longer descriptions or notes
- Number for numeric values
- Monetary for currency amounts
- Date Picker for date values
- Dropdown (Single) for categories or statuses
- Dropdown (Multi-Select) for tags or multiple attributes
- Checkbox for yes/no tracking
- Radio Button for single-choice selections
If using dropdown fields, add all possible values that appear in your CSV. Click + Add Option and enter each value. The import will fail if dropdown values in your CSV don’t match options in the field definition.
Click Save to create the field. Repeat for all custom fields in your CSV.
Import Contacts
Upload your CSV file, map columns to CRM fields, and configure duplicate handling to create or update contact records.
Navigate to Contacts from the left menu, click Smart Lists, then click Import Contacts. Alternatively, go to Opportunities and click Import in the top right.
Choose your import type:
- Contacts only to import contact records without opportunity data
- Opportunities only to import deal records
- Both contacts and opportunities to import linked records together
Click Upload File and select your prepared CSV file.
Choose your import behavior:
- Create Only: Adds new records, skips existing ones
- Update Only: Updates existing records based on match criteria
- Create & Update: Creates new records and updates existing matches
Select your duplicate detection method. The system defaults to matching contacts by email first, then phone if email isn’t found. You can customize this to:
- Filter by Email, then Phone: Looks for email first; if not found, checks phone
- Filter by Phone, then Email: Reverses the priority
- Filter by Contact ID: Uses the unique system-generated ID (useful when updating specific records)
Map fields by matching each CSV column to its corresponding CRM field. The import wizard displays your CSV columns alongside available CRM fields. Map each column by selecting the appropriate field from the dropdown.
Mapping tips:
- Check Don’t update Empty Values to preserve existing data when your CSV has blank cells
- Unmapped columns will be skipped unless you select Don’t import data for unmapped columns
- Multiple email addresses and phone numbers are automatically added as additional fields
- If contacts and opportunities appear on the same row, they’re automatically associated
Verify all required fields (at minimum, Name, Email, or Phone) are mapped before proceeding.
Configure post-import actions:
- Create a Smart List: Automatically group imported contacts into a new list by entering a list name
- Add to Workflow: Trigger an automation sequence for all imported contacts by selecting a workflow
- Apply Tags: Add one or more tags to help identify this batch
Check the confirmation box to verify that all contacts or opportunities are ready for import, then click Complete Import.
The import processes in the background. Monitor progress in Contacts > Bulk Actions.
Review Import Results
Verify your import completed successfully, download error logs if needed, and fix any rows that failed.
Navigate to Contacts > Bulk Actions to view import status.
Locate your import row (Operation: Import, Status: Processing or Complete).
Once the status changes to Complete, review the import summary showing how many contacts were created, updated, or failed.
If any rows failed, click the Download icon next to the error log entry to download a CSV file listing failed rows and error reasons.
Open the error log in Excel or Google Sheets. Common error reasons include:
- Invalid phone number format: Reformat phone numbers to E.164 or US standard without special characters
- Missing required fields: Add First Name, Email, or Phone to rows that are missing them
- Duplicate Contact IDs: Remove duplicate rows or use a different unique identifier
- Invalid dropdown values: Update dropdown values to match options defined in the custom field
- Owner not found: Update the Owner column to include the first and last name of an existing user
Fix the errors in your CSV, save the corrected file, and re-import just the failed rows using the same import process.
If you enabled the Create a Smart List option, navigate to Contacts > Smart Lists and open the list you created. Review the imported contacts to spot-check data accuracy.
If duplicates were created, use the Manage and Merge Duplicates tool under Contacts to consolidate them.
Export Contacts
Download contact data as a CSV file for external analysis, backups, or updating records in bulk.
Navigate to Contacts > Smart Lists.
Use Advanced Filters to narrow your selection. Filter by tags, custom fields, date added, or any other criteria to export only the contacts you need.
After applying filters, check individual contacts by clicking the checkboxes next to their names, or click the checkbox beside the filter fields and select Select All Contacts to choose all filtered results.
Click Manage Fields to customize which columns appear in your export. Check or uncheck fields to include or exclude them. Only visible columns will be exported.
Common columns to include:
- First Name, Last Name, Email, Phone
- Tags, Source, Status, Contact Owner
- Custom Fields (if needed for external analysis)
Click More > Export, or click the three-dot menu next to + Add Contact and select Export.
Confirm your selection in the export modal and click Export. A success message will confirm the export has started. You can continue working while it processes in the background.
You’ll receive a push notification when the export is ready. To download, navigate to Contacts > Bulk Actions, locate your export row (Operation: Export, Status: Complete), and click the Download icon to save the CSV to your local drive.
The file remains available for 30 days. After that, the download link is disabled.
What’s included in exports:
- All visible fields you selected in the Manage Fields step
- Notes: Only the latest note is exported, truncated to 255 characters
- Tags: All tags appear in a comma-separated list
- Custom Fields: Included if visible in the column settings
- Automation History: Not included (emails sent, SMS logs, workflow steps)
Migrate from Another CRM
Move contact data from another CRM (like HubSpot, Salesforce, Keap, Zoho, or Pipedrive) by exporting, cleaning, and importing your data.
Export from your current CRM:
Use your current CRM’s bulk export option to download contacts to a CSV file. Include contact details (name, email, phone), tags, statuses, custom fields, and opportunity data if needed.
Clean and format your CSV:
Open the exported CSV in Excel or Google Sheets and:
- Remove any columns you don’t need
- Reformat phone numbers to E.164 or US standard (no special characters)
- Validate email addresses (must include @ and domain)
- Rename column headers to match your new CRM field names
- Remove duplicate rows
- Ensure only one sheet exists in the file
Platform-specific notes:
- Keap: Phone numbers export with parentheses and dashes. Highlight the phone column, reformat it to plain numbers (no special characters), then re-import.
- Salesforce: Custom fields may use API names. Rename headers to match your new CRM field labels.
- HubSpot: Multi-select fields may use semicolons. Replace with commas for compatibility.
Create custom fields in advance:
If your old CRM had custom fields (like “Lead Score,” “Industry,” or “Referral Source”), create matching custom fields in your new CRM before importing. Navigate to Settings > Custom Fields and add fields with the same label and data type.
Import and verify:
Upload your cleaned CSV using the steps in the Import Contacts section. After the import completes:
- Review the import summary in Bulk Actions
- Download the error log (if any rows failed) and fix issues
- Spot-check a few records to confirm data accuracy
- Merge any duplicates using the Manage and Merge Duplicates tool
Set up automations:
Once contacts are imported, configure workflows to send welcome emails to newly imported leads, assign contacts to team members based on tags or territories, update statuses, or trigger nurture sequences.
Test Your Setup
Verify your import and export workflows by creating test records, running a small import, and exporting a filtered list.
Create a test CSV file with 5-10 test contact records. Include all required fields (First Name, Email, Phone) and at least one custom field if you created any.
Navigate to Contacts > Smart Lists > Import Contacts and upload your test CSV.
Choose Create & Update as the import behavior and map all fields. Check Don’t update Empty Values to preserve existing data.
Enable Create a Smart List and name it “Test Import.” Click Complete Import and monitor progress in Bulk Actions.
Once the import completes, navigate to Contacts > Smart Lists and open the “Test Import” list. Verify all test contacts appear correctly with accurate field data.
Download the error log (if any rows failed) and review the error reasons. Fix any formatting issues in your test CSV and re-import the corrected rows.
Test export by navigating to Contacts > Smart Lists, applying a filter (for example, Tags contains “Test Import”), and selecting all filtered contacts.
Click Manage Fields to customize columns, then click More > Export. Confirm the export starts successfully.
Navigate to Contacts > Bulk Actions and verify the export row appears with Status: Processing or Complete. Once complete, click the Download icon and open the CSV. Verify all selected contacts and columns are included.
Delete the test import by navigating to the “Test Import” Smart List, selecting all contacts, and using the bulk actions menu to delete them. Confirm the contacts are removed from your database.
Next Steps
Now that Import and Export are configured, explore related features to build a complete data management workflow:
- Contact Manager to manage all contacts with detailed profiles and activity timelines
- Custom Fields to capture business-specific data points for contacts
- Smart Lists to create filtered views of contacts based on attributes
- Workflow Builder to automate actions when contacts are imported
- Tags & Segments to organize contacts for targeted marketing
For a complete overview of Import and Export features, capabilities, and best practices, read the Import & Export Guide.