On this page

How to Copy a GoHighLevel Database Reactivation Campaign Between Accounts

A database reactivation campaign takes weeks to tune and minutes to wish you never had to rebuild. Here is what a reactivation workflow is actually made of, what moves cleanly to a new client account and what does not, and how saving it once lets you deploy it into every account you run.

A database reactivation campaign is one of the most valuable things an agency builds in GoHighLevel, and one of the most annoying to recreate. You spend weeks tuning the messages, the waits and the reply branches until the sequence reliably wakes a cold list — then you land a new client and face rebuilding it from scratch in their account. This guide covers what a reactivation workflow is really made of, what moves cleanly between accounts and what does not, and how saving it once lets you deploy it into every client you take on.

What a database reactivation workflow includes

A database reactivation (DBR) workflow is a single automation that works through the contacts already sitting in an account — old leads, past enquiries, customers who went quiet — and tries to restart the conversation. The build is usually busier than people expect:

  • A trigger, often a tag being added or a contact entering from a bulk action or smart list, rather than a fresh inbound lead.
  • An opening SMS, sometimes paired with an email, written to sound personal rather than promotional.
  • Wait steps that space the follow-ups out over days so the sequence does not read like a blast.
  • If/else branches on whether the contact replied, clicked or booked — the reply path usually hands off to a human or books a call, the no-reply path sends the next nudge.
  • Often an opportunity created in a pipeline, a task assigned to a user, and tags applied to track who re-engaged.

All of that — triggers, actions in order, waits, branches and settings — is the build. It is exactly the kind of multi-step automation that is tedious and error-prone to retype by hand.

Why it's a prime candidate to reuse across clients

Reactivation campaigns are templatey by nature. The offer and the wording change a little per client, but the shape — opener, wait, branch on reply, nudge, book — is the same campaign you have already proven. That is why agencies sell "database reactivation" as a productised service and run a near-identical workflow for every client.

GoHighLevel's native tools do not make that reuse easy. The built-in duplicate copies a workflow only inside the one sub-account you are already in, so it is no help for a new client account. A snapshot can carry a workflow, but it moves a whole-account template and is clumsy when you only want to drop one proven campaign into an account that is already live. There is no clean native way to take one workflow and put it into another account as it stands.

This is the gap: you have a reactivation campaign that works, and ten client accounts that each need it. Native GoHighLevel gives you duplicate (same account only) or a whole snapshot — neither is "put this one workflow into that live account". That is what ExportGHL Workflows is for.

The references that must line up in the destination

A reactivation workflow leans on more account-specific records than it looks. Before it will run correctly in a new account, each of these has to resolve to something real there:

  • Tags — the tag that triggers the campaign, plus any "re-engaged" or "do not contact" tags the branches apply.
  • Custom fields — anything the messages merge in or the conditions read, such as a last-purchase field or a lead-source field.
  • Pipeline and stage — if the workflow creates or moves an opportunity when someone bites.
  • A calendar — if the booking path points contacts at a specific calendar.
  • Users — whoever a booked or replied lead is assigned to.
  • Email and SMS templates — any saved template a send step uses.

In the source account these are stored as internal ids, not names, and those ids mean nothing in another account. Copy the definition across untouched and every reference dangles — which is why a raw JSON copy tends to arrive with blank tag and pipeline fields. The mechanics of why that happens are covered in cross-account remap.

Cloning the full sequence with save and deploy

ExportGHL Workflows splits the move into three steps so the campaign becomes reusable rather than a one-off:

  1. Save it to your library. Open the reactivation workflow in the source account and save it to your private cloud library. The whole build is captured — every trigger, SMS and email step, wait, branch and setting.
  2. Check it — free. Run the readiness check before you deploy: it previews what will map, what the opt-in auto-create toggle will build for you, and what you must set up yourself — no credit spent and nothing deployed.
  3. Deploy it into the client account. Open the destination client account and deploy the saved workflow into it as a new workflow.

Deploy always creates a new workflow and never overwrites anything in the account unless you deliberately choose to update one, so you can deploy into a busy, live client account without touching their existing automations. The campaign arrives switched off, so you can check it before a single contact runs through. And because the saved copy lives in your library, the second and tenth client is just another deploy — you save once and deploy into each account. The single-account move is walked through in copy between accounts.

How remap handles its tags, fields and templates

Cross-account remap runs automatically on a cross-account deploy, and it is what makes the deployed campaign actually run. Instead of copying the source ids verbatim, remap reads each account-scoped reference, looks up its name in the source, and finds the record with the matching name in the destination — then rewrites the id to the destination's own. The "Hot Lead" tag, the "Reactivation Pipeline", the "Lead Source" field and your saved SMS template are matched by name and wired to the client's real records.

Anything it cannot match — a tag or field that does not exist in that client account yet — is flagged, and the workflow is deployed as a draft rather than published. Flip on the opt-in auto-create toggle and it builds any missing pipelines (with their stages) and tags for you, leaving only templates, calendars and users to set up by hand. You create anything still missing or point the step at an existing record, then publish. A broken campaign is never pushed live.

One honest caveat, specific to reactivation because it is SMS-heavy: the sending infrastructure does not travel with the workflow. The phone number, A2P registration, sending domain and from-address are configured per account, so even a perfectly remapped campaign needs its sending connected in the destination before it can go out. The message steps come across intact; the pipes they send through are reconnected on the client's side.

Reusing it as a client-ready campaign

Once a reactivation workflow is in your library, it stops being something you rebuild and becomes something you ship. Each new client is a deploy plus a quick pass: confirm the remap matched everything, create any missing tag or field, connect their sending, and customise the wording to the offer. For the pattern of running one saved campaign across a whole roster of sub-accounts, see reuse workflows across sub-accounts.

You can move your first reactivation workflow on the free trial with no card, then switch to pay-as-you-go credits that never expire or a one-time Toolkit licence — the pricing page has both.

Frequently asked questions

What is a database reactivation workflow in GoHighLevel?
A database reactivation (DBR) workflow re-engages the contacts already sitting in an account — old leads, past enquiries, dormant customers — with a short sequence of SMS and email messages designed to restart a conversation or book an appointment. In GoHighLevel it is usually triggered by a tag or a bulk action, then runs waits, branches on whether someone replies, and often creates an opportunity or books a call. It is one automation doing the whole campaign.
Can I reuse a reactivation campaign across client accounts?
Yes — that is exactly what it is built for. Save the workflow from the account you perfected it in to your cloud library once, then deploy it into each client account as a new workflow. The sequence, waits and branches come across every time, and cross-account remap rewrites the tags, fields and templates to the destination's own records so you are not rebuilding the campaign per client.
Do the tags and segments copy with the workflow?
The workflow's tag actions and tag-based branches come across as part of the build, and because cross-account remap runs automatically on a cross-account deploy, each tag is matched by name to the destination and its id rewritten. The tag records themselves, and any saved smart list or segment of contacts, are account data rather than part of the workflow — they do not travel with it. If a tag the workflow needs does not yet exist in the destination, it is flagged and the workflow lands as a draft.
Will the email and SMS steps come across intact?
Yes. Every send-email and send-SMS step comes across in order, with its waits and conditions, and if a step uses a saved template, remap matches that template by name in the destination. What does not travel is the sending infrastructure — the phone number, A2P registration, sending domain and from-address are configured per account and must be connected in the destination before the campaign can send. The message steps are intact; the pipes they send through are reconnected on the other side.

Reactivate your first database free

No credit card. Save your reactivation campaign once and deploy it into every client account you manage.

Start free