skip to content
san.is
Table of Contents

Sales teams selling into enterprise accounts need to know what technology their prospects already use. A company running Salesforce CRM, Marketo automation, and Snowflake data warehouse represents a very different conversation than one using spreadsheets and email.

How do you model this in HubSpot?

The instinct is to create properties: “CRM System”, “Marketing Platform”, “Data Warehouse”. Simple, fast, done.

But properties have limitations that become painful at scale. This article walks through when to use properties versus custom objects for technology ecosystem tracking, with implementation patterns for each.

The Property Approach

Implementation

Create dropdown properties on the Company object:

PropertyOptions
CRM SystemSalesforce, HubSpot, Dynamics, Zoho, None, Other
Marketing PlatformMarketo, HubSpot, Eloqua, Pardot, None, Other
Data WarehouseSnowflake, Databricks, BigQuery, Redshift, None, Other
ERP SystemSAP, NetSuite, Sage, None, Other

Advantages

  • Simple to implement: Create properties in minutes
  • Easy for reps to update: Standard dropdowns in the UI
  • Works with list segmentation: Filter companies by CRM = Salesforce
  • Native reporting: Build reports grouped by technology

Limitations

Limited to one value per category: A company using both Salesforce and HubSpot can only select one option. Your property becomes inaccurate or requires workarounds.

Static option lists: Adding a new technology means updating every portal manually. No centralised management.

No metadata: You can’t track when the technology was adopted, who at the company owns it, or whether it’s their primary or secondary system.

Scales poorly: 20 technology categories means 20 properties cluttering your object.

No reusability: If Technology X appears in 500 company records and its name changes, you have 500 records to update.

The Custom Object Approach

Implementation

Create a Technology Vendor custom object:

PropertyType
Vendor NameText
CategoryDropdown (CRM, Marketing, Data, ERP, etc.)
WebsiteURL
NotesMulti-line text

Associate it with Companies using a labelled association:

  • “Uses” (standard association)
  • “Primary” vs “Secondary” (custom labels)
  • “Evaluating” (custom label)
  • “Former” (custom label)

Advantages

Many-to-many relationships: A company can be associated with unlimited technology vendors. Multiple CRMs? No problem.

Single source of truth: Update “Salesforce” once, and it’s updated for all associated companies.

Rich metadata via labels: Distinguish between “Primary CRM” and “Secondary CRM” using association labels.

Clean data model: Company records stay clean; technology data lives in its own object.

Better reporting: Build reports that answer “which companies use both Salesforce and Marketo?”

Limitations

Requires Enterprise Hub: Custom objects are an Enterprise-tier feature.

More complex UI: Reps must navigate to the associated object to add technologies.

Import complexity: Importing technology associations requires understanding HubSpot’s import structure.

Decision Framework

Use Properties When:

  1. Single value per category: Each company truly only uses one CRM, one ERP, etc.
  2. Small, stable list: Fewer than 10 options that rarely change
  3. No metadata needed: You don’t need to track adoption dates or status
  4. Simple segmentation: Your use case is basic list filtering
  5. Free/Starter/Professional Hub: Custom objects aren’t available

Use Custom Objects When:

  1. Multiple technologies per category: Companies commonly use more than one
  2. Technology list evolves: New tools emerge; you need centralised management
  3. Relationship context matters: You need to know if it’s primary, secondary, or being evaluated
  4. Reporting complexity: You need to answer questions like “show me companies using Salesforce AND Snowflake”
  5. Enterprise Hub available: You have access to custom objects

Hybrid Approach

For teams without Enterprise but needing more than basic properties:

Multi-Select Properties

Create multi-select dropdown properties allowing multiple selections:

PropertyType
CRM Systems (Multi)Multi-checkbox: Salesforce, HubSpot, Dynamics…
Marketing Platforms (Multi)Multi-checkbox: Marketo, HubSpot, Eloqua…

Advantage: Allows multiple selections Limitation: Still no metadata, harder to report on

Concatenated Text Fields

Store technologies as comma-separated text:

PropertyValue
Technology StackSalesforce, Marketo, Snowflake, AWS

Advantage: Unlimited entries Limitation: No standardisation, reporting is difficult, typos create duplicates

Implementation: Custom Object Pattern

