How to Migrate from GoHighLevel to HubSpot, Pipedrive or Salesforce
Moving off GoHighLevel means exporting contacts and opportunities by CSV, pulling conversation history through the API, and rebuilding workflows by hand, because neither export nor the API carries workflow steps. A contact export keeps only the latest note, cut to 255 characters. Here is what moves, what doesn't and the order to cut over.
Part of the guide: GoHighLevel expert
Key takeaways
- Contacts and opportunities export to CSV natively. Conversations, tasks and automation history do not come with a contact export, according to HighLevel's help center.
- A contact export includes only the latest note, up to 255 characters. If your team logs call notes in GoHighLevel, export notes separately through the API before you cancel.
- Workflows cannot be exported to another CRM. HighLevel's workflow API returns only the name, status, version and dates, not triggers or steps, so every automation is rebuilt by hand.
- Cut over in this order: phone numbers and A2P plan, data export, import into the new CRM, rebuild automations, run both in parallel, then cancel. HighLevel deletes numbers and A2P 14 days after cancellation and all data after 90.
- HubSpot takes up to 1,048,576 rows per import file, Pipedrive 50,000 and Salesforce's Import Wizard 50,000, so most small GoHighLevel accounts move in one file per object.
Most guides on this topic go the other way: how to move from HubSpot into GoHighLevel. Moving out is less documented and has a few traps that only show up after you cancel. The biggest: a GoHighLevel contact export keeps only the latest note, cut to 255 characters, and it carries no conversations, tasks or automation history. Workflows don’t export to anything outside GoHighLevel at all.
This guide covers what moves, what doesn’t, how to get the hard parts out, and the order to cut over so you don’t lose phone numbers or data. It applies whether you’re heading to HubSpot, Pipedrive, Salesforce or another CRM.
Checked on October 6, 2026 against HighLevel’s help center, its API documentation and the destination CRMs’ import documentation.
What exports from GoHighLevel, and what doesn’t?
| Data | How it leaves GoHighLevel | What to watch |
|---|---|---|
| Contacts (names, emails, phones, tags, custom fields) | CSV: Contacts > Smart Lists > More > Export, download from Bulk Actions | Only Agency and Location Admins can download; files expire after 30 days |
| Notes | Contact export includes only the latest note, up to 255 characters | Full note history needs the API |
| Companies | CSV export from Contacts > Companies | Export before contacts so you can re-link them |
| Opportunities (deals) | CSV: Opportunities > three-dot menu > Export Opportunities | Pipelines and stages must be recreated first in the new CRM |
| Conversations (SMS, email, chat) | No native export found in HighLevel’s help docs; API or marketplace app | Decide early if you need them for compliance |
| Tasks | Not in the contact export | API, or recreate open tasks only |
| Workflows and automations | Cannot be exported to another CRM | API returns name, status and dates only; rebuild by hand |
| Funnels, websites, forms | Stay in GoHighLevel | Rebuild or move to a website platform |
| Phone numbers and A2P | Port out to a new provider | Deleted 14 days after cancellation |
Sources: HighLevel help center articles on contact export (updated December 24, 2025), opportunities (updated April 21, 2026) and cancellation (updated August 18, 2026); HighLevel API documentation for workflows and conversations. Checked October 6, 2026.
The two rows that cause the most damage are notes and conversations, because nobody notices they’re missing until a salesperson opens a migrated contact and finds no history.
How do you get notes and conversations out?
HighLevel’s contact export article says the CSV includes “only the latest note of up to 255 characters” and that exports don’t include automation history, conversations or tasks. If your team logs call notes in GoHighLevel, the CSV will silently drop most of them.
The route for full history is the HighLevel API:
- Conversations. The API’s get messages by conversation endpoint returns a conversation’s messages in pages (20 per call by default), with the message body, direction, type, status and date. A script loops through each contact’s conversations and writes them to a file you can attach to records in the new CRM.
- Notes. Pull every note per contact through the API rather than relying on the CSV column.
- Where it lands. Most CRMs can’t recreate a two-way SMS thread as native messages. The practical options are a single “GoHighLevel history” note per contact, or a file attachment, so the context survives even if it isn’t threaded.
HighLevel’s ideas board has open requests for a one-button conversation export, and marketplace apps offer exports for a fee. If you only need recent history, an export app can be quicker than a custom script; for compliance records, check what the app includes before relying on it.
Can you move GoHighLevel workflows to another CRM?
No. Snapshots copy workflows only between GoHighLevel accounts. HighLevel’s workflow API returns each workflow’s id, name, status, version and dates, but not its trigger, conditions, waits or actions.
So the job is to document, then rebuild:
- List every published workflow. Drafts are usually abandoned experiments; confirm before skipping them.
- For each one, write down the trigger, filters, wait steps, actions and any custom values it uses.
- Mark which ones still matter. Accounts that grew over time often have several workflows doing the same job.
- Rebuild the keepers in the new CRM: HubSpot workflows, Pipedrive automations or Salesforce Flow.
Rebuilding is also a chance to fix what was broken. If the old account had duplicate or conflicting automations, our guide on whether to fix or rebuild a GoHighLevel account covers how to tell.
In what order should you cut over?
- Plan phone numbers and texting first. Start number ports with your new provider before anything else; ports take time and the number must not be released early. Your A2P 10DLC brand and campaign are tied to the old provider, so plan to register again. Our cancellation FAQ covers the 14-day deletion window.
- Export everything you’ll need, including notes and conversations through the API, while the account is fully active.
- Import in dependency order: companies, then contacts linked to them, then deals, then notes and history. Recreate pipelines and stages in the new CRM before importing deals.
- Rebuild automations, forms and calendars, then point website forms and ad lead forms at the new CRM.
- Run both in parallel for at least one full sales cycle or a couple of weeks. Check that every new lead lands in the new CRM and gets its first response.
- Cancel GoHighLevel last, after ports complete and you’ve confirmed nothing still writes to the old account.
How much data can the new CRM take in one import?
For most single GoHighLevel accounts, one file per object is enough. These limits come from each vendor’s documentation; our CRM import limits comparison has the full table with sources.
| Destination | Rows per import file | Notes |
|---|---|---|
| HubSpot (paid) | 1,048,576 | 512 MB per file; free tools 20 MB |
| Pipedrive | 50,000 | Under 50 MB, one tab |
| Salesforce Data Import Wizard | 50,000 | Data Loader for larger loads |
| Zoho CRM | 10,000 to 30,000 per batch by edition | CSV above 5,000 records |
| monday CRM | Under 8,000 | 10 MB per file |
Clean the files before importing: deduplicate on email, normalize phone numbers to one format and remove test contacts. The data cleaning guide covers how.
Which CRM should you move to?
That depends on why you’re leaving. If you’ve outgrown GoHighLevel’s sales side (multi-stakeholder deals, forecasting, products, permissions), HubSpot, Pipedrive and Salesforce are the usual destinations. If you’re leaving because of cost or a messy build, check first whether a cleanup solves it; a rebuilt GoHighLevel account is often cheaper than a new platform.
- HubSpot: marketing and sales in one place, strong for inbound teams. See GoHighLevel vs HubSpot.
- Pipedrive: a simple, sales-first pipeline for small teams. See GoHighLevel vs Pipedrive.
- Salesforce: complex deals, territories and approvals. See GoHighLevel vs Salesforce.
- monday CRM: boards-based and priced per seat, for teams that also run projects in monday.com. See GoHighLevel vs monday.com.
The CRM pricing comparison shows what each costs for 5, 10 and 25 users. GoHighLevel’s flat price beats per-seat CRMs above a certain team size, so price the move before you commit to it.
Get the migration done without losing history
aibrevo’s CRM team runs migrations into HubSpot, Pipedrive, Salesforce and the other major CRMs, including the API pull for notes and conversations, workflow documentation and rebuild, and the cutover plan. Book a short call with your contact count, pipelines and a list of the workflows you rely on, and we’ll tell you what moves cleanly and what needs rebuilding.
Start with the contact export itself: how to export contacts from GoHighLevel covers the menu path, the file contents and the gaps.
Sources
- HighLevel Support, How to export contacts to a CSV, updated December 24, 2025: fields, 255-character note limit, no conversations or tasks, 30-day file availability, admin-only downloads.
- HighLevel Support, Opportunities FAQs, updated April 21, 2026: export path.
- HighLevel Support, Export companies to CSV.
- HighLevel Support, What happens to your data when you cancel, updated August 18, 2026.
- HighLevel API, Get messages by conversation ID and Get workflow, checked October 6, 2026.
- HighLevel ideas board, Download SMS conversations (feature request).
- Destination import limits: see CRM import limits compared for HubSpot, Pipedrive, Salesforce, Zoho and monday.com documentation links.