Custom Values in HighLevel
HighLevel Custom Values are sub-account-level text variables configured at Settings, then Custom Values. Create a value with a name and stored text – business name, phone number, address, booking link. Insert the variable into email templates, SMS messages, funnel pages, and workflow content using the merge tag selector. When the stored value changes (new phone number, new booking link), update the Custom Value once and every template that references it updates automatically. Custom Values are the key to making snapshot-based client onboarding fast – import the snapshot, update the values, everything is correct.
This post covers what Custom Values are, how they differ from Custom Fields, how to create and use them in templates, how they work with snapshots for rapid client onboarding, and the common values every HighLevel sub-account should have configured.
Reading time: about 5 minutes.
Store business info once, – HighLevel Custom Values update every template
Settings, then Custom Values in any HighLevel sub-account.
What Are Custom Values in HighLevel?
Custom Values are named text variables stored at the sub-account level. Each Custom Value has a name (used to identify it in the interface) and a stored text value (the actual content that is inserted when the variable is used).
The purpose is to eliminate repetition. A business’s phone number appears in emails, on funnel pages, in SMS messages, and in workflow content.
Without Custom Values, that phone number is typed manually each time – and when the phone number changes, it must be found and updated in every location. With Custom Values, the phone number is stored once, referenced everywhere via a variable, and changed in one place when needed.
Find them at Settings, then Custom Values in the sub-account.
Custom Values vs. Custom Fields
Custom Values and Custom Fields are both variable systems in HighLevel but they serve completely different purposes.
Custom Values are about the business – they store information that is the same for all contacts: the business name, the business phone number, the physical address, the booking link, the owner’s name. This information is constant regardless of which contact is receiving the email or seeing the funnel page.
Custom Fields are about individual contacts – they store information specific to each contact record: a contact’s company name, their industry, their contract renewal date, their preferred service. This information varies per contact and is used for personalization.
An email might use both: the Custom Value for the business’s phone number in the footer and a Custom Field for the contact’s first name in the greeting. Both appear as merge tags but pull from entirely different sources.
Where to Find Custom Values
Custom Values are in the sub-account at Settings, then Custom Values. The list shows all existing Custom Values for the sub-account – their names and current stored text.
When using merge tags in the Email Builder, SMS templates, Workflow Builder, or the funnel page editor, the variable selector or merge tag browser includes a Custom Values section. Available Custom Values for the sub-account are listed there and can be inserted with a click.
Creating a Custom Value
Creating a Custom Value takes under a minute. In Settings, then Custom Values, click to add a new value.
Enter the name – this is the human-readable identifier used in the interface, like “Business Phone Number” or “Booking Link.” Enter the stored text value – the actual content: the phone number, the URL, the business name.
The variable key – the {{custom_values.variable_name}} syntax used to reference the value in templates – is generated automatically from the name. The exact syntax is visible in the Custom Values list and in the merge tag browser.
Inserting Custom Values Into Templates
Custom Values are inserted into content the same way contact merge tags are inserted – using the variable or merge tag insertion interface in whatever editor is being used.
In the Email Builder: while editing a text block, click the merge tag button. Browse to Custom Values.
Select the desired value. The variable placeholder appears in the text.
In Workflow Builder SMS actions: in the SMS message text area, click the variable button or type the syntax directly. Browse to Custom Values or type {{custom_values.}} to trigger the autocomplete.
In funnel and website page editors: in text elements, use the variable insertion option to browse and insert Custom Values. Not all page editors expose this the same way – some require using the direct variable syntax in the text element.
The key behavior: the placeholder variable is replaced with the stored text value when the content is rendered, sent, or displayed. The placeholder is never visible to the recipient or the site visitor – they see the actual stored value.
Updating a Custom Value
When business information changes – a new phone number, a relocated office address, a new booking link – updating the Custom Value in Settings updates every instance of that variable across all templates, pages, and workflows instantly.
This is the core operational value of Custom Values. A business that changes its scheduling link from one calendar tool to another previously had to manually find and update that link in every email template, every SMS workflow, and every funnel page where it appeared.
With Custom Values, there is one update to make. All instances update automatically.
For agencies managing client sub-accounts, this means client information changes take one minute rather than a full audit of every template. Update the Custom Value, verify with a test email, done.
Custom Values and Snapshots
Custom Values are where snapshots and client onboarding intersect most powerfully. When a snapshot is built from a template sub-account, all the template content uses Custom Value variables rather than hard-coded business information.
The email footer says {{custom_values.business_name}} rather than “Acme Roofing.” The SMS includes {{custom_values.booking_link}} rather than a specific URL.
When the snapshot is imported into a new client sub-account, all the templates arrive with the variable placeholders intact. The agency then goes to Settings, then Custom Values, and fills in the new client’s specific information: their business name, their phone number, their booking link.
Every template in the sub-account immediately reflects the correct client-specific information.
This workflow – snapshot import followed by Custom Values update – is what makes truly rapid client onboarding possible. The entire setup can be client-ready in under 30 minutes rather than the hours it would take to manually edit every template in every imported element.
The Standard Set of Custom Values
Every HighLevel sub-account benefits from a standard set of Custom Values created during initial setup. The list varies by business type but a practical baseline includes: business name, business phone number, business email address, physical address (full address as a single value), city and state as a separate value, website URL, primary booking or scheduling link, owner or contact person’s first name, and any standard phrase that appears repeatedly in templates – a guarantee statement, a tagline, or a standard service description.
Agencies using snapshots should define this standard set in the template sub-account used for snapshot creation – using placeholder values like “BUSINESS NAME HERE” as the stored text. When the snapshot is imported into a client sub-account, the agency replaces the placeholder values with the client’s actual information as part of the onboarding checklist.
What Can You Do With It?
- Store recurring business information once and reference it everywhere: Business name, phone number, address, booking link – set once in Custom Values and used across every email, SMS, and funnel page without retyping.
- Update all instances of changed information from one place: New phone number, new booking link, new address – one Custom Value update propagates to every template, page, and workflow that uses the variable.
- Make snapshot-based client onboarding fast and accurate: Import the snapshot, update the Custom Values – every template in the account is immediately correct for the new client without editing each template individually.
- Eliminate copy-paste errors in templates: Hard-coded text in templates introduces errors when copied or updated inconsistently. Custom Values create a single source of truth for each piece of business information.
- Build more maintainable template libraries: Templates that use Custom Value variables rather than hard-coded text are easier to transfer between clients, easier to update, and less likely to contain outdated information.
Key Definitions
| Term | What It Means |
|---|---|
| Custom Value | A named text variable stored at the sub-account level. Referenced in templates via a variable syntax that is replaced with the stored text at render or send time. |
| Variable Key | The syntax used to reference a Custom Value in template content – typically formatted as {{custom_values.value_name}}. Generated automatically from the Custom Value’s name when created. |
| Custom Fields | Contact-level variables that store information about individual contacts. Different from Custom Values, which store sub-account-level business information that is the same for all contacts. |
| Merge Tag | A variable placeholder in template content. Custom Values and Custom Fields are both types of merge tags – placeholders replaced with actual data when content is rendered or sent. |
Use Cases by Industry
Home Services Agency – Snapshot Onboarding With Custom Values
An agency has a roofing snapshot with 12 email templates, 8 SMS workflow actions, and 3 funnel pages. Every occurrence of the business name, phone number, address, and booking link in all those elements is a Custom Value variable – not hard-coded text.
The snapshot was built this way deliberately.
A new roofing client signs up on a Monday. By Monday afternoon: the sub-account is created, the snapshot is imported, and the agency fills in 8 Custom Values (business name, phone, address, city, booking link, owner name, website URL, and license number).
All 12 email templates, all 8 SMS actions, and all 3 funnel pages now correctly reference the new client’s information. The client is live by end of day without the agency manually editing a single template.
Result: New client fully configured in under 2 hours including the snapshot import. Custom Values are what make the difference between a snapshot that deploys quickly and one that still requires hours of manual editing after import.
Medical Practice – Phone Number Change
A dental practice switches from one phone number to another after moving to a new office. Without Custom Values, the office manager would need to audit every email template, every SMS workflow, and every funnel page for the old phone number – a process that could easily take an hour and still miss instances.
With Custom Values, the office manager opens Settings, then Custom Values, finds the “Business Phone” value, changes the stored text from the old number to the new number, and saves. Every template, SMS, and page that references {{custom_values.business_phone}} is immediately correct.
The audit is a 2-minute task rather than an hour-long search.
Result: A business information change that would have required a manual audit of every template is handled in 2 minutes. The risk of missed instances – an email campaign still showing the old phone number weeks after the change – is eliminated.
Real Estate Agency – Booking Link Update
A real estate agent switches from Calendly to HighLevel’s built-in calendar for appointment scheduling. The booking link in every automated email and SMS workflow needs to change.
All those messages use the {{custom_values.booking_link}} variable.
The agent updates the Custom Value from the Calendly URL to the HighLevel calendar URL. All automated emails and SMS sequences that send the booking link now send the correct URL.
No workflow editing, no template updates – one Custom Value change updates the entire automation stack.
Result: A system-wide booking link change completed in one Custom Value update. Zero risk of some workflows still sending the old Calendly link while others send the new HighLevel link – consistency is enforced by the single-source Custom Value.
Update your business phone – HighLevel Custom Values change it everywhere
Settings, then Custom Values in any HighLevel sub-account. Create once, reference everywhere.
Who Is This For?
Good fit if you…
- Have business information (name, phone, address, booking link) that appears in multiple email templates, SMS messages, and funnel pages
- Use snapshots for client onboarding and want to make post-import customization fast and comprehensive
- Want a single source of truth for recurring business information rather than hard-coded text spread across many templates
- Manage multiple client sub-accounts and want business information changes to be a one-place update per client
Not the right fit if you…
- Have a very simple setup with one or two templates that rarely change – the value of Custom Values scales with the number of templates and the frequency of information changes
How to Set Up Custom Values
Step 1: Navigate to Custom Values
Sub-account, Settings, then Custom Values.
Step 2: Create the business name value
Click to add a new Custom Value. Name it “Business Name.” Store the business’s name as the text value.
Step 3: Create phone, email, and address values
Repeat for business phone number, business email, and physical address. Give each a clear name.
Step 4: Create booking link and website URL values
Add a “Booking Link” Custom Value with the scheduling URL. Add a “Website URL” value with the site URL.
Step 5: Add any other recurring values
Add Custom Values for any other text that appears in multiple places – owner name, city and state separately, tagline, standard guarantee phrase.
Step 6: Insert variables into email templates
Open each email template in the Email Builder. Replace hard-coded business information with Custom Value variables using the merge tag browser.
Step 7: Insert variables into SMS workflows
In each SMS workflow action that contains business information, replace hard-coded text with Custom Value variables.
Step 8: Insert variables into funnel pages
In funnel and website pages, replace hard-coded business information in text elements with Custom Value variables.
Step 9: Test and verify
Send test emails and preview funnel pages. Confirm all Custom Value variables are replaced with the correct stored text.
A visible variable placeholder ({{custom_values…}}) instead of actual text indicates the variable is not resolving – check the syntax and the Custom Value configuration.
How Does It Connect to HighLevel?
- Snapshot Manager: Custom Values are the post-import customization mechanism for Snapshot Manager deployments. Templates built with Custom Value variables become universally applicable – import the snapshot, update the values, and the entire setup is client-specific.
- Email Builder: The Email Builder‘s merge tag interface includes Custom Values in the browsable variable list. Business information in email templates should use Custom Values rather than hard-coded text.
- Workflow Builder: SMS and email actions in Workflow Builder support Custom Value variable insertion. Any business information in automated workflow messages should be a Custom Value reference.
- Funnel Builder: Text elements in the Funnel Builder support Custom Value variables. Funnel pages built with Custom Values rather than hard-coded text are reusable across clients without manual editing after import.
- Contact Management: Custom Values complement contact-level Custom Fields in personalization. Custom Values supply the business side of a personalized message (business name, phone). Contact Custom Fields supply the recipient side (contact’s first name, their specific situation).
Common Questions
HighLevel Custom Values are at Settings, then Custom Values. Create named text variables for recurring business information – business name, phone, address, booking link. Insert variables into email templates, SMS workflows, and funnel pages using the merge tag interface. When stored text changes, update the Custom Value once and all templates update automatically. For snapshot-based onboarding: import the snapshot, update the Custom Values, and the entire setup instantly reflects the new client’s information.
What are Custom Values in HighLevel?
Sub-account-level text variables that store recurring business information – name, phone, address, booking link – and allow inserting it across templates from a single managed source.
Where do I find Custom Values in HighLevel?
Settings, then Custom Values in the sub-account. Variables created here appear in the merge tag browser throughout the platform.
What is the difference between Custom Values and Custom Fields in HighLevel?
Custom Values store sub-account-level business information (same for all contacts). Custom Fields store contact-level information (specific to each individual contact).
Both are merge tags – different sources.
How do I use a Custom Value in an email template in HighLevel?
In the Email Builder text block, use the merge tag browser to find the Custom Value and insert it. The variable placeholder appears in the template and is replaced with the stored text when the email is sent.
How do Custom Values help when using snapshots in HighLevel?
Templates built with Custom Value variables become instantly client-specific after a snapshot import – just update the Custom Values with the new client’s information and every template in the account is correct.
Can Custom Values be used in funnel pages in HighLevel?
Yes. Text elements in funnel and website pages support Custom Value variable insertion – same as email and SMS templates.
What are common Custom Values to set up for a new HighLevel sub-account?
Business name, phone number, email, physical address, city and state, website URL, booking link, owner name, and any standard phrase that repeats frequently in templates.
To Wrap It Up
Custom Values are one of those features that seems small in isolation but produces compounding value as the sub-account grows. Every template added to the account that uses Custom Values rather than hard-coded text is one fewer template to manually edit when business information changes.
With 5 templates it barely matters. With 50 templates across emails, SMS, and funnel pages, it matters a lot.
The snapshot onboarding workflow is where Custom Values shine most visibly. An agency that builds snapshots with Custom Value variables and an onboarding checklist that includes “update Custom Values” as the first post-import step delivers fully configured client sub-accounts in under an hour.
An agency whose snapshots use hard-coded text delivers sub-accounts that require hours of post-import editing. The operational difference is entirely in whether Custom Values were used in the template sub-account.
Here is how to get started:
- Navigate to Settings, then Custom Values in the sub-account
- Create Custom Values for the standard set: business name, phone, email, address, booking link, website URL
- Open the most-used email template and replace any hard-coded business information with Custom Value variables
- Send a test email to confirm the variables resolve correctly
- Repeat for the most-used SMS workflow actions and funnel pages
- For new snapshots: build the template sub-account using Custom Values throughout so post-import onboarding is a values update rather than a template edit
Build Custom Values into the template sub-account before creating the snapshot – not after. Templates captured in a snapshot retain whatever content they have at capture time.
A snapshot created from a template that uses Custom Value variables captures those variables. A snapshot created from hard-coded text captures that hard-coded text.
The only way to get variable-based templates in the snapshot is to build the template sub-account with Custom Values before the snapshot is created.
Store your business info once, – HighLevel Custom Values keep every template
Settings, then Custom Values in any HighLevel sub-account. Essential for snapshot-based onboarding.
