Your agency manages complex client data—properties, vehicles, policies, patient records, leads—but your CRM only has space for Contacts and Opportunities. That's where you hit a wall. Until now.
GoHighLevel's Custom Objects feature lets you build unlimited record types that match your exact business model. As of October 2025, every subscription tier—Starter, Unlimited, and Pro—can create up to 10 Custom Objects per location. This means you can finally track everything your agency needs without hacking workarounds or switching platforms.
In this guide, I'll walk you through what Custom Objects are, why they matter for agency scalability, and exactly how to set them up to streamline operations. Start with a free 30-day trial to test this yourself—double the standard trial period.
What Are Custom Objects in GoHighLevel?
Custom Objects are record types you create to model data that doesn't fit neatly into standard CRM entities like Contacts, Companies, or Opportunities. Think of them as database tables you design from scratch.
Standard CRM objects work for generic business data. But what if you need to track:
- Real estate properties (address, square footage, list price, status)
- Vehicles (make, model, VIN, maintenance history)
- Insurance policies (policy number, coverage type, expiration date)
- Patient records (medical history, appointments, treatment plans)
- Service contracts (terms, renewal dates, payment schedules)
- Equipment inventory (serial numbers, warranty, location)
Custom Objects give you that flexibility. You define the fields, set up relationships between objects (like linking a property to a contact), and use them across workflows, automations, and forms—just like built-in CRM objects.
💡 Pro Tip
As of October 2025, all subscription tiers get the same Custom Objects feature—10 per location. Previously this was limited to higher tiers. If you've been waiting for an excuse to use this, now's the time.
Why Custom Objects Matter for Agencies
Most agencies serve clients in specific industries. A real estate agency doesn't need the same CRM structure as a solar installation company or a healthcare practice. Off-the-shelf CRM solutions force you into a one-size-fits-all box.
Custom Objects solve this by letting you own your data structure.
Instead of cramming property details into Contact custom fields, you create a dedicated Properties object. Instead of faking relationships in spreadsheets, you link records directly. Your CRM becomes a reflection of how your business actually works.
This means:
- Cleaner data: No more confusing field arrangements or duplicate information
- Better workflows: Automate actions triggered by Custom Object changes
- Scalable client management: As you take on more complex clients, your system grows with you
- Competitive advantage: You can offer deeper integrations and customizations than generic CRM competitors
How to Create Custom Objects: Step-by-Step
Creating a Custom Object in GoHighLevel takes minutes. Here's exactly how:
Step 1: Navigate to Object Settings
From your GoHighLevel dashboard, go to Settings → CRM → Object Settings. You'll see your standard objects (Contacts, Companies, Opportunities) and an option to create new ones.
Step 2: Click "Create Object"
Give your object a name (e.g., "Properties," "Vehicles," "Policies") and a plural form. GoHighLevel uses the singular form in workflows and the plural in your database views.
Step 3: Define Your Fields
Add the fields you need to track. GoHighLevel supports:
- Text, Email, Phone
- Number, Currency, Percentage
- Date, Date/Time
- Single Select, Multi-Select
- Checkbox, Toggle
- Lookup (relationships to other objects)
Step 4: Set Up Required Fields
Mark which fields are mandatory. For a Properties object, you might require Address, Property Type, and Owner Contact.
Step 5: Save and Deploy
Click Save. Your Custom Object is now live. You can immediately start creating records, adding it to forms, and building automations around it.
This is built into GoHighLevel. Try it free for 30 days →
Setting Up Custom Fields and Relationships
The real power of Custom Objects emerges when you set up relationships between them and your existing CRM data.
One-to-Many Relationships (Most Common)
Link multiple child records to a single parent. Example: One Contact owns multiple Properties. You'd add a "Lookup" field in Properties that connects back to Contacts.
This is the relationship type you'll use 80% of the time. It lets you:
- View all properties for a contact instantly
- Trigger workflows when a property is added or updated
- Generate reports grouped by contact
Many-to-Many Relationships
Multiple records of one type connect to multiple records of another. Example: A Contact can have multiple Insurance Policies, and each Policy can be shared by multiple Contacts. This is more complex but essential for certain business models.
Custom Fields Best Practices:
💡 Pro Tip
Use consistent naming conventions across all your Custom Objects. If you have a date field for property listing dates, don't call it "listed_date" in one object and "date_listed" in another. This makes automation setup faster and reduces errors when managing multiple objects.
- Keep field names clear and lowercase (no spaces)
- Add helpful descriptions so team members know what each field is for
- Use dropdowns (Select fields) instead of free text when possible—this improves data quality
- Create calculated fields when you need derived data (like days on market for properties)
Best Practices for Maximizing Custom Objects
1. Plan Before You Build
Sketch out your data model on paper or in a spreadsheet first. What objects do you need? How do they relate? What fields does each need? Five minutes of planning saves hours of restructuring later.
2. Use Forms to Auto-Create Related Records
When a client submits a form (e.g., a property listing form), have GoHighLevel automatically create both a Contact and a Property object. This eliminates manual data entry and keeps relationships clean.
3. Leverage Automations to Keep Data Synced
If a property status changes to "Sold," trigger a workflow to update the contact's opportunity stage. Custom Objects work with automations just like standard CRM fields.
4. Build Views for Different Teams
Your sales team views Properties by status. Your admin team views them by owner. Create multiple views of the same Custom Object so each team sees what they need.
5. Use Bulk Import for Existing Data
Have a list of 500 properties you need to migrate? GoHighLevel supports bulk import for Custom Objects. Use CSV files to load historical data in one go.
Real-World Use Cases
Real Estate Agencies
Create a Properties object (address, price, beds/baths, HOA fees, photos) and link it to Contacts (buyers, sellers, agents). Track showings in Opportunities tied to the Property. Your entire business model lives in one CRM.
Insurance Agencies
Build a Policies object with policy number, coverage type, premium, and renewal date. Link to Contacts for policyholders. Use automations to send renewal reminders 30 days before expiration.
HVAC/Service Companies
Create a Service Calls object to track job date, equipment type, services performed, and cost. Link to Contacts (customers) and Opportunities (follow-up sales). Run reports to identify upsell opportunities.
Healthcare Practices
Build a Patients object with medical history fields (compliant with your data policies). Create an Appointments object linked to Patients. Automate appointment reminders and follow-up tasks.
Frequently Asked Questions
Can I edit or delete a Custom Object after creating it?
Yes. You can edit field names, add new fields, and modify relationships anytime. However, if you delete an object with existing records, those records are permanently removed. Always back up critical data first.
How many Custom Objects can I create per location?
All subscription tiers (Starter, Unlimited, Pro) can create up to 10 Custom Objects per location as of October 2025. If you need more, contact GoHighLevel support about enterprise options.
Can I use Custom Objects in workflows and automations?
Absolutely. Custom Objects work with GoHighLevel's workflow engine. You can trigger automations when a record is created, updated, or deleted, and use Custom Object fields in conditions and actions.
What's the difference between a Custom Object and a Custom Field?
Custom Fields add additional data points to existing objects (like adding a "Referral Source" field to Contacts). Custom Objects create entirely new record types with their own fields and relationships. Use Custom Objects for standalone data models; use Custom Fields to extend existing objects.
Can I import existing data into Custom Objects?
Yes. GoHighLevel supports CSV bulk import for Custom Objects. Map your spreadsheet columns to Custom Object fields and upload in bulk. This works well for migrating data from legacy systems.
Custom Objects in GoHighLevel aren't just a feature—they're a fundamental shift in how you can build your CRM. Instead of forcing your business into a template, you build a template that matches your business.
If you're managing agencies or clients with complex data needs, this is the unlock you've been waiting for. The 10-object limit per location is more than enough for most use cases, and the flexibility it provides will streamline operations immediately.