The GoHighLevel Setup Checklist: 31 Things to Configure Before You Send a Single Text
Automation & CRM

The GoHighLevel Setup Checklist: 31 Things to Configure Before You Send a Single Text

Most GoHighLevel problems — texts that never arrive, emails in spam, leads stuck in the wrong pipeline — trace back to setup steps skipped in week one. Here is the full list, in order.

GoHighLevel rewards being set up properly and punishes being set up quickly. Almost every support ticket we inherit from a rushed implementation — texts that never arrive, emails landing in spam, leads appearing in the wrong pipeline, reminders firing at 3 a.m. — comes back to a configuration step that was skipped in the first week because somebody wanted to send a campaign by Friday.

This is the checklist we work through on every GoHighLevel setup, in the order that avoids rework. Thirty-one items, grouped into six stages. If you are doing it yourself, do not skip ahead to the automations; they depend on everything before them.

Stage 1 — Account and agency structure

  1. Decide the sub-account model. One sub-account per legal business (or per client, for agencies). Do not run two brands in one sub-account; reporting, phone numbers and compliance all assume one business per location.
  2. Set the company profile completely. Legal name, address, time zone and business hours. The time zone in particular drives every calendar and every "send at 9 a.m." workflow — get it wrong and everything is off by hours.
  3. Create users with the right roles. Admins can delete pipelines; users cannot. Give sales staff user roles and restrict data visibility to assigned contacts where appropriate.
  4. Enable two-factor authentication for every user. The CRM holds your entire customer list.
  5. Turn on the audit log and conversation AI settings you intend to use — and turn off the ones you do not, so nothing starts replying to customers before you have reviewed it.

Stage 2 — Domains, email and phone authentication

This stage is the one most often skipped, and it is the one that decides whether anything you send arrives.

  1. Connect a custom domain for funnels and forms (for example go.yourbusiness.com) with SSL. Links from the default GHL domain look like phishing to both people and filters.
  2. Create a dedicated email sending subdomain such as mail.yourbusiness.com, so campaign reputation is separate from your everyday inbox domain.
  3. Publish SPF, DKIM and DMARC records for that subdomain and verify them inside GHL. Start DMARC at p=none with a reporting address; tighten later.
  4. Warm the sending domain. Low volumes to engaged contacts for the first two to three weeks. Sending 5,000 emails from a domain that has never sent one is how you end up in spam for a month.
  5. Buy or port the phone number in LC Phone and set the forwarding number for inbound calls.
  6. Register the brand and campaign under A2P 10DLC if you text anyone in the United States. Approval can take days; unregistered traffic is filtered or blocked. Describe the real use cases and sample messages accurately — mismatches cause rejections and later filtering.
  7. Verify toll-free numbers if you use them, and set the SMS sending limits and quiet hours before any workflow can send.

Stage 3 — The data model

Everything downstream — segmentation, reporting, automation triggers — depends on these decisions being made once and made consistently.

  1. Define custom fields for the information you genuinely act on: service interest, lead source detail, property size, appointment type. Use dropdowns rather than free text wherever the values are finite.
  2. Write a tag taxonomy and stick to it: source:facebook, stage:booked, status:vip. Tags are free-form, which is how accounts end up with "Lead Source", "lead source" and "Lead Source 2".
  3. Set custom values for business name, phone, booking link, review link, address and signature. Every workflow should reference these rather than hard-code them — it is what makes the account maintainable and, later, snapshot-able.
  4. Build the pipeline(s) with stages that mean something. A stage should be a state a contact is unambiguously in ("Quote sent", "Job booked"), not a to-do ("Follow up"). Fewer, clearer stages beat many vague ones.
  5. Define what "won", "lost" and "abandoned" mean and who is allowed to set them, so revenue reporting is trustworthy from the start.

Stage 4 — Calendars and availability

  1. Create one calendar per appointment type — consultation, estimate, service call — with its own duration, buffer and location (phone, video, address).
  2. Configure team availability and round-robin rules for multi-person teams, including priority weighting if one person should get more bookings.
  3. Sync personal calendars two-way so double bookings cannot happen, and set the minimum scheduling notice so nobody gets a booking for ten minutes from now.
  4. Write the confirmation and reminder content for each calendar before connecting workflows to them. The message a person receives after booking is the first automated contact they get from you.

