How to set up database reactivation in GoHighLevel

Short answer
Database reactivation in GoHighLevel is a smart list of old leads and past customers, a short workflow of texts and emails that stops when someone replies, and the Trigger automation bulk action in drip mode so it goes out in small batches. Only text people who agreed to texts from your business, leave out anyone on DND, and make sure your A2P campaign covers marketing. If you'd rather not build it yourself, our Follow-up, reviews & reactivation package does it for you.
Check consent first
Reactivation goes to people who haven't heard from you in a while, so it's where texting gets businesses in trouble. Carriers filter numbers that send to people who didn't ask.
- Text only people who agreed to texts from your business. CTIA says consent applies only to the business and campaign it was given for, and can't be transferred.
- Don't text bought, rented or shared lists. CTIA says senders should use only their own opt-in lists.
- If you don't know whether someone agreed to texts, email them instead.
- Your A2P campaign's use case has to cover it. Reactivation is marketing, so the campaign should be Marketing or Mixed, with sample messages like the ones you'll send.
Before you start
- Register your number for texting. Texts from a US local number need an approved A2P 10DLC campaign. Start under Settings > Phone System > Trust Center > Brand & Campaigns: the brand first, then the campaign with its use case, sample messages and how people opt in. Twilio blocks texts to US numbers from a local number that isn't on an approved campaign (error 30034). Toll-free numbers need toll-free verification instead.
- Turn on the opt-out and sender lines. Settings > Phone System > Messaging. HighLevel can add opt-out wording such as Reply STOP to unsubscribe, and your business name, when a text doesn't already have them, and can add them again on a schedule in long conversations. A contact who replies STOP gets SMS DND turned on, and workflow texts skip them.
- Bring your list in. If past customers aren't in HighLevel yet, import them: Contacts > Import Contacts, map the fields, and add a tag such as reactivation-nov on import so you can find the batch later. A DND column turns on DND for every channel, which is right for anyone who opted out.
Build the list
- Start a smart list. Contacts > Smart Lists > + Add smart list.
- Filter to the right people. Add filters with AND, for example: Last Activity more than 90 days ago, a tag like past-customer or your import tag, and DND not on. Apply each filter.
- Save it. Click Create. Smart lists update themselves as contacts match or stop matching.
- Look at it. Scroll the list. Remove anyone you know shouldn't get it: current customers, people who complained, wrong numbers.
Build the workflow
- Create it. Automation > Workflows > Create Workflow, from scratch. Name it Reactivation, with the month.
- Set the workflow settings. In the Settings tab: Stop on Response on, so anyone who replies stops getting messages. Allow Re-entry off, so a contact goes through only once. A Time Window on weekdays during business hours. Contact Timezone so it follows each person's time zone.
- First text. Add Send SMS. One reason to come back, your business name and the opt-out line.
- Wait for a reply. Add a Wait set to The contact to reply, on SMS, with a timeout of two or three days.
- Follow up once by email. If there's no reply, add Send Email with a little more detail and a booking link. Email steps skip contacts with email DND, which turns on by itself when an email bounces.
- One last text, then stop. Another reply wait, then a final short text. Don't go past three or four messages.
- Tell your team about replies. Make a second workflow with the Customer Replied trigger and the Replied to Workflow filter set to your reactivation workflow. Add Internal Notification to the assigned user and Create Opportunity in your pipeline.
- Publish both. Switch each from Draft to Publish and save. Only published workflows show up in the bulk action.
Send it in batches
Don't send to everyone at once. Batches let you read replies, catch problems and keep your team from drowning.
- Select the list. Open your smart list and tick Select all, or pick contacts by hand.
- Click Trigger automation. In the bulk action bar. Name the action, set Automation Type to Workflow and choose your reactivation workflow.
- Choose Send in Drip Mode. Set the start date and time, the Number of Messages per Batch (how many contacts each batch enrolls) and Repeat after, in days, hours or minutes. Start small, such as 50 a day, and raise it once replies look healthy.
- Watch it run. Contacts > Bulk Actions shows each request as In Progress, Scheduled or Complete, with stats.
Message drafts
Sound like a person who remembers them. Give a real reason to reply.
- Email follow-up subject: "Still want that fall check?" Body: what's included, a booking link, and the unsubscribe footer.
- Final text: "Last note from us on this. If you ever need us, just reply here. Reply STOP to opt out."
- Insert the first name with the custom value tag icon, and check your list has first names so nobody gets "Hi ,".
- Hi Dana, it's Maria at Coastline Pest Control. It's been about a year since your last treatment. Want us to book your fall check? Reply YES and we'll find a time. Reply STOP to opt out.
- Yes, but we moved. New address is 22 Elm.
- Thanks Dana, updated. Would Thursday morning work?
How to test it
- Make a test smart list. Two or three contacts with your own team's phones and emails, tagged the same way as the real list.
- Enroll them with Send All at Once. Use Trigger automation on the test list. Check each text arrives with the name filled in and the opt-out line.
- Reply from one phone. That contact should stop getting messages, and your team should get the reply alert.
- Reply STOP from another. SMS DND should turn on for that contact, and later texts should skip them.
- Check the logs. Open the workflow's Enrollment History and Execution Logs to see each contact's path, then send the first real batch.
What can go wrong
- Texts get filtered by carriers (error 30007): too many messages to people who didn't expect them, or links that look like spam. See SMS error 30007.
- People reply STOP, END or QUIT: they're opted out and only they can opt back in. See SMS opt-out keywords.
- Some contacts never get the text: DND, a bad number or a landline. See Texts not reaching a contact.
- The import fails row by row: phone format, missing names or dates. See CSV import errors.
- People get messages twice: they're in HighLevel as two contacts. See Duplicate contacts.
If you'd rather hand it off, our Follow-up, reviews & reactivation package checks your list for consent, writes the messages and runs the batches.
Common questions
- Can I text everyone in my old customer list?
- Only people who agreed to texts from your business. An import doesn't create consent. Email the rest.
- How many should I send at once?
- Start small, such as 50 a day in drip mode, and read the replies. Raise it once opt-outs and errors stay low.
- What reply rate should I expect?
- It depends on how old the list is and how good the reason to come back is. We don't quote a number; test a first batch and see.
- Can I use Conversation AI to answer the replies?
- Yes, HighLevel's Conversation AI can reply in the conversation. Test it on real replies first, and keep a person on the alert in case it can't answer.
More setup guides
How to set up missed-call text back in GoHighLevel
Turn it on under Settings > Phone System > Voice, set a 10 to 20 second timeout, and register your number for texting first.
How to set up a speed-to-lead workflow in GoHighLevel
One workflow with a trigger per lead source, an instant text and email, a team alert, and follow-ups that stop when the lead replies or books.
How to set up appointment reminders and no-show follow-up in GoHighLevel
An Appointment Status workflow with waits timed from the appointment, plus a second workflow for no-shows with a rebooking link.
How to set up review request automation in GoHighLevel
Connect Google Business Profile, set the review link and templates in Reputation, then send a request from a workflow when a job is done.
Related fixes
GoHighLevel SMS error 30007: why carriers filter your texts
The carrier blocked the text as likely spam. Usually a public link shortener, missing opt-out wording or weak consent.
Read the fixGoHighLevel SMS opt-out keywords: STOP, START and HELP
STOP, STOPALL, CANCEL, UNSUBSCRIBE, END or QUIT opt a contact out. START, YES or UNSTOP opt them back in; toll-free only takes START or UNSTOP.
Read the fixGoHighLevel: a contact isn't getting your texts
Usually DND is on for that contact, or they replied STOP. You can't override a STOP; they have to text START.
Read the fix
Want GoHighLevel set up and running for you?
Book a free 15-minute call. Tell us what you sell and where your leads come from, new account or the one you have, and we'll tell you what we'd set up, how long it takes and what it costs.