GoHighLevel CRM Setup: Contacts, Tags, Fields and Pipelines
GoHighLevel CRM setup means four things in this order: custom fields for data you need to store, tags and smart lists for segmenting, a pipeline whose stages match your real sales process, then a clean CSV import. Do the structure before the import, because imported data can only map to fields and stages that already exist.
Part of the guide: GoHighLevel setup guide
Key takeaways
- Order matters: custom fields first, then tags, then the pipeline, then the CSV import. HighLevel's import mapping says custom fields must already exist in the account, and a pipeline has to exist before opportunities can be assigned to it.
- A field's object cannot be switched after creation (Contact or Opportunity). If you create it under the wrong object, you recreate it.
- CSV imports: .csv only, one sheet, header row first, each row needs a name, email or phone, and admin users only. HighLevel's pages disagree on the size cap (30 MB in the prerequisites, 50 MB in one FAQ), so split files above 30 MB.
- Smart lists are filters, not containers. You cannot add a contact to one by hand; contacts join and leave as they match the filters, and a list cannot be moved between accounts or included in a snapshot.
- Name stages after what actually happens in your sales process, not after generic CRM defaults. HighLevel's own examples are suggestions only.
What order should I set up the GoHighLevel CRM in?
Set up the GoHighLevel CRM in this order: custom fields, tags and smart lists, the pipeline, then the contact import. HighLevel’s import documentation says custom fields must already exist before you map to them, and a pipeline has to exist before opportunities can be assigned during import. Doing it in reverse means a second import.
This is the contacts-and-pipelines layer of our setup guide, and it sits at step 4 in the 30-day setup checklist. Menu paths below come from HighLevel’s help center, checked 2026-10-13. HighLevel changes labels often, so where its own pages show two paths, both are listed.
CRM setup order
- Custom fields: Settings > Custom Fields, per object (Contact or Opportunity).
- Tags: decide naming rules before anyone creates one.
- Pipeline and stages: Opportunities > Pipelines.
- Smart lists: Contacts > Smart Lists, built on tags, fields and stages.
- CSV import: Contacts > Smart Lists tab > Import Contacts, mapped to the above.
How do I create custom fields in GoHighLevel?
Go to Settings > Custom Fields, select the object, open the Fields tab, click Create field, pick a field type, configure it, check the live preview and click Create custom field (HighLevel article modified September 1, 2026). Groups of related fields go in folders from the Folders tab.
Decisions to make before you click:
- Object. A field belongs to either Contact (information about a person) or Opportunity (information about one deal). HighLevel states a field’s object cannot be switched after creation, so a budget that changes per deal belongs on the Opportunity, and a birthday belongs on the Contact.
- Type. Available types include single line, multi line, numbers, monetary values, dropdowns, radio selections, checkboxes, dates and file uploads. Use a dropdown instead of free text for anything you will filter on, because free text produces “Roof”, “roof” and “roofing” as three values.
- Key. The key identifies the field for merge fields and automation. Name fields so the key is readable, since the key is what you will see in workflows. For the difference between per-contact fields and account-wide data, see custom values vs custom fields.
- Duplicates. HighLevel advises searching existing fields before creating a new one.
How should I set up tags and smart lists?
Use tags for groups you will filter or automate on, and build smart lists on top of them. HighLevel’s smart list article lists tags as one of the filter types, and adding a tag that matches a list’s filter puts that contact in the list automatically.
Create smart lists from Contacts > Smart Lists: click the add smart list button, choose filters from the dropdown, enter the details, click Apply, use AND to stack filters, then click Create. Four behaviors to know (HighLevel article modified May 19, 2026):
| Behavior | What it means for you |
|---|---|
| Contacts cannot be added manually | Membership is decided by the filters. To add someone, change the data the filter reads, such as a tag |
| Lists are created at the user level | Global lists can be pushed to the whole account; check who created a list before relying on it |
| Lists cannot be transferred between accounts or added to a snapshot | Rebuild them in every new sub-account |
| Email campaigns use membership at send time | A contact who joins the list between scheduling and sending gets the email |
Tag naming rules worth agreeing on before the first import: lowercase, one concept per tag, a prefix by purpose (for example source-, status-, interest-), and no spaces if workflows will reference them. Where the tag management screen sits has moved between versions, so look under Contacts and Settings for Tags rather than trusting an older tutorial. Renaming or deleting a tag that a workflow or smart list uses can break that workflow, so check usage before you change one.
How do I create a pipeline and stages?
In HighLevel’s current article the path is Opportunities > Pipelines > Create New Pipeline: enter a name, add stages, and save (modified August 24, 2026). HighLevel’s Labs notes describe an updated pipelines experience; older guides place pipelines under Settings > Pipelines. Pipeline names must be unique within a sub-account.
HighLevel’s example stage names (New Lead, Hot Lead, Booked Call, No Show, Delayed, Closed, Non-responsive) are labeled suggestions only. Write stages for your own process:
| Business | Example stages |
|---|---|
| Home services | New request, Contacted, Estimate booked, Estimate sent, Follow-up, Job scheduled |
| Clinic or med spa | New inquiry, Consult booked, Consult done, Treatment plan sent, Booked |
| B2B services | New lead, Discovery booked, Proposal sent, Negotiation |
Rules that keep a pipeline usable:
- One stage per decision point, not per task.
- Put “won”, “lost” and “abandoned” in the opportunity status, not in extra stages. HighLevel’s setup article does not list the status values, so confirm them on your screen.
- Build for the report you want. If you want to see where deals stall, every stage needs a clear entry rule.
- If workflows will create opportunities, the workflow must be published, the contact must meet the trigger, the Create/Update Opportunity action must be configured, and the right pipeline and stage selected. The “Allow Opportunity to Move” toggle controls whether an existing opportunity updates when a contact re-enters the workflow. The workflow troubleshooting page covers failures, and the automation pillar covers the build.
How do I import contacts from a CSV?
Go to Contacts > Smart Lists tab > Import Contacts, or use the Import button in Opportunities (HighLevel article modified September 16, 2026). A separate older article describes the same button on the Contacts tab. The steps:
- Choose Contacts, Opportunities or both.
- Upload the CSV.
- Choose whether to create, update, or both.
- Map each column to a system field.
- On review, optionally create a smart list, add the contacts to a workflow, or add a tag.
- Confirm and proceed, then monitor progress under Bulk Actions, where Show Stats displays results and the error log.
File rules from HighLevel:
| Rule | Detail |
|---|---|
| Format | .csv only; Excel and Google Sheets files are not accepted |
| Size | Under 30 MB in the prerequisites. Another HighLevel page says 50 MB, so treat 30 MB as the safe limit |
| Sheets | One sheet only |
| Header row | First row cannot be blank and must have at least one header matching a system field |
| Required per row | At least one of name, email or phone (or Contact ID for updates) |
| Who can import | Admin users only |
| Phone numbers | Digits only per HighLevel; remove spaces, dashes, parentheses and letters |
| Custom fields | Must already exist before you map to them |
| Empty cells | The “Don’t update Empty Values” checkbox stops blanks from overwriting existing values |
| Duplicates | Matched by email first, then phone, and a match updates the record. Remove duplicates within the file beforehand |
| Notes | One note per contact, up to 5,000 characters |
Tag every import. A tag such as import-2026-10-crm-migration lets you find, segment or roll back that batch, and it is the most dependable way to build a smart list around the imported group. If rows fail, download the error log from Bulk Actions and fix the source file; HighLevel also has a separate troubleshooting article for CSV import errors. Moving data out later is covered in how to export contacts.
What should I check after setup?
Create one test contact by form, one by import and one by hand. Confirm each lands with the right tags and fields, an opportunity appears where expected, and the smart list picks them up. Then check who can see what: user roles and permissions control whether staff see all records or only assigned ones.
If you are migrating from another CRM with deals, notes and history, the mapping work grows quickly; see the HubSpot to GoHighLevel migration guide. When the data work is the bottleneck, a scoped build is the shortcut: GoHighLevel setup agency.
Sources
- HighLevel Support: How to Use Custom Fields (modified September 1, 2026): paths, object rule, types, key. Checked on 2026-10-13.
- HighLevel Support: How to Create and Manage Smart Lists (modified May 19, 2026): steps and limits. Checked on 2026-10-13.
- HighLevel Support: Getting Started, Setup Pipelines and Opportunities (modified August 24, 2026): pipeline path, example stages, workflow caveats. Checked on 2026-10-13.
- HighLevel Support: Importing Contacts and Opportunities via CSV (modified September 16, 2026). Checked on 2026-10-13.
- HighLevel Support: Importing Contacts using a CSV file (modified March 18, 2026): admin-only, size, dedupe order. Checked on 2026-10-13.
- HighLevel Support: Getting Started, Import Existing Contacts (modified March 24, 2026): recommended order (fields before mapping). Checked on 2026-10-13.