Stage 5 — The core automations

These six workflows are the minimum viable automation layer for a service business. Build them with custom values, test each one with a real contact — your own phone — and record the result.

  1. Speed-to-lead. New form submission or ad lead → immediate SMS and email acknowledging them by name, internal notification to the assigned rep, opportunity created in the pipeline. Target: first contact inside sixty seconds.
  2. Missed-call text-back. Inbound call not answered → SMS within a minute apologising and offering a booking link. For most local businesses this single workflow recovers more revenue than any campaign.
  3. Appointment confirmation and reminders. On booking: confirmation with details and a reschedule link. 24 hours and 2 hours before: reminders. Reschedules and cancellations update the pipeline stage automatically.
  4. No-show recovery. Appointment marked no-show → same-day SMS with a rebooking link, follow-up email next morning, task for the rep if no response in 48 hours.
  5. Review request. Job marked complete → SMS asking for a rating; positive ratings routed to the Google review link, negative ones routed to the owner as a task before they go public.
  6. Reactivation. Contacts with no activity for 90 or 180 days → a short, specific sequence with one offer and an easy opt-out. This is where the "dead" list turns back into revenue.

Stage 6 — Compliance, hygiene and testing

  1. Capture consent properly. Every form that leads to texting needs opt-in language that matches your A2P registration, and the consent timestamp should be stored on the contact.
  2. Configure STOP, do-not-disturb and quiet hours. GHL handles STOP replies, but DND per channel and the sending window are settings you have to make deliberately.
  3. Create test contacts and a QA workflow. Each of your own team's phones as a contact, tagged internal:test and excluded from every real campaign. Before any workflow goes live it is triggered against these and the result is checked.
  4. Document it. A one-page map of pipelines, workflows and what triggers them, plus the custom values list. Six months from now the person maintaining this account may not be the person who built it.

How to know it is actually working

Set up is done when a real lead can be traced end to end: form submitted on your site, SMS received on a phone within a minute, opportunity visible in the right stage, appointment booked from the link, reminders received, review request received after completion. Run that exact path yourself with a fresh number before you announce anything to the team. Then check three numbers weekly for the first month: median time to first contact, SMS delivery rate, and appointments booked from automation versus by hand.

Every item on this list is cheaper to do in week one than to retrofit in month three, when there are two thousand contacts, six half-built workflows and nobody is sure which tag means what.

When to bring someone in

If you are migrating from another CRM rather than starting fresh, the data model stage becomes a mapping exercise and the whole thing needs a parallel run — see our guide to CRM migration to GoHighLevel. If you are an agency doing this for several clients, do it once in a clean master account and turn it into a snapshot. And if you would rather have it done and documented in a week than learned over a quarter, that is exactly what a GHL Essentials setup is.

Frequently asked questions

How long does a GoHighLevel setup take?

Done properly — account, authentication, data model, calendars and the core automations tested with real contacts — five to ten business days. The single longest item is A2P 10DLC registration for US texting, which can take several days to approve and should be started on day one.

Why are my GoHighLevel texts not delivering?

In the US, almost always because the brand and campaign have not been registered and approved under A2P 10DLC, or because messages contain content the campaign registration did not describe. Elsewhere, common causes are an unverified number, missing opt-in evidence, or sending outside quiet hours to contacts marked do-not-disturb.

Do I need a dedicated sending domain for email?

Yes, if you send anything beyond one-to-one replies. A dedicated subdomain (for example mail.yourbusiness.com) with SPF, DKIM and DMARC records isolates your marketing reputation from your main domain, is required for consistent inbox placement, and takes ten minutes to set up correctly.

Need this done properly?

We build the things we write about. Start with a free mockup or a free 30-minute call — a written quote follows within 48 hours, no obligation.

Looking for GoHighLevel & Automation? That is what we do.

Keep reading