Your HighLevel agency, set up in the right order.
You now run the agency account. This route takes you from a blank login to a branded agency that resells HighLevel, launches clients from tested snapshots, and talks to them with ready-made messages. Do the stops in order. Every task shows where to click, a filled-in example, and how to know it’s done.
What’s on this site
Use the Route to set things up the first time. Use the other tabs every day after that.
Your day-by-day plan
Built from what’s left on the route. It updates as you tick things off.
How reselling works
HighLevel charges your agency one flat plan fee, plus usage (texts, calls, emails, AI) at its base rates. Reselling means charging your clients more than that, under your own brand. There are three ways to do it, and most agencies combine them.
1. Done-for-you retainer
You build and run the system for the client. HighLevel is part of your monthly service fee, not a separate product.
Best for: new agencies, service-heavy niches. Works on every plan.
2. Usage rebilling
Each client’s texts, calls, emails and AI are charged to their own wallet at HighLevel’s base cost times your markup. The difference is your margin.
Best for: everyone. Stops heavy-texting clients from eating your profit.
3. SaaS (software) mode
You sell the platform itself as your own subscription. Clients sign up, pay through your Stripe, and get an account built from your snapshot automatically.
Best for: agencies selling to many small businesses. Needs the top-tier plan.
How the money moves
This is what happens behind the scenes when a client sends one text from their sub-account with rebilling turned on.
Client sends a text
From their sub-account, using their number.
HighLevel charges you
Base rate, taken from your agency wallet.
You charge the client
Base rate × your markup, taken from the client’s wallet.
You keep the difference
Shows up in your rebilling reports each month.
Sample price sheet
An example of how a dental-focused agency might package things. Replace the numbers with your own; this shows the structure, not recommended prices.
| Package | What the client gets | Setup | Monthly | Usage |
|---|---|---|---|---|
| Starter | CRM, missed-call text-back, booking calendar, review requests | $497 | $297 | Rebilled at 2× base |
| Growth | Starter plus lead funnel, email and SMS nurture, monthly report | $997 | $597 | Rebilled at 2× base |
| Full service | Growth plus ad management, AI chat on site, quarterly strategy call | $1,497 | $1,297 | First $50 included, then 2× |
| Software only (SaaS) | Login to your branded platform with your snapshot; they run it | $0 | $97 | Rebilled at 2.5× base |
Profit calculator
Plug in your own numbers to see what a month looks like. Base rates are placeholders; take today’s real rates from your HighLevel billing settings.
Usage at 1× just passes the cost through; you earn nothing on it but you also lose nothing.
Set up reselling, step by step
These match stop 6 of the Route, where you can tick them off.
Rules that keep clients happy
| Do | Why |
|---|---|
| Put usage charges in your contract | Clients who weren’t told about usage dispute the bill. |
| Set a minimum client wallet balance and auto-recharge | An empty wallet stops their texts and missed-call replies. |
| Send the “How usage billing works” email at onboarding | It’s in Client messages, ready to send. |
| Check rebilling reports monthly | Catches clients whose usage is spiking or failing. |
| Never sell under HighLevel’s name | White-label means your brand on every invoice and email. |
Checklists
The Route teaches you how. These checklists are the short version you work through every time: once for the agency, and once for every new client. Ticks are saved in this browser.
Client messages
Emails and texts for every stage of a client’s life with you. Fill in your details once and every message updates. Anything still highlighted needs your input. Tip: save your favourites as snippets in your own agency sub-account (Conversations › Snippets) so you can send them from HighLevel.
“I use my email in one sub-account and in 2–5 more. I change my permission in one and it changes in all of them. Why?”
One login, many sub-accounts
Your role and permissions belong to your login, not to each sub-account. Every sub-account you’re in uses that same login, so a change anywhere is a change everywhere. To have different access in different accounts, use a different login for each level of access.
See it happen
You want to be Admin in Sub-account 1 only. Press the button with one login, then switch to two logins and press it again.
What travels with your login
Some things are stored on the login and follow it into every sub-account. Others are set inside each sub-account and stay there.
| Shared everywhere the user is (one setting) | Set separately in each sub-account |
|---|---|
| Login email and password, two-step verification | Calendars they’re part of, and their availability |
| User type and role (Admin or User) | Phone number or extension assigned to them |
| Module permissions (Contacts, Workflows, Payments…) | Contacts, conversations and opportunities assigned to them |
| “Only assigned data” restriction | Lead distribution (round robin) and notification rules |
| Deleting the user (removes them everywhere) | Removing them from just that account |
HighLevel has been reworking permissions. Confirm this on your own account with the test in step 6 below, and check HighLevel’s changelog in case per-account permissions have been added.
Your options
A separate login per access level
When you need different access in different sub-accounts.
Create a second login with an email alias, such as you+admin@youragency.com. Emails to it arrive in your normal inbox. Each login gets its own role and permissions.
One Agency Admin login
When it’s you, running the agency.
If you own the agency, you probably don’t need restrictions. An Agency Admin login has full access everywhere. The limits are for your staff and clients.
Limit by assignment instead
When you only want to see less, not be blocked.
Turn on “only assigned data” for the login, then in each sub-account choose what’s assigned to it. The switch is shared, but what’s assigned is set per account.
Plan your logins
List your sub-accounts and people, pick the access each person needs in each account, and the planner tells you exactly which logins to create. It starts with your situation already filled in.
1. Your sub-accounts
2. People and the access they need
One row per person. Use their real email; the planner builds the extra logins from it.
3. Logins to create
Set it up
Do these in order for each extra login the planner listed.
- Create the new loginUse the alias email from your plan, such as you+admin@youragency.com.Agency View › Settings › Team › Add Employee, or Sub-account › Settings › My Staff
- Set its role and permissionsChoose Admin or User, and switch modules on or off for this login only.
- Add it to the right sub-accountsOnly the accounts in that login’s row of your plan.
- Remove the old login from those accountsUse “remove from this account”. Never “delete user”, which removes you from every sub-account.
- Reassign recordsMove contacts, conversations, opportunities, calendars and the phone number in those accounts to the new login.
- Log in once with each loginUse a private window or a second browser profile so you can stay signed in to both.
Check it worked
| Check | What you should see |
|---|---|
| Change a permission on the new login | It changes only in that login’s sub-accounts. The others stay the same. |
| Open the account switcher on each login | Each login lists only its own sub-accounts. |
| Send a test lead to each account | Notifications reach your inbox and the lead is assigned to the right login. |
Questions
Will the alias email actually reach me?
Yes, with Gmail, Google Workspace and Microsoft 365: anything sent to you+admin@yourdomain.com arrives in you@yourdomain.com. If your provider doesn’t support “+”, create an alias in your email admin. Test by sending yourself an email before you create the login.
Will I get every notification twice?
Only if both logins are in the same sub-account, which the plan avoids. Each sub-account is in exactly one of your logins.
Can I be signed in to both at once?
Not in the same browser window. Use a second browser profile, a private window, or a different browser for the second login. On the mobile app, log out and in to switch.
Do I lose any data when I switch an account to a new login?
No. Contacts, conversations and history belong to the sub-account, not to you. You only need to reassign who owns them, plus calendars and phone numbers.
Is it the same for my staff and clients?
Yes. Any person who needs different access in different sub-accounts needs one login per access level. Add them to the planner above.
What if HighLevel adds per-account permissions later?
Then you can merge back to one login. Check the changelog every month as part of your weekly rhythm, and re-run the test in step 6.
Try other roles and combinations
A playground for any role. Pick a role, choose its sub-accounts and permissions, then press the button to see a change made from inside one account.
1. Pick a role
2. Which sub-accounts are they in?
3. Permissions on this user
How email works in HighLevel
Email in HighLevel isn’t one thing. There are three kinds of email, four ways to send them, and settings at both the agency and the sub-account level. Once you know which path an email takes, setup and troubleshooting get easy.
The three kinds of email
System email
Logins, invites, password resets, and “new lead” notifications sent to users.
Who receives it: you, your team and client users. Set up at the agency level.
Automated and bulk email
Workflow emails, nurture sequences, newsletters and campaigns sent to contacts.
Who receives it: the client’s leads and customers. Set up in each sub-account. This is where deliverability matters most.
One-to-one email
Emails a person types and sends from Conversations or the mobile app.
Who receives it: one contact at a time. Can go through the shared sending setup or the user’s own synced Gmail or Outlook.
The four ways to send
| Option | What it is | Best for | Who bills you | Watch out |
|---|---|---|---|---|
| LC Email, shared domain | The default if nothing is set up. Sends from a HighLevel-owned domain. | Testing only | Your wallet (can be rebilled) | Looks unbranded and is more likely to land in spam. |
| LC Email, dedicated domain | HighLevel’s built-in service sending from a subdomain you own, e.g. mail.client.com. | Most clients. Recommended default. | Your wallet (can be rebilled) | Needs DNS records and a warm-up period. |
| Mailgun | Your own Mailgun account connected to HighLevel. | Agencies already on Mailgun, or needing their own sending reputation and logs | Mailgun, directly | One more account and invoice to manage. |
| SMTP (Gmail, Outlook, other) | Sends through a normal mailbox’s server. | Low-volume, personal-looking email | Free, inside the mailbox plan | Daily limits (Google Workspace allows about 2,000 a day). Never use for bulk. |
Separately, email sync connects a user’s own Gmail or Outlook inbox so their emails with a contact show up in Conversations, and their replies can go out from their real mailbox.
Trace an email
Pick the kind of email and how the sub-account is set up. You’ll see which service sends it, the address it comes from, where replies land, and how risky it is.
1. What kind of email?
2. How is the sub-account set up?
3. Has the user synced their own inbox?
Where replies go
Replies to emails sent from HighLevel come back into the platform, so the whole conversation stays in one place.
Email goes out
From the sub-account’s sending setup, with a reply address HighLevel can receive.
Contact replies
Their reply is routed back to the sub-account.
It lands in Conversations
Threaded on the contact’s record. Workflows can trigger on “customer replied”.
The right person is told
The assigned user gets a notification. With email sync on, it also appears in their own inbox.
Agency level vs sub-account level
| Setting | Agency level | Sub-account level |
|---|---|---|
| System emails (invites, password resets) | Branded with your agency name and domain | Not set here |
| Default sending service | Choose LC Email or connect Mailgun as the default for new accounts | Can be overridden per client |
| Dedicated sending domain | Your own: mail.youragency.com | One per client: mail.clientdomain.com |
| SMTP providers | Not usually | Added per client in Email Services |
| Email sync (Gmail / Outlook) | Not set here | Each user connects their own inbox |
| From name and address | Your agency’s own sub-account | Default in the sub-account; can be changed per email or workflow step |
| Rebilling for email | Turn on and set the markup | Charged to the client’s wallet |
Menu names move. Look for Email Services in Settings at both levels, and Email sync or Integrations in a user’s profile.
Sample DNS records for a dedicated domain
What you’ll add at the client’s domain provider for mail.smiledentalstudio.com. Always copy the exact values HighLevel shows; these show the shape, not the real values.
| Record | Type | Host | Value (example shape) | What it does |
|---|---|---|---|---|
| SPF | TXT | v=spf1 include:… ~all | Says which servers may send for this domain. | |
| DKIM | TXT | a key name HighLevel gives you | k=rsa; p=MIGf… | Signs each email so it can’t be faked. |
| DMARC | TXT | _dmarc | v=DMARC1; p=none; rua=mailto:dmarc@smiledentalstudio.com | Tells inboxes what to do with fakes and sends you reports. Start at p=none. |
| Tracking | CNAME | as shown | as shown | Branded open and click tracking links. |
| MX | MX | as shown | Lets bounces and replies come back to the platform. |
Gmail and Yahoo require bulk senders to have SPF, DKIM and DMARC, a one-click unsubscribe, and a spam complaint rate under 0.3%. Aim for under 0.1%.
Sample warm-up plan
A new sending domain has no reputation. Ramp up slowly, starting with your most engaged contacts. Move to the next step only while bounces and complaints stay low.
| Week | Emails per day | Send to |
|---|---|---|
| 1 | 50 | Recent customers and people who opened lately |
| 2 | 100–150 | Contacts active in the last 3 months |
| 3 | 250–400 | Contacts active in the last 6 months |
| 4 | 500–800 | Wider list, after cleaning bounces |
| 5 onward | Roughly double weekly | Full list, never contacts older than 12–18 months without re-permission |
Samples to copy
| Setting | Good example | Avoid |
|---|---|---|
| Sending subdomain | mail.smiledentalstudio.com | smiledentalstudio.com (the root domain the office uses for email) |
| From name | Dr Lee at Smile Dental | noreply, or your agency’s name |
| From address | drlee@mail.smiledentalstudio.com | smiledental@gmail.com |
| Reply-to | Leave as the platform default so replies land in Conversations | A personal inbox nobody watches |
| Footer | Business name, address and an unsubscribe link | No address, or no unsubscribe link |
Mistakes to avoid
- Leaving clients on the shared domain.Every client should get a dedicated sending subdomain before you send to real contacts.
- Using the root domain for sending.If the sending reputation drops, the client’s everyday office email suffers too. Use a subdomain.
- Sending bulk through Gmail or Outlook SMTP.You’ll hit daily limits and risk the mailbox being suspended.
- Importing an old list and blasting it.Old lists are full of dead addresses and spam traps. Clean the list and warm up first.
- Changing the reply-to to an outside inbox.Replies then skip Conversations, and “customer replied” workflows never fire.
- Forgetting rebilling.Without it, a client’s 50,000-email newsletter comes out of your wallet.
- Hard-coding the sender in snapshots.Use custom values for from name and address so each client sends as themselves.
User roles and access
Every HighLevel user has two settings: a type (Agency or Account) and a role (Admin or User). Type decides where they can go. Role decides how much they can do there. Together they make four kinds of user. Tap one to see what it means.
Permissions side by side
What each kind of user can do. The highlighted column is the role you picked above.
Same person in several sub-accounts?
Changing a user’s role or permissions in one sub-account changes it in all of them. The Multi-account access section explains why, shows it happening, and plans the fix.
Who gets which role
| Person | Give them | Switch on | Example |
|---|---|---|---|
| Agency owner, partner | Agency Admin | Everything | Maria, owner of Brightpath |
| Operations manager (billing, team, snapshots) | Agency Admin | Everything; keep this group to 2–3 people | Sam, ops lead |
| Builder or VA | Agency User | Sites, Automation, Marketing, Settings; only accounts they build | Dev, assigned to Master – Dental and 4 clients |
| Support or account manager | Agency User | Conversations, Contacts, Calendars, Reporting; no Payments or Settings | Jo, assigned to 8 clients |
| Client owner who wants control | Account Admin | Everything in their account | Dr Lee, Smile Dental |
| Client owner who wants it done for them | Account User | Dashboard, Conversations, Calendars, Reporting | Owner who only checks results |
| Client front desk or sales rep | Account User | Conversations, Contacts, Calendars; only assigned data | Ana, front desk |
| Freelancer helping one client | Account User | Only the modules for the job; remove when done | Ad buyer for Peak Roofing |
Mistakes to avoid
- Never give a client the Agency type.Agency-type users can be shown other clients’ accounts. Clients are always Account type.
- Editing a shared user changes them everywhere.If Jo is in eight accounts and you turn off Payments while inside one, it’s off in all eight.
- Need different access in different accounts? Use separate logins.A common workaround is a second email per role, such as jo+dental@brightpath.agency, so each login can have its own permissions. The Multi-account access section plans this for you.
- “Remove from account” is not “delete user”.Deleting removes the person from every sub-account at once. To take someone off one client, remove or unassign them there only.
- “Only assigned data” hides new leads.Users limited to assigned records can’t see leads nobody has been assigned. Set up round robin or an assignment step in the workflow.
- Client admins can manage users in their account.An Account Admin can add and change users there. If a client should not change your team’s access, make them an Account User instead.
- Offboard on the day someone leaves.Delete their user, reassign their contacts and conversations, and change any shared passwords they had.
Once you’re live: the weekly rhythm
Setup is a project; running the agency is a routine. These are the checks that keep client accounts healthy and stop small problems from becoming cancellations.
Every day
- Scan Conversations in your busiest sub-accounts for unanswered leads.
- Check workflow errors in Automation for anything that failed overnight.
- Answer client support requests inside the window you promised.
Every week
- Review agency and client wallet balances.
- Check A2P registration status on any account still pending.
- Read the HighLevel changelog and note features worth adding to snapshots.
- Review email bounces and spam complaints per sending domain.
Every month
- Version and push snapshot updates, after testing them in the sandbox.
- Audit team access: remove people who left, trim permissions.
- Send each client the monthly results email (in Client messages).
- Reconcile rebilling: what you were charged versus what you billed.
Words you’ll meet in HighLevel
HighLevel (GHL) and LeadConnector are the same platform. These are the terms that confuse new agency owners most.