How to Create and Organize Client Sub-Accounts in GoHighLevel

Beginner6 min readUpdated on 08/02/2026

If you manage multiple clients or business locations through GoHighLevel, understanding how sub-accounts work is foundational to keeping your agency organized and your clients properly separated. This guide walks through the entire process — from creating your first sub-account to structuring them in a way that scales.

What Are Sub-Accounts in GoHighLevel?

In GoHighLevel, the platform operates on a two-tier structure: the Agency Account (also called the Agency Dashboard) sits at the top level, and Sub-Accounts (sometimes referred to as "locations" in the platform's UI) exist beneath it. Each sub-account functions as an isolated workspace containing its own CRM contacts, pipelines, calendars, automations, funnels, and settings.

This separation is important for a few practical reasons:

  • Client data does not bleed across accounts — contacts, conversations, and workflows are fully scoped to each sub-account.
  • You can grant clients login access to their own sub-account without exposing your agency-level settings.
  • Billing, snapshot templates, and reporting can be managed per sub-account.

Sub-accounts are typically associated with a single client business or a distinct brand. If you are a solo operator running only your own business, a single sub-account is usually sufficient and the agency layer may feel like unnecessary overhead.

How to Create a New Sub-Account

Before starting, make sure you are logged in at the Agency level, not inside an existing sub-account. The option to create sub-accounts is only available from the agency dashboard.

  1. From the left-hand navigation, click Accounts (or Sub-Accounts, depending on your current platform version).
  2. Click the + New Account button in the upper-right corner.
  3. A setup panel will appear. Fill in the required fields:
  • Business Name — use the client's official business name for clarity.
  • Phone Number — this is used for default messaging configurations.
  • Email Address — typically the client's primary business email.
  • Address and Time Zone — setting the correct time zone is critical for automations and scheduled messages to fire at the right local time.
  1. Optionally, select a Snapshot to pre-load the sub-account with pre-built pipelines, workflows, and templates. If you have not created snapshots yet, you can skip this step and configure manually.
  2. Click Save (or Create Account). The new sub-account will appear in your accounts list.

After creation, click into the sub-account to begin its individual configuration — things like connecting a phone number, setting up email sending domains, and integrating third-party tools are all done at this level.

Organizing Sub-Accounts for Scalability

Once you have more than a handful of sub-accounts, organization becomes non-trivial. GoHighLevel offers a few tools to help.

Using Tags to Categorize Accounts

Within the Accounts list, you can assign tags to sub-accounts. Common approaches include tagging by:

  • Industry (e.g., dental, real-estate, ecommerce)
  • Billing tier or plan level
  • Onboarding status (e.g., active, onboarding, churned)

Tags are filterable, so you can quickly surface a subset of accounts when searching or performing bulk actions.

Naming Conventions That Scale

GoHighLevel does not enforce a folder or group structure for sub-accounts at the agency level (this may vary by platform version and plan). Because of this, a consistent naming convention becomes essential. Consider prefixing account names with a category or client ID:

  • [Dental] Sunrise Family Dentistry
  • [RE] Hartwell Property Group

This keeps the accounts list readable even with 50+ entries.

Assigning Agency Users to Specific Sub-Accounts

If your team includes account managers or fulfillment staff, you can control which sub-accounts each user can access:

  1. Go to Settings at the agency level.
  2. Navigate to Team (or Agency Users).
  3. Select the user and edit their permissions.
  4. Under account access, choose Specific Accounts rather than All Accounts, then select the relevant sub-accounts.

This limits exposure of client data to only the team members who need it.

Granting Client Access to Their Sub-Account

Clients can be given their own login without seeing the agency layer. To do this:

  1. Open the relevant sub-account.
  2. Go to Settings > Team within that sub-account (not the agency-level team settings).
  3. Click Add User and fill in the client's name and email.
  4. Assign a role — Admin gives full sub-account access; more restrictive roles limit what the client can modify.
  5. The client will receive an email invitation to set up their password.

Be deliberate about which role you assign. Giving a client full Admin access means they can delete workflows, modify automations, or accidentally disrupt configurations your team set up.

Common Errors and Troubleshooting

Sub-account option is not visible in the dashboard This usually means you are logged in at the sub-account level rather than the agency level. Look for an Agency View switcher or log out and log back in selecting the agency account.

Automations are firing at the wrong time The most common cause is an incorrect time zone set during sub-account creation. Go to Settings > Business Info inside the sub-account and verify the time zone matches the client's location. Note that changing the time zone on existing workflows may require reviewing scheduled triggers individually.

Snapshot did not apply correctly Snapshots can occasionally fail to import all assets if the source snapshot was created with features not enabled on the destination sub-account. Check the sub-account's enabled features under its settings and compare against what the snapshot requires. Re-applying the snapshot after enabling the missing features often resolves this.

Client says they cannot log in after receiving the invitation Invitation emails can land in spam or expire. Resend the invitation from Settings > Team within the sub-account. Also confirm the email address was entered correctly at the time of user creation.

Contacts from one client appearing in another sub-account This should not happen by design — sub-accounts are data-isolated. If you believe contacts are crossing accounts, verify that no third-party integration (such as a Zapier workflow) is accidentally routing data to the wrong sub-account ID.

When Sub-Accounts May Not Be the Right Fit

Sub-accounts work well for agencies managing multiple distinct clients. However, if you are a single-location business with no plans to white-label services or manage other companies, the added complexity of the agency layer may not be worthwhile. In that case, operating entirely within a single sub-account is simpler and covers most CRM, automation, and communication needs without requiring agency-level management overhead.

Similarly, if you need very granular multi-location reporting that consolidates data across sub-accounts into a single dashboard, GoHighLevel's native tooling has limitations in this area — you may need to rely on third-party reporting tools or custom integrations to achieve that view.

Still stuck?

If this walkthrough did not solve your case, describe your exact scenario. Every question we receive becomes a new tutorial here.

Send my question