On this page

Guides

HubSpot properties at scale: bulk-create and sync custom properties across portals

Last updated: October 2026

Short answer: HubSpot creates custom properties one at a time in Settings > Properties, or while you map columns during an import. Developers can create many at once with the Properties API's batch endpoint. HubSpot's multi-account copying creates the custom properties that a copied workflow or form needs, but it doesn't copy standalone property definitions. HubCreate (hubcreate.io) is a HubSpot implementation platform for Solutions Partner agencies. Its Bulk Property Creation creates whole property sets from a CSV built on the HubCreate template, or from a guided builder, for contacts, companies, deals, tickets, custom objects, and more. You can then deploy the same set to each connected client portal, so every client starts with the same data model.

The problem: properties are the slowest part of every build

Every implementation starts with the data model, and many clients need dozens of custom properties across contacts, companies, and deals. In HubSpot's property editor, each one means the same clicks: object, group, label, field type, options, description, save. Then you do it again for the next client.

Doing it by hand at that scale causes problems that last:

  • Inconsistent internal names. "lead_source_detail" in one portal and "lead_source_details" in another breaks your reporting templates and any workflow you want to reuse. HubSpot doesn't let you edit a property's internal name after it's created.
  • Dropdown drift. Options typed by hand differ in spelling, order, and internal value from client to client.
  • Missing groups and descriptions. Properties land in a default group with no explanation.
  • Broken deployments. A workflow or form that references a property the target portal doesn't have will fail or need rework.

Your options compared

HubSpot property editor HubSpot import, API, or asset copying HubCreate Bulk Property Creation
How it works Create each property in Settings > Properties Create properties while mapping an import; batch create with the Properties API; multi-account copying creates properties a copied asset needs CSV upload on the HubCreate template, or a guided property builder
Many properties at once No Import: one at a time in the mapping panel. API: yes, if you write code Yes
Groups, dropdown options, field types Yes, set by hand API: set in the request. Import: configured per property in the mapping panel Groups, enumerations (dropdown options), and advanced field types
Internal names Fixed once the property is created Set in the API request Friendly names converted into HubSpot-ready formats
Objects All All, by endpoint Contacts, companies, deals, tickets, leads, products, line items, quotes, invoices, orders, payments, carts, and custom objects
Same set across client portals Rebuild in each portal API: run your script against each portal. Multi-account: only properties attached to copied assets, inside one organization Deploy the same property set to each connected portal
Skill needed None API: a developer and a private app or OAuth app None

HubSpot sources: Create and edit properties, Import records for a single object, Properties API: create a batch of properties, Copy assets with multi-account management.

Step 1: Design the property set in a spreadsheet

Whatever tool creates the properties, the design work happens in a sheet. One row per property:

Column Notes
Object Contact, company, deal, ticket, or a custom object
Group A named group per topic, such as "Lead qualification" or "Renewal", so properties don't land in the default group
Label What users see. Keep it short and specific
Internal name Lowercase with underscores, and the same in every portal. Decide it now, since HubSpot won't let you change it later
Field type Single-line text, number, date, dropdown select, checkboxes, and so on
Options For dropdowns and checkboxes: each option's label and internal value, in display order
Description One sentence on what the field is for and who fills it in
Owner / source The workflow, form, or integration that writes it. Record this now to avoid duplicate writes later

Review the sheet with the client before anything is created. It's much easier to rename a row than an internal property.

Step 2: Check what already exists

In an inherited portal, many of the fields you need may already exist under other names. Before creating anything:

  • Export the current properties. In Settings > Properties, Export all properties produces a spreadsheet of each property's name, internal name, type, description, group, options, creator, usages, and fill rate (Organize, delete, and export properties).
  • Match before you create. Reuse a default HubSpot property where one fits, and map near-duplicates to your standard instead of adding another one.
  • Note unused fields. Properties with no data or no usages are cleanup candidates. Before archiving, HubSpot shows which assets prevent it, such as a workflow or form that uses the property.

Step 3: Create the properties

Natively in HubSpot

  • One at a time: Settings > Properties > Create property. Choose the object, group, label, and field type, and add options and a description.
  • During an import: HubSpot's import tool lets you create a new custom property when mapping a column that doesn't match an existing one (Import records for a single object). You configure each property one at a time in the mapping panel, and only while importing records.
  • With the API: the Properties API has a batch create endpoint per object, which takes a list of property definitions with name, label, type, field type, group, and options (Create a batch of properties). It's the fastest native route if you have a developer, and you need to authenticate it separately for each portal.

