← All posts

October 15, 2026 · 7 min read

How to Export and Import Contacts in GoHighLevel (and Import a Snapshot)

Arslan Mumtaz

By Arslan Mumtaz, Senior CRM Developer and founder of Arslan Automates

Sooner or later every GoHighLevel account needs data moved: exporting contacts for a backup or another tool, importing a list from a spreadsheet or old CRM, or loading a snapshot into a new sub-account. Each is simple until it goes wrong: missing custom fields, duplicate contacts, or an import that suddenly texts 5,000 people. This guide covers how to do all three safely.

1. How to export contacts from GoHighLevel

  1. Open Contacts in the sub-account, or a Smart List if you only want a segment (for example a tag or a date range).
  2. Tick the checkbox at the top to select the page, then choose Select all to include every matching record, not just the 20 or so shown on screen.
  3. Choose the Export contacts bulk action.
  4. Download the CSV file and open it to check it.

Things to know:

2. Prepare a CSV for import

Most import problems are fixed before you upload:

3. How to import contacts into GoHighLevel

  1. Go to Contacts and choose Import.
  2. Upload your CSV file.
  3. Map each column to a contact field or custom field. Standard fields usually match automatically; check every row anyway.
  4. Choose how existing contacts are handled (add new only, or update existing records matched by email or phone) and add a tag for the batch.
  5. Optionally create a Smart List from the import so you can review it.
  6. Start the import, then spot-check a few contacts: name, phone, email, custom fields and tags.

4. Don't let an import trigger your automations

This is the most expensive mistake. If a workflow starts on "contact created" or on a tag your import adds, importing a list can send welcome texts, review requests or "thanks for your enquiry" messages to everyone at once, often to people who didn't expect them, which hurts your A2P standing and your reputation.

If messages don't send when they should, the opposite problem, see why GoHighLevel workflows stop working.

5. Moving from another CRM

Exporting from HubSpot, Salesforce, Keap or a spreadsheet works the same way: export, clean, map, test, import. Opportunities and pipeline stages usually need their own import or rebuild, and automations always need rebuilding. The full process is in how to migrate to GoHighLevel, and if you're coming from HubSpot, see GoHighLevel vs HubSpot.

6. How to import a snapshot

  1. Get the snapshot's share link from the seller or agency.
  2. Import it into your agency's snapshot library. This alone changes nothing in any sub-account.
  3. Load it into a new or existing sub-account, choosing whether matching items are overwritten or skipped (there's no merge).
  4. Fill in custom values, then connect the parts snapshots never include: phone numbers, domains, email, integrations and A2P.
  5. Test before publishing workflows.

Snapshots copy the setup, not the data: contacts and conversations don't come with them. More detail in GoHighLevel templates and snapshots. To move a whole sub-account with its data, use a sub-account transfer instead.

7. Back up your contacts regularly

GoHighLevel keeps your data, but a bad import, an accidental bulk delete or a lost agency relationship can still cost you. A simple routine:

Need a migration or clean-up done?

I'm Arslan Mumtaz, a software engineer who handles GoHighLevel imports, CRM migrations and data clean-ups, including the field mapping and automation checks that stop surprises. See pricing or monthly GHL VA plans.

Frequently asked questions

Does importing contacts into GoHighLevel cost anything?

No. Importing and storing contacts is free on every plan, and contacts are unlimited. Costs only start when you message or call them.

Can I import notes and conversation history from another CRM?

Contact details, tags and custom fields import cleanly from a CSV. Past conversations usually don't, so keep an export of the history or link to it from a custom field.

How do I clean up duplicate contacts after an import?

Use GoHighLevel's duplicate contact tools to review and merge matches by email or phone, and set your duplicate rules before the next import so it doesn't happen again.

Work with me

Want this done in your GoHighLevel account?

I'm a software engineer who builds and manages GoHighLevel for businesses and agencies in the US, UK, Europe and Australia. Pick the kind of help you need:

Related articles