On this page↑ Back to top

GoHighLevel Custom Fields: 7 Easy Setup Steps

A lead submits a form, but your team still has to ask which service they need. Another customer has two projects, and both budgets end up in the same place.

GoHighLevel custom fields help you store business-specific information where your team can use it. A useful setup starts with deciding what each answer means, which record owns it, and what should happen next.

This guide covers seven setup steps, a practical service-interest example, and checks for forms, workflows, and personalized messages.

GoHighLevel custom fields concept showing a professional with a clipboard beside form cards and folders.

What Are GoHighLevel Custom Fields?

GoHighLevel custom fields store information beyond standard details such as name, email, and phone.

Examples include a person’s preferred contact method, a project’s budget, or a requested service. Supported uses depend on the field’s object and type.

Think of a custom field as a clearly labeled place for an answer. Creating that place does not fill it with data or decide how your team should use it.

Set Up GoHighLevel Custom Fields in 7 Steps

1. Start with the Decision the Field Will Support

Write down the question and the action it should inform.

For example:

“Which service interests this contact, so the team can prepare the right follow-up?”

That is more useful than adding a field called “Extra Information.”

For every proposed field, decide:

  • Who supplies the answer?
  • Who checks or updates it?
  • Which process uses it?
  • What should happen when it is blank?

Start with a small set. A field nobody maintains can make a record look complete while giving the team unreliable information.

2. Choose Contact or Opportunity

Contact fields belong to a person. Opportunity fields belong to a particular deal.

InformationSuggested objectReason
Preferred contact methodContactDescribes the person’s preference
Current service interestContactSuitable when tracking one current intake preference
Project budgetOpportunityCan differ between deals
Target project start dateOpportunityRelates to a particular project

These are planning examples, not required defaults.

Imagine one customer discussing a website rebuild and a separate CRM project. If you store both project budgets in one contact field, the single stored value cannot clearly represent both deals.

HighLevel states that a field’s object cannot be switched after creation. If you choose the wrong object, create a field under the correct one. See its custom field usage guide.

Choose the object before creating your GoHighLevel custom fields.

3. Select a Field Type That Matches the Answer

Choose structured choices when answers should be consistent, and text when a fixed set of options would not fit.

Answer you needSuggested field type
One service from a defined listSingle-select dropdown
Several servicesMulti-select dropdown
Short reference or descriptionSingle line
Longer explanationMulti line
QuantityNumber
Currency amountMonetary
A specific dateDate Picker

For an illustrative Service Interest dropdown, your options might be CRM Setup, Workflow Repair, and Funnel Build.

Avoid using a free-text box when staff need to filter by a small, controlled list. Answers such as “workflow,” “automation repair,” and “fix workflows” may describe similar needs but require extra interpretation.

Use language your customers and team understand. A field should make the next decision easier.

4. Create and Organize the Field

Open the correct sub-account.

  1. Go to Settings → Custom Fields.
  2. Select the intended object.
  3. Open Fields and search for an equivalent existing field.
  4. Choose Create field or the add-field control shown.
  5. Select the field type.
  6. Enter a clear name and configure its options.
  7. Choose a suitable folder and review the preview.
  8. Select Create custom field or Save.

Use a folder such as Lead Qualification to group related GoHighLevel custom fields.

Check the generated field key before referencing it elsewhere. Do not assume a key from another account matches this one.

HighLevel’s custom field management guide covers field creation, types, folders, and keys.

5. Collect the Answer Through a Form

For this example, create Service Interest as a Contact field.

Open Sites → Forms → Builder and edit the intended form. Use Add Object Fields to find the existing field and add it to the form.

Confirm that you selected the correct object and field, especially if similar names exist.

Review the visible label and choices, then save the form. HighLevel’s form and survey field guide explains adding and editing fields.

Submit the actual published form using a contact you control. Open the resulting contact record and check the saved answer.

For GoHighLevel custom fields, a form looking correct is only the first check. The answer also needs to reach the intended record.

If the information belongs to a deal, plan how it will reach the appropriate opportunity. Do not assume that a contact-field answer automatically populates an opportunity field.

6. Use the Stored Value in a Workflow

Once the form saves the answer correctly, decide how the workflow should use it.

For the Service Interest example, an If/Else action could route contacts into these illustrative paths:

Stored answerExample next action
CRM SetupNotify the team responsible for CRM consultations
Workflow RepairPrepare a workflow review task
Funnel BuildNotify the funnel specialist
Blank or unmatchedCreate a clarification task

Select the actual field and supported comparison operator in the condition editor. Choose dropdown options from the available controls rather than guessing their internal identifiers.