With HubCreate, step by step

  1. Connect the portal. Connect the client portal over HubSpot OAuth from HubSpot Accounts. (Docs: HubSpot Accounts)
  2. Select the account. Open Bulk Property Creation and choose the HubSpot account to deploy to. Make sure you have permission to make changes there. (Docs: Deploying Bulk Properties)
  3. Select the object. Pick contacts, companies, deals, or another object, including custom objects. Bulk creation also covers tickets, leads, products, line items, quotes, invoices, orders, payments, and carts.
  4. Create the properties. Upload a CSV formatted on the HubCreate template (copy the rows from your design sheet), or add them with the guided property builder. HubCreate converts friendly names into HubSpot-ready formats and supports property groups, dropdown options, and advanced field types. (Bulk Property Creation)
  5. Review and deploy. Check the list, then deploy it to the selected account. Property creation is logged in your team's Activity feed with the portal it ran on.

Step 4: Keep the same property set across client portals

"Sync" here means giving every client the same definitions, not syncing values between portals. (HubSpot's own sync properties are a different feature, which copies a value one way to associated records in the same portal.)

  • Reuse the same CSV. Keep your standard property set as a versioned CSV on the HubCreate template, and deploy it to each new client portal from Bulk Property Creation. Every portal gets the same labels, internal names, groups, and options.
  • Carry properties with the assets that use them. When you import a workflow or form into the HubCreate asset library, HubCreate detects the properties it depends on. When you deploy it, HubCreate rewrites property IDs for the target portal. Importing a calculated property also brings in the custom properties its formula uses. (Docs: Importing Assets, Docs: Deploying Assets)
  • Put them in a Package. Bundle your standard properties with the workflows, forms, and lists that use them, so a single deployment installs the data model and the automation together. (Docs: What is a Package?) See How to standardize HubSpot implementations across clients.
  • Check before deploying automation. If a deployment fails because a property is missing in the target portal, HubCreate's failure notice names the issue so you can create it and deploy again.

Step 5: Govern properties after go-live

  • Document each property with its description and the source that writes it. HubSpot's property editor has a Documentation tab for context on how users should fill in values.
  • Watch for sprawl. HubCreate Signals (Beta, Pro and Enterprise) flags custom properties with a fill rate under 1% and warns when a portal has more than 300 custom fields.
  • Watch for duplicate writes. A Workflow Map shows the portal's most-used properties and flags workflows that write the same property to the same value. (Docs: Workflow map report)

Where HubCreate fits

If you need five properties in one portal, HubSpot's property editor is fine. If a developer on your team already maintains API scripts, the batch endpoint works well. Bulk Property Creation fits when non-developers need to create dozens of properties per client, across many portals, with the same internal names and options every time.

Plans: Basic $500/month (5 HubSpot accounts, 3 users), Pro $1,000/month (15 accounts, 10 users), and Enterprise $3,000/month (unlimited accounts). See Bulk Property Creation and Pricing.

Related guides: How to standardize HubSpot implementations across clients · How to copy workflows, forms, and properties between HubSpot portals · How HubSpot agencies can speed up client onboarding

FAQ

Can you bulk create properties in HubSpot?

Not in the property editor, which creates one property at a time. You can create properties while mapping an import, one at a time in the mapping panel, and developers can use the Properties API's batch create endpoint. HubCreate's Bulk Property Creation creates many properties at once from a CSV or a guided builder.

How do I copy custom properties from one HubSpot portal to another?

HubSpot's multi-account asset copying creates the custom properties used by a copied workflow, form, segment, or email, but it doesn't copy standalone property definitions, and it works only inside one multi-account organization. With HubCreate you can deploy the same property set to any connected portal from a CSV, or import properties with the assets that use them and deploy them together.

Can I change a HubSpot property's internal name after creating it?

No. HubSpot doesn't let you edit a property's object type or internal name after it's created, so decide internal names before you create the properties.

Which HubSpot objects does HubCreate Bulk Property Creation support?

Contacts, companies, deals, tickets, leads, products, line items, quotes, invoices, orders, payments, carts, and custom objects.

Does creating properties copy any data?

No. Creating or deploying properties creates the definitions (label, internal name, type, group, and options), not record values. To fill the properties with data, use an import or your integration.

How do I keep the same properties across all my client portals?

Keep one standard property set, with fixed internal names, groups, and options, as a versioned CSV. Deploy it to each portal and update it when the standard changes. Bundle properties with the workflows and forms that use them so they always deploy together.

Deploy this across client portals

Connect the HubSpot portals you manage, then move the assets from one account to the next.