Step 1: Create the Object

In Settings → Objects → Custom Objects:

SettingValue
Object NameTechnology Vendor
SingularTechnology Vendor
PluralTechnology Vendors
Primary Display PropertyVendor Name

Step 2: Create Object Properties

PropertyInternal NameTypeRequired
Vendor Namevendor_nameSingle-line textYes
CategorycategoryDropdownYes
WebsitewebsiteURLNo
DescriptiondescriptionMulti-line textNo
Logo URLlogo_urlURLNo

Category options:

  • CRM
  • Marketing Automation
  • Data Warehouse
  • Business Intelligence
  • ERP / Accounting
  • Customer Success
  • Help Desk
  • Other

Step 3: Create Association Labels

Navigate to Settings → Objects → Technology Vendor → Associations → Company:

LabelInverse Label
UsesUsed By
PrimaryPrimary User
SecondarySecondary User
EvaluatingBeing Evaluated By
FormerFormer User

Step 4: Pre-Populate Vendors

Create records for common technologies:

const vendors = [
{ name: 'Salesforce', category: 'CRM', website: 'https://salesforce.com' },
{ name: 'HubSpot', category: 'CRM', website: 'https://hubspot.com' },
{ name: 'Microsoft Dynamics', category: 'CRM', website: 'https://dynamics.microsoft.com' },
{ name: 'Marketo', category: 'Marketing Automation', website: 'https://marketo.com' },
{ name: 'Snowflake', category: 'Data Warehouse', website: 'https://snowflake.com' },
// ... etc
];

Bulk import via CSV or create manually.

Step 5: Configure Company Record Layout

In Settings → Objects → Companies → Record Customisation:

Add a card for Technology Vendors showing:

  • Associated vendor name
  • Category
  • Association label

Reps can now see at a glance what technologies each company uses.

Reporting Patterns

Companies by Technology Category

Report type: Companies Group by: Associated Technology Vendor → Category Measure: Count of companies

Report type: Custom Object (Technology Vendor) Filter: Association label = “Evaluating” Group by: Category Measure: Count of associated companies

Competitive Intelligence

Report type: Companies Filter: Associated Technology Vendor → Vendor Name = “[Competitor]” Measure: Count of companies, Sum of company revenue

Cross-Technology Analysis

Use custom report builder:

  • Show companies where Associated Vendor includes “Salesforce” AND Associated Vendor includes “Snowflake”

Workflow Automation

Tag Companies by Tech Profile

When a technology association is added, update a calculated property:

Trigger: Technology Vendor association created (Company-based workflow)
Condition: Associated Vendor Category = "CRM"
Action: Set "Has CRM" property = Yes

Competitive Alert

When a prospect adopts a competitor’s technology:

Trigger: Technology Vendor association created
Condition: Vendor Name = "Competitor X"
Action: Send internal notification to account owner

Tech Stack Score

Calculate a score based on technology sophistication:

Trigger: Technology Vendor association changes
Actions:
- Count associated vendors
- Set "Tech Stack Score" = count * 10
- If "Data Warehouse" category exists, add 20 points

Data Enrichment Integration

If you use data providers like ZoomInfo, Clearbit, or BuiltWith:

  1. Enrich to custom properties first: Let the provider populate multi-select properties
  2. Workflow to create associations: Parse the property values and create/associate Technology Vendor records
// Custom coded action to parse enriched data
const techStack = event.inputFields['enriched_technologies']; // "Salesforce;Marketo;Snowflake"
const technologies = techStack.split(';');
for (const tech of technologies) {
// Look up or create Technology Vendor record
// Create association to company
}

Key Takeaways

  1. Properties work for simple, single-value tracking - but limit scalability and reporting
  2. Custom objects enable many-to-many relationships - essential for comprehensive tech stack tracking
  3. Association labels add context - distinguish primary, secondary, evaluating, former
  4. Pre-populate vendor records - create a standardised list reps select from
  5. Combine with workflows - automate tagging, scoring, and competitive alerts
  6. Consider the hybrid approach - use properties for simple cases, objects for complex

The technology ecosystem tells a story about a company. Make sure your data model can tell that story accurately.


Need help designing custom object architectures for HubSpot? Connect with me on LinkedIn.