← All posts
July 20, 2026 · 6 min read

How to Migrate From GoHighLevel (What Actually Moves)

How to migrate from GoHighLevel the honest way: what exports cleanly, what you rebuild by hand, and the export limits GHL never advertises. Step by step.

By RyMac

Migrating off GoHighLevel means exporting the two things that leave as usable files, your contacts and your opportunities, and rebuilding everything else by hand. There is no "export my account" button. Funnels, workflows, and snapshots have no file you can carry out. Do it in the right order and it's a weekend. Do it in the wrong order and it's a fire drill.

Here's the part almost nobody ranking for this keyword will tell you, because they're either GoHighLevel teaching you to migrate IN, or a competitor using the word "migration" to poach you onto their own rented platform: exactly what survives the move, exactly what doesn't, and why.

What can you actually export from GoHighLevel?

Only your contacts and opportunities leave as real files. Everything else is a rebuild, not a transfer.

Here's the honest object-by-object breakdown:

What you have in GHL How it leaves Verdict
Contacts Contacts, then export to CSV Exports (with limits, see below)
Custom fields Only if the columns are visible before export Exports if you prep first
Opportunities / pipelines CSV export, stage and value carry Data yes, history no
Calendars / booking No file export Rebuild
Workflows / automations No export exists at all Rebuild by hand
Funnels / websites / pages No portable export Rebuild
Forms / surveys No clean export Rebuild
Courses / memberships Recreate lesson by lesson Rebuild
Conversation history Not included in any export Archive manually or lose it
Phone number Port request to the carrier Ports, with lead time
A2P 10DLC registration Re-register on the new stack Does not transfer
Snapshots Restore only into another GHL account Useless for leaving

Read that column on the right. The stuff that is genuinely yours, your contact records and deals, can walk out the door. The stuff you spent months building on their land stays with the landlord. That gap is what lock-in actually is.

The contact export limit nobody mentions

Your GoHighLevel CSV export is lossy, and it fails quietly if you don't prep it. Before you export anything, make every custom field visible in the contacts table, because the export only includes the columns you can currently see.

Straight from HighLevel's own contact export documentation, three limits that bite people after they've already cancelled:

  • Visible columns only. Hidden custom fields don't export. If you didn't make them visible first, they're not in the file, and you won't notice until you're staring at a half-empty spreadsheet on the new system.
  • Notes get truncated. The export carries the latest note, clipped short, not the full history on each contact. Years of context, gone to a snippet.
  • Admin only, and the file expires. Only an admin can run the export, it processes as a background job, and the download link doesn't sit there forever.

Export contacts AND opportunities. Opportunities come out as their own CSV with stage and value intact, though the activity timeline (who did what, when) does not travel. You keep the deal, you lose the story behind it.

If you're technical, the GoHighLevel API can pull cleaner data than the CSV export, but it's rate-limited and the access most builders need sits behind the $497 plan. Even your own exit runs on a meter.

What you have to rebuild by hand

Funnels, workflows, calendars, forms, courses, and conversation history have no export format. There is no file. You document what you built, then rebuild it on the new stack.

This is the number the "we'll migrate you in 3 hours" pages hide. Three hours imports a contact CSV. It does not rebuild forty workflows. Before you cancel, walk through every automation that actually makes you money and write down what it does: the trigger, the steps, the wait times, the conditions. You don't need all forty. You need the handful that answer new leads fast and follow up on the ones who went quiet. The rest you rebuild later, better, without the cruft.

And a specific trap worth naming: snapshots are a dead end for leaving. A GHL snapshot only restores into another GoHighLevel account. It is not a backup you can open anywhere else. If someone tells you "just take a snapshot," understand that snapshot is a one-way ticket deeper into the same platform, not an exit.

What happens to your phone number and A2P registration?

Your phone number ports out, because the number is yours. Your A2P 10DLC registration and sending reputation do not, because those live with the platform.

Start the number port early. It's the one step with a real clock on it, and porting a number between carriers takes days, not minutes. The number itself is portable property.

What isn't portable: the A2P 10DLC brand and campaign registration that lets you send compliant SMS, plus the warmed sending reputation you built. You re-register on the new stack and warm up again. Plan for it so your texts don't start landing in spam the week you switch.

How to migrate off GoHighLevel without downtime

Move first, cancel last. A clean migration runs in this order, and the order is the whole game:

  1. Inventory everything first. List every workflow, funnel, calendar, and form you actually use. This is your rebuild map. Do it before you're under pressure.
  2. Prep, then export. Make all custom fields visible, then export contacts and opportunities to CSV. Verify the file before you trust it.
  3. Document what won't export. Screenshot and write out the money-making automations and any funnel you can't afford to lose.
  4. Stand up the new ground and rebuild. Get the new system live, import the CSVs, rebuild the critical automations. Test with a real lead.
  5. Port the number, re-register A2P. Start the port early, re-register your sending, warm it up.
  6. Run both systems in parallel for a few days. New leads flow into the new stack, old conversations wind down in GHL. Boring is the goal.
  7. Then cancel. Only when the new ground is live and tested. Here's how to cancel GoHighLevel without losing your data, including the retention clock that starts the moment you do.

The most common migration mistake is doing this list backwards: cancelling first out of frustration, then scrambling to rebuild from a lossy export inside a countdown. Don't burn the old house down while the keys to the new one are still at the locksmith.

How long does a GoHighLevel migration take?

For most agencies, a focused weekend. The contact import is an hour. The rebuild of your critical automations and funnels is the real work, and it's proportional to how much you built inside GHL's walls, which is exactly the point.

The competitor pages promising "1 to 3 hours" are measuring the CSV import and nothing else. That's the easy 10%. The other 90% is the rebuild they quietly do for you as a paid service, or that you do yourself with the documentation from step 3.

The migration you only do once

Here's the thing worth sitting with once your contacts are safely out: the reason this migration is painful at all is that you never owned the software. Every rented platform makes leaving lossy on purpose. The export ceiling isn't a bug, it's the fence.

That's the case for owning your CRM outright instead of renting the next one. When you hold title to the code, your contacts, pipelines, and automations live in a database you control. There's no visible- columns-only export limit, because it's your schema. There's no snapshot that only works on the landlord's account, because there's no landlord. The Allodra model is a CRM you own, running on your own accounts, wired straight to the AI providers, with no monthly rent and no next migration.

If you're weighing where to land, run your current stack through the free cost analyzer and look at the ten-year number before you sign another lease. The whole reason you're reading a migration guide is that the last platform made it hard to leave. Pick the one you never have to leave again.

Done paying rent on your CRM?

Run your numbers, see the 10-year bill, and apply for a charter build. 2-minute application, 15-minute call, take title today.