HighLevel’s If/Else guide explains routing based on stored information.

If the workflow needs to write a contact field, use Update Contact Field. Its update action replaces the stored value when that step runs; its clear action removes a custom field’s value. See the official Update Contact Field guide.

Do not overwrite a submitted answer with a fixed default before the branch reads it.

7. Test the Complete Process

Test GoHighLevel custom fields from the point of collection through the final action.

TestExpected result
Submit each service optionThe selected answer appears on the intended contact
Inspect the workflowThe contact follows the matching branch
Leave an optional answer blankThe clarification path handles it
Submit another answer for the same contactThe observed update behavior matches your intended process
Check a personalized messageThe correct stored value appears
Test without a stored valueThe message remains understandable

Use test records and communication details you control.

Check more than one answer. Testing only CRM Setup does not establish that Workflow Repair or the blank case works.

If the same person can make several simultaneous inquiries, review whether a contact-level field is sufficient. The test should reflect how your business actually handles repeat customers.

GoHighLevel Custom Fields vs. Custom Values

These features solve different problems.

FeatureStoresExample
Custom fieldInformation associated with an individual recordA contact’s service interest
Custom valueReusable information that stays consistent wherever referencedYour support email or main booking URL

Use a custom field when the answer can differ between records. Use a custom value for shared information you want to reuse.

HighLevel’s Custom Values guide explains the distinction.

For example, the customer’s requested service belongs in a field. Your standard support link can be a custom value.

Keeping these roles clear helps prevent customer-specific information from being treated as a shared business setting.

Use GoHighLevel Custom Fields in Messages

Insert the field using the editor’s Merge Field or Custom Value picker.

Choose the actual field rather than manually typing a token based on its display name. A valid-looking token can still produce no useful result if the stored value or required record context is unavailable.

HighLevel’s merge field guide explains field insertion and context.

Here is an illustrative internal notification:

Subject: New inquiry — [Service Interest]

Contact: [Contact Name]
Requested service: [Service Interest]
Next action: Review the inquiry and prepare the relevant consultation.

The square brackets are placeholders. Replace them with supported fields from the picker.

For a customer message, review the whole sentence:

“Thank you for your interest in [Service Interest].”

If the field is blank, that wording becomes awkward. Handle the missing-value case with appropriate fallback copy or a separate workflow path supported by your setup.

Common GoHighLevel Custom Fields Mistakes

Creating Several Fields for the Same Information

“Service Needed,” “Service Interest,” and “Requested Service” can become three competing sources.

Search before creating a field. Agree on which one the form, staff, filters, and workflow will use.

Storing Deal Details on the Person Without Planning for Repeat Business

A single contact field may be suitable for one current preference. It can be confusing when the customer has several active projects.

Decide which information needs to remain separate for each deal.

Changing Fields Without Checking Dependencies

Before renaming, replacing, clearing, or deleting a field, review where it is used.

Check forms, messages, integrations, saved filters, and workflows. Update the affected process deliberately and test it again.

Collecting Answers That Do Not Change Anything

Every extra question asks the customer or staff member for effort.

Keep fields that support a decision, a service requirement, or a useful record. Remove unnecessary questions from the intake process after reviewing their purpose.

Frequently Asked Questions

Can I Change a Contact Field into an Opportunity Field?

HighLevel says the field’s object cannot be changed after creation. Create the correct field and plan any necessary data migration and dependency updates.

Why Is My Field Missing from a Form or Workflow?

Check its object and field type, then confirm the feature supports them. Also verify that you are working in the correct sub-account.

Can a Workflow Update GoHighLevel Custom Fields?

Yes. Update Contact Field can write supported contact fields. For deal information, use the appropriate opportunity action and identify the intended opportunity.

Why Is a Custom Field Blank in My Message?

Check that the selected record has a value, the token references the intended field, and the message has the required record context.

Need Help Setting Up Your Custom Fields?

If you want help planning GoHighLevel custom fields, contact HL Xperts to discuss your records, forms, and follow-up process.

To organize contacts using the information you collect, read GoHighLevel Smart Lists: 6 Easy Setup Steps.

Need help setting up GoHighLevel?

Get a free 30-minute consultation with HL Xperts. We’ll review your setup and show you what to fix first.

Leave a Reply

Your email address will not be published. Required fields are marked *

Need help with GoHighLevel?

Get expert help with email setup, automations and workflows.

Get GHL Help →

Practical GHL tips. In your inbox.

Unsubscribe anytime.

Related Guides

  • All Posts
  • GoHighLevel