If you're running a GoHighLevel agency with multiple sub-accounts, you know how time-consuming it is to manually recreate custom objects across different client accounts. Every new sub-account means starting from scratch—defining custom fields, setting up associations, configuring validations. What if you could copy an entire custom object setup in seconds instead of hours?
GoHighLevel's Snapshots feature with Custom Object Support lets you do exactly that. In this guide, I'll walk you through how to leverage Snapshots to replicate custom objects and their associated data across your agency, maintain consistency, and scale your operations without the repetitive setup work.
Whether you're scaling to 50 sub-accounts or managing complex custom data structures for niche industries, this feature is a game-changer. And if you haven't explored GoHighLevel yet, start with a free 30-day trial to see how it simplifies agency operations.
What Are Custom Objects in GoHighLevel?
Before diving into Snapshots, let's clarify what custom objects are and why they matter for your agency.
Custom objects let you model anything your business tracks that doesn't fit neatly into GoHighLevel's standard Contact, Company, or Opportunity entities. They're ideal when your CRM needs to reflect real-world entities, relationships, or processes unique to your business or your clients' industries.
Examples include:
- Real estate agencies: Property listings with custom fields like square footage, zoning, inspection reports
- E-commerce agencies: Product SKUs, inventory tracking, supplier relationships
- Service-based agencies: Project milestones, equipment rentals, service contracts
- Fitness businesses: Class schedules, member assessments, training progress
When you create a custom object, you define its structure by adding custom fields, setting up associations to contacts or other objects, and configuring validations. Without Snapshots, replicating this across sub-accounts means repeating the entire setup process for each new client.
Understanding Snapshots and Custom Object Support
Snapshots are GoHighLevel's built-in replication feature that lets you capture the configuration of your account—including workflows, funnels, forms, email sequences, and now custom objects—and deploy it to other sub-accounts instantly.
The Custom Object Support feature specifically allows you to:
- Copy custom object schemas (the structure and field definitions)
- Transfer custom field configurations and data types
- Preserve associations between custom objects and contacts
- Replicate field validations and default values
- Clone the entire custom object setup without manual re-entry
This is especially powerful for agencies because it means you can build a "golden standard" custom object once, then roll it out to hundreds of sub-accounts with a single snapshot deployment.
💡 Pro Tip
Custom object snapshots are most effective when you have a repeatable business model across clients. Build the schema once with all your custom fields, then snapshot it to any new sub-account in seconds.
Step-by-Step: How to Copy Custom Objects Using Snapshots
Here's the exact process for capturing and deploying a custom object snapshot:
Step 1: Access Your Custom Objects
Log into your GoHighLevel master account and navigate to Settings → Custom Objects. You'll see all custom objects you've created. Select the one you want to snapshot.
Step 2: Create a New Snapshot
Go to Settings → Snapshots → Create New Snapshot. Name it descriptively (e.g., "Real Estate Properties - Full Setup" or "Service Contracts - Jan 2024"). This helps you identify it later when deploying to multiple sub-accounts.
Step 3: Select Custom Objects to Include
In the snapshot builder, you'll see a section for Custom Objects. Toggle ON each custom object you want to include. The system will automatically capture:
- All custom fields and their data types (text, number, date, dropdown, etc.)
- Field validation rules
- Default values
- Associations to contacts and other objects
- Field visibility and permissions settings
Step 4: Review and Save
Review the snapshot configuration. You can optionally include other elements (workflows, automations) alongside the custom objects. Click Save Snapshot.
Step 5: Deploy to Sub-Accounts
Navigate to Snapshots → Select Your Snapshot → Deploy. Choose which sub-accounts should receive this configuration. GoHighLevel will then replicate the custom object structure across all selected sub-accounts within minutes.
Step 6: Verify and Test
Log into a sub-account and navigate to Settings → Custom Objects. Confirm the custom object appears with all fields, associations, and validations intact. Create a test record to ensure everything functions correctly.
This is built into GoHighLevel. Try it free for 30 days →
Key Benefits of Using Snapshots for Custom Objects
1. Time Savings at Scale
Manually creating a complex custom object with 15+ fields takes 30-45 minutes per sub-account. With Snapshots, you deploy to 100 sub-accounts in seconds. For growing agencies, this compounds into hundreds of hours saved annually.
2. Consistency Across Accounts
Every sub-account gets the identical custom object structure, field naming conventions, validations, and associations. This eliminates data quality issues and makes it easier to report across clients.
3. Faster Onboarding
New clients can be activated with a complete, production-ready custom object setup on day one instead of day three. This improves time-to-value and reduces manual configuration work.
4. Updates Across the Board
If you refine a custom object (add fields, update validations), you can snapshot the updated version and re-deploy it. This keeps all your client accounts in sync with your best practices.
5. Reduced Errors
Manual recreation of complex custom objects introduces typos, missed fields, and inconsistent naming. Snapshots eliminate human error in the replication process.
Important Limitations and Best Practices
Key Limitations to Know
- Custom Object Data is NOT Included: Snapshots copy the schema, not the records. If you have 500 existing property listings, they won't transfer. Use Bulk Import for existing data.
- Associations May Require Setup: If your custom object associates to specific contacts or companies, those relationships won't auto-populate across sub-accounts since the related records differ.
- Workflows Using Custom Objects: While you can snapshot workflows that reference custom objects, test them in the target account to ensure automations trigger correctly.
- One-Way Process: Snapshots deploy from parent to sub-accounts. You can't push changes from a sub-account back to the parent.
Best Practices
- Build Templates First: Create and test your custom object thoroughly in a staging sub-account before snapshotting to production accounts.
- Name Fields Clearly: Use descriptive, consistent naming (e.g., "property_square_feet" not "sqft"). This makes snapshots easier to manage and document.
- Document Your Snapshots: Keep a spreadsheet of what each snapshot contains. As you scale, this prevents confusion about which snapshot to deploy.
- Test Before Full Deployment: Deploy a snapshot to one test sub-account, verify everything works, then roll out to your full sub-account fleet.
- Combine with Bulk Import: Use Snapshots for schema replication, then use Bulk Import to populate custom object records with actual data.
Comparing Snapshots vs. Bulk Import for Custom Objects
Both features work with custom objects, but they serve different purposes. Understanding the difference ensures you use the right tool.
Snapshots (Schema Replication)
- Copies the custom object structure, fields, validations, and associations
- Deploys to multiple sub-accounts at once
- Does NOT include existing records or data
- Best for: Rolling out standardized custom object setups across your agency
Bulk Import (Data Loading)
- Imports custom object records and data from a CSV file
- Works on a single account at a time
- Requires the custom object schema to already exist
- Best for: Populating custom objects with large datasets without manual entry
The Ideal Workflow: Use Snapshots to roll out the custom object structure to all your sub-accounts (Day 1). Then, for each sub-account with data, use Bulk Import to load existing records from the client's database (Day 2-3).
Common Questions About Custom Objects in Snapshots
Can I snapshot a custom object with existing data?
Snapshots only replicate the schema (fields, validations, associations), not the records themselves. To copy data, use Bulk Import or the Custom Object API.
Will custom object associations to contacts work across sub-accounts?
The association structure will replicate, but the specific contact relationships won't transfer since each sub-account has different contacts. You'll need to re-associate records in the target account or use automation to create new associations based on matching criteria.
What happens if I deploy a snapshot with custom objects to a sub-account that already has a custom object with the same name?
GoHighLevel will ask you to confirm. You can merge, replace, or rename the incoming custom object to avoid conflicts. Test this scenario in a non-critical account first.
Can I edit a custom object after snapshotting it to sub-accounts?
Yes. Changes to the custom object in your master account don't automatically update sub-accounts. You'd need to create a new snapshot with the updated schema and redeploy.
Snapshots with custom object support transform how agencies manage data infrastructure at scale. Instead of spending hours on repetitive configuration work, you build once and deploy everywhere—freeing up time to focus on client strategy and growth.
If you're not yet using GoHighLevel, this feature alone justifies exploring the platform. The ability to standardize custom object setups across your entire agency while maintaining flexibility per client is exactly what growing agencies need.