If you're running a digital marketing agency or managing multiple client types—real estate agents, insurance brokers, healthcare providers, or SaaS companies—you've probably hit a wall with standard CRM fields. Contacts and opportunities work great for basic deals, but what happens when you need to track properties, vehicles, policies, or patient records? That's where Custom Objects in GoHighLevel come in.
Custom Objects are the game-changer that turns GoHighLevel from a one-size-fits-all CRM into a fully customizable platform that adapts to your business logic. In October 2025, GoHighLevel expanded Custom Objects to all subscription tiers with higher limits—meaning every agency can now build industry-specific solutions without paying premium prices.
In this guide, I'll walk you through everything you need to know: what Custom Objects are, how to set them up, best practices for different industries, and how to unlock the full potential of GoHighLevel's flexibility. If you're ready to see this in action, start your free 30-day trial and test Custom Objects with real clients today.
What Are Custom Objects and Why Your Agency Needs Them
At its core, a Custom Object is a custom record type that extends GoHighLevel's native CRM beyond the standard Contact and Opportunity models. Think of it as creating a new data structure that mirrors your specific business needs.
Here's the difference:
- Contacts = People or companies you do business with
- Opportunities = Deals or projects with those people
- Custom Objects = Everything else: properties, vehicles, insurance policies, rental agreements, patient records, inventory items, projects, assets—whatever your business tracks
Why does this matter? Because GoHighLevel's out-of-the-box setup assumes every business follows the same sales funnel. But reality is messier. A real estate agent needs to track multiple properties per contact. An insurance broker needs separate policy records. A healthcare practice needs patient history. A property management company needs to link tenants to properties to maintenance tickets.
Custom Objects solve this by letting you:
- Create one-to-many relationships (one contact → multiple properties, policies, or patients)
- Define custom fields specific to each record type
- Automate workflows that trigger based on Custom Object data
- Build forms and surveys that create or link Custom Object records
- Run reports and analytics across your custom data
- Integrate Custom Objects with automation, email, SMS, and API calls
💡 Pro Tip
Before creating a Custom Object, map out your data structure on paper. Ask: "What information do I need to track that doesn't fit into Contacts or Opportunities?" This clarity saves you hours during setup and prevents messy restructuring later.
How to Create Custom Objects in GoHighLevel
Creating a Custom Object in GoHighLevel is straightforward, but the details matter. Here's the step-by-step process:
Step 1: Navigate to Object Settings
Go to Settings → Objects in your GoHighLevel account. You'll see the default Contact and Opportunity objects. Look for the Create New Object button (usually a blue plus icon).
Step 2: Name Your Custom Object
Choose a clear, singular name. Examples:
- Property
- Vehicle
- Policy
- Patient
- Lease Agreement
- Maintenance Request
GoHighLevel will auto-generate a slug (the internal identifier). Use lowercase, no spaces.
Step 3: Set Display Name and Pluralization
The display name is what your team sees in the UI. Make it human-readable. GoHighLevel will auto-pluralize, but you can override it. "Property" → "Properties" is correct, but if you're creating a custom object called "Data," you'd want to pluralize it manually.
Step 4: Save and Begin Adding Custom Fields
Once created, you can immediately start adding fields. Don't overthink this stage—you can add or modify fields anytime.
Setting Up Custom Fields and Associations
Custom Objects are only useful if they capture the right data. This is where custom fields come in.
Adding Custom Fields to Your Object
Within your Custom Object settings, click Add Field. GoHighLevel supports:
- Text (short text, long text, email, phone, URL)
- Numeric (number, currency, percentage)
- Selection (dropdown, multi-select, radio buttons)
- Date/Time (date only, date + time)
- Linked Records (associate to Contacts, Opportunities, or other Custom Objects)
For a real estate "Property" object, you might add:
- Address (Text)
- Property Type (Dropdown: Single-Family, Multi-Family, Commercial)
- Purchase Price (Currency)
- Square Footage (Number)
- Year Built (Date)
- Owner Contact (Linked Record → Contact)
Creating Associations Between Custom Objects
Associations are the relationships between records. The most common pattern is one-to-many: one Contact has many Properties, many Policies, many Patients, etc.
To create an association:
- In your Custom Object settings, find the Associations section
- Click Add Association
- Choose the object you're linking to (Contact, Opportunity, or another Custom Object)
- Set the relationship type (typically "one Contact → many Properties")
- Save
Once created, you'll see a "Linked [Object]" field appear in your form builder and workflow tools. This is how you connect data across your CRM.
💡 Pro Tip
Use linked fields (not just text descriptions) whenever possible. If you have a "Landlord Contact" field in a Lease Agreement object, link it to an actual Contact record rather than typing a name. This enables automation, reporting, and two-way syncing.
This is built into GoHighLevel. Try it free for 30 days →
Plan Limits and the October 2025 Update
Before the October 2025 update, Custom Objects were only available on premium plans. GoHighLevel has democratized this feature significantly.
Current Plan Limits (October 2025+):
- All Plans: 10 Custom Objects per location
- Starter & Pro Plans: 10 Custom Objects
- Agency & Unlimited Plans: 10 Custom Objects (with higher field and record counts)
This means even if you're on a basic GoHighLevel tier, you can create up to 10 custom record types. For most agencies, this is more than enough to serve diverse client industries in a single account.
What about field limits? GoHighLevel doesn't impose a hard cap on the number of custom fields per object—but there's a practical limit. Keep your objects focused. If you're creating a "Property" object, don't throw in 50 fields. Stick to the essentials, use linked records for complex relationships, and leverage automations to populate derived data.
Real-World Custom Object Examples by Industry
Let's see how Custom Objects work across different industries:
Real Estate Agency
- Custom Object: Property
- Fields: Address, Property Type, Price, Square Footage, Status (Active, Pending, Sold), Owner Contact, Listing Agent
- Automation Use: When a property status changes to "Sold," trigger an email to the owner and agent. Create a task for closing coordination.
Insurance Brokerage
- Custom Object: Policy
- Fields: Policy Number, Policy Type (Auto, Home, Business), Coverage Amount (Currency), Expiration Date, Insured Contact, Renewal Status
- Automation Use: 90 days before renewal, trigger a reminder SMS to the insured contact. Create a task for the broker.
Healthcare Practice
- Custom Object: Patient
- Fields: Patient ID, Date of Birth, Medical Record Summary (long text), Last Appointment Date, Insurance Provider, Primary Care Provider
- Automation Use: When a patient books an appointment via a form, create a Patient record and link it to their Contact. Send a confirmation email with pre-appointment instructions.
Property Management
- Custom Objects: Property, Lease, Maintenance Request
- Associations: Contact → many Leases, Property → many Maintenance Requests, Lease → Tenant Contact
- Automation Use: When a maintenance request is created, notify the property manager. When a lease expires, prompt the landlord to renew.
Best Practices for Leveraging Custom Objects in Workflows and Forms
Creating a Custom Object is step one. Integrating it into your workflows and forms is where the magic happens.
Using Custom Objects in Forms
When you build a form in GoHighLevel, you can now set it to create or update Custom Object records. For example:
- A real estate agent uses a "New Property Listing" form that creates a Property record and links it to the agent's Contact
- An insurance broker uses a "New Policy Application" form that creates a Policy record and auto-populates fields from the applicant's Contact
- A property manager uses a "Maintenance Request" form that creates a request, links it to the relevant property and tenant, and triggers a workflow
Custom Objects in Workflows and Automation
Workflows are where Custom Objects truly shine. You can:
- Trigger workflows when a Custom Object record is created or updated (e.g., "When a Property is added to the system, send a welcome email to the owner")
- Filter contacts based on linked Custom Object data (e.g., "Send SMS only to contacts who have an active policy expiring in 30 days")
- Create conditional branches based on Custom Object field values (e.g., "If property type is 'Commercial,' route to the commercial team")
- Populate Custom Object fields via automation (e.g., "Calculate days-to-expiration and store in the Policy object")
Reporting on Custom Objects
GoHighLevel's reporting module supports Custom Objects. Build dashboards that show:
- Total properties by type and agent
- Policies expiring this month
- Open maintenance requests by property
- Conversion rates from inquiry to booked appointment
This data drives insights and helps you optimize client processes.
Using Transient Data for Temporary Storage
Sometimes you need to hold data temporarily before it's ready to be stored in a Custom Object. GoHighLevel's transient data feature lets you stage information in workflows, validate it, and then create or link records once it's confirmed. This is especially useful for multi-step form processes or data imports.
Custom Objects aren't just a nice feature—they're the reason GoHighLevel works for agencies serving any industry. Whether you're managing real estate agents, insurance brokers, healthcare providers, or property managers, Custom Objects let you build a CRM that matches your business logic, not the other way around.
The October 2025 update made this power available to every plan tier. Start simple: pick one Custom Object that solves your biggest data tracking problem, set up the essential fields, link it to your workflows, and iterate. Within weeks, you'll wonder how you ever managed without it.