HubSpot Admin Reference · Module 2

HubSpot Properties
Complete Guide

Every field type, every setting, every configuration option — with real-world examples, case studies, governance frameworks, and admin best practices for building a clean, scalable CRM data layer.

14 field types All property settings Step-by-step creation Data sources explained 3 case studies Property registry template
Naveed Abbas
Naveed Abbas
CRM Administrator
Foundation · Section 01
What is a Property?

The data layer of your entire CRM — every field that stores information on a record.

Core Definition

A Property is a single labelled data field on a HubSpot record. It stores one piece of information about a Contact, Company, Deal, Ticket, or Custom Object. Every record type has its own set of properties — and the total collection of properties on a record type defines what your CRM knows about that type of record.

Think of a Contact record like a paper file. The file has a cover with spaces for a name, phone number, address, and status. Each of those spaces is a property. HubSpot gives you pre-printed spaces (default properties) and lets you add your own blank spaces (custom properties).

Why properties are everything

Admin taskHow properties make it possible
Segment contacts for a campaignFilter by Lifecycle Stage = MQL and Industry = SaaS
Trigger an automationWorkflow enrolls when Lead Status changes to "In Progress"
Build a revenue reportSum Deal Amount where Pipeline = New Business and Stage = Closed Won
Personalize an emailInsert {{contact.firstname}} into the subject line
Score leads automaticallyIf Industry = SaaS AND Employees > 50 → add 20 points to Lead Score
Forecast quarterly revenueSum Deal Amount × Close Probability where Close Date is this quarter
Qualify a deal via BANTCheck Budget Confirmed, Decision Maker, Need Score, Timeline to Buy
Admin Truth

Bad properties = a broken CRM. Wrong field types, inconsistent naming, no governance, duplicate fields — these silently corrupt your data and make every downstream function (reports, automations, segmentation) unreliable. Property design is one of the highest-leverage admin responsibilities.

Property anatomy

ComponentWhat it isExample
LabelThe human-readable display name shown in the UILifecycle Stage
Internal nameThe API/workflow identifier — auto-generated, cannot be changed after creationlifecyclestage
Field typeThe kind of data it accepts — text, number, dropdown, date, etc.Dropdown select
ValueThe actual data stored on a specific recordMarketing Qualified Lead
GroupThe folder/section this property lives in on the record sidebarContact Information
ObjectWhich record type owns this property — Contact, Company, Deal, TicketContact
Foundation · Section 02
Default vs Custom Properties

Every property is either built by HubSpot or built by you. Understanding the difference is critical.

Default PropertiesCustom Properties
Created byHubSpot — shipped with your portalYou (the admin)
Can be deleted?No — permanentYes — or archived
Can be renamed?Label only — internal name is fixedLabel only — internal name is fixed after creation
ExamplesEmail, Lifecycle Stage, Deal Amount, Close DateProduct Interest, NPS Score, BANT Score, Preferred Language
Appear inAutomations, reports, forms — everywhere immediatelyEverywhere once configured by admin
Count limitNo limitDepends on plan: Starter 1k, Pro 10k, Enterprise 10k+
Critical Rule

Never repurpose a default property for something it wasn't designed for. If HubSpot has a "Phone" field and someone starts storing "Annual Revenue" in it — you've broken your own CRM. The property type won't match, reports will be wrong, and the data will be silently corrupted. Always create a custom property instead.

Calculated properties

A third category — Calculated properties — are auto-computed by HubSpot and cannot be manually edited. They include:

PropertyWhat it calculatesObject
hs_analytics_sourceOriginal traffic source of the first conversionContact
hs_email_open_countTotal email opens across all sent emailsContact
num_associated_contactsNumber of contacts linked to a companyCompany
hs_deal_stage_probabilityWin probability based on current stageDeal
hs_time_in_[stage]How long a deal has been in a specific stageDeal
hubspotscoreLead score based on admin-defined criteriaContact
Foundation · Section 03
All 14 Field Types

Click any field type below to expand its full definition, use cases, mock UI, and admin guidance.

Critical Admin Rule — Field Types Are (Mostly) Permanent

Most field types cannot be changed after a property is created. A Number cannot become a Dropdown. A Single-line text cannot become a Checkbox. You must delete and recreate the property — and lose all historical data stored in it. Choose your field type carefully before saving.

Exception: you CAN switch between Dropdown, Checkboxes, and Radio select — because they all store "option" values.

Field type decision guide

If you need to store…Use this field typeAvoid this mistake
A short text value (name, ID, city)Single-line textDon't use if the field has fixed options — use Dropdown
Longer paragraphs or notesMulti-line textCan't be filtered or segmented — don't use for structured data
A number to add, average, or compareNumberDon't use text for revenue, scores, or counts
Money / currency valueCurrencyDon't use Number — Currency auto-formats and respects locale
A calendar date (no time)Date pickerDon't use text — date pickers enable date-based workflow triggers
A date and exact timeDate and timeNote: stored in UTC, displayed in portal timezone
One choice from a fixed list (long list)Dropdown selectDon't use text — you lose the ability to report cleanly
One choice from a fixed list (2–5 options)Radio selectSame as dropdown, but shows all options visible at once
Multiple choices from a listCheckboxesDon't use dropdown — it only allows one selection
A yes/no binary flagSingle checkboxUnchecked ≠ false — it means unknown. Design workflows accordingly
An email addressEmailDon't use text — Email type validates format and enables click-to-send
A phone numberPhone numberDon't use text — Phone type enables HubSpot Calling click-to-dial
A URL / web addressURLDon't use text — URL type makes links clickable in HubSpot
An auto-calculated lead scoreScoreCan't be manually edited — use Number if you need workflow control
Admin Setup · Section 04
Property Groups

The folders that organise properties inside a record sidebar.

Every property belongs to a Property Group — a labelled section that groups related properties together in the record view. When a rep opens a Contact record, they see properties organised by group in the left sidebar.

Group typeCreated byCan be deleted?Examples
Default groupsHubSpotNo — but can be renamedContact Information, Sales Information, Email Information, Social Media
Custom groupsAdminYesBANT Qualification, Partner Data, Onboarding Status, Billing Info
Admin Best Practice

Always create a dedicated custom group before adding custom properties. Never drop custom properties into HubSpot's default groups — it breaks the organisation of the record sidebar and confuses your team. Name groups clearly: "Qualification Data," "CS Team Fields," "Finance Properties."

How to create a property group

  1. Go to Settings → Properties
  2. Select the object type (Contact, Company, Deal, etc.)
  3. Click "Groups" at the top of the page
  4. Click "Create group"
  5. Enter a clear, descriptive name (e.g. "BANT Qualification")
  6. Save — the group now appears as a section in the record sidebar
Common Mistake

Do not create one giant custom group called "Custom" or "Other." Break properties into logical groups by team or function. A CSM's onboarding fields should not share a group with the finance team's billing fields.

Admin Setup · Section 05
Every Property Setting Explained

When you create or edit a property, every configuration option — and what it actually does.

SettingWhat it doesAdmin guidance
Object type
Contact / Company / Deal / Ticket
Determines which record type this property belongs to. Cannot be changed after creation. A Contact property cannot be moved to Company. Plan your object architecture before creating properties.
Group
Property group assignment
Which section of the record sidebar this property appears in. Always assign custom properties to a named custom group — never leave them in HubSpot's default groups.
Label
Display name
The name shown to users in the CRM interface, forms, and reports. Use plain English. No abbreviations. Think "will a new hire in 12 months understand this?" Rename if needed — unlike internal name, this CAN be changed after creation.
Internal name
snake_case_identifier
The API and workflow identifier. Auto-generated from label on first save. Cannot be changed after creation. Any integration or workflow using this name will break if the property is deleted and recreated. Choose your label carefully before saving — the internal name is set at that moment.
Description
Help text for users
Appears as help text below the property field in the record. Explains what to enter. Always fill this in for every custom property. Write: what this field is for, who fills it in, and example values. This is your documentation.
Field type
Text / Number / Date / Dropdown etc.
Controls what kind of data can be stored and how the input appears in the UI. Most field types cannot be changed after creation. Choose carefully (see field type guide above).
Options
For Dropdown / Checkbox / Radio
The list of selectable values for option-based field types. Keep options mutually exclusive and exhaustive. Always include an "Other" option if reps might encounter edge cases. You can add options later, but cannot remove options that have data stored against them without losing that data.
Required
Checkbox toggle
If enabled, this property must have a value before a record can be saved. Use sparingly. Required fields are powerful for data quality but if overused, reps enter junk data just to save the record. Limit required fields to 3–5 critical properties per object.
Hidden in new object form
Toggle
Hides the property from the "Create Contact / Deal" popup modal. Use for properties that are only filled later in the process (e.g. "Closed Lost Reason" hidden at creation, shown after deal moves to that stage).
Hidden from forms
Toggle
Prevents this property from appearing in the HubSpot form builder as an available field. Enable for all internal admin or CRM-only fields that should never appear on a public-facing form (e.g. "Lead Score," "Internal Notes," "CRM Source").
Searchable in global search
Toggle
When enabled, the values of this property appear in HubSpot's global search bar. Enable for unique identifiers — Customer ID, Account Number, Order Number — so reps can search for a record by that value instantly.
Show in record sidebar
Toggle
Controls whether this property appears in the "About" section of the record sidebar by default. Only show the 8–12 most important properties in the sidebar. The rest can be accessed via "View all properties." Cluttered sidebars reduce adoption.
Read-only
Access control
If set, users without the right permission cannot edit this property value. Use for calculated or sensitive fields: "Contract Value," "Approved Discount," "MRR." Only super admins or specific roles can change these.
Admin Setup · Section 06
How to Create a Custom Property

Step-by-step walkthrough — path, options, and the decisions you make at each stage.

Path in HubSpot

Settings → Properties → [Select Object] → Create property (top right button)

  1. Choose the object — Contact, Company, Deal, Ticket, or Custom Object. This locks the property to that record type forever.
  2. Choose the group — pick an existing custom group or create a new one. If this is a new topic area, create a group first before proceeding.
  3. Write the label — clear, plain English, no abbreviations. Example: "Preferred Communication Channel" not "PCC" or "comm_pref."
  4. Review the internal name — HubSpot auto-generates this from your label (e.g., preferred_communication_channel). You can edit it now — but not after saving. If you have an integration that will use this property, confirm the naming convention with your dev team first.
  5. Add a description — explain what goes here, who fills it in, and example values. This is documentation that saves hours of confusion later.
  6. Select the field type — use the decision guide above. For "Preferred Communication Channel" → Radio select (Email / Phone / WhatsApp — one answer, small list, all visible).
  7. Add options (if applicable) — for Dropdown/Checkbox/Radio: add all your values. Set a display order. Consider whether you need a default value.
  8. Configure settings — Required? (probably no). Hidden from forms? (yes, if internal). Show in sidebar? (yes, if reps need to see it frequently).
  9. Save — the property is now live on every record of that object type.
Before You Save — The Final Check

Ask yourself: Does a property with a similar purpose already exist? Check by searching in Properties before creating. Duplicate properties are the #1 source of CRM data quality problems.

Admin Setup · Section 07
How Data Enters a Property

Six ways a property value gets written — and the critical "last write wins" rule.

SourceHow it worksExamplesType
Form submission When a contact fills a HubSpot form, each form field maps to a property. The value they enter is written to their Contact record. Name, Email, Company, Job Title, Area of Interest Human-initiated
Manual entry A rep opens a record and directly edits a property value. HubSpot logs who changed it and when in the property history. Lead Status, Next Steps, Closed Lost Reason Human-initiated
CSV import Admin uploads a spreadsheet. Each column maps to a property. Values are written in bulk to all imported records. Migrating data from another CRM, bulk updating outdated fields Human-initiated
Workflow action A workflow fires a "Set property value" action, writing a value to a property automatically based on trigger conditions. Lifecycle Stage updated on deal creation; Lead Score updated on email click Automated
Integration / API An external tool (Salesforce, Stripe, Typeform, etc.) syncs data into HubSpot. Their field values map to HubSpot properties. Stripe plan name syncs to "Subscription Plan" property; Typeform survey answers sync to custom properties Automated
HubSpot auto-populate HubSpot's own system writes values — analytics tracking, scoring calculations, timestamps, and enrichment data. Original Source, Last Activity Date, HubSpot Score, Create Date Automated
The "Last Write Wins" Rule — Critical Admin Knowledge

When multiple sources write to the same property, the most recent write wins — overwriting the previous value. This causes invisible data loss if not managed carefully.

Example: A form sets Lifecycle Stage = "Lead." One second later, a workflow sets it to "MQL." MQL wins — that's correct. But if an import three months later overwrites a rep's manually-set Lead Status = "In Progress" back to "New" — that's data loss.

Solution: In workflow actions, there is a setting called "Don't overwrite existing values." Enable this when you want to protect data that may have been set by a human or upstream process. Default behaviour (without this enabled) is always to overwrite.

Property history

Every time a property value changes, HubSpot records it in the property history log. You can view this on any record by clicking any property and selecting "View property history." This shows: what the old value was, what the new value is, when it changed, and what source changed it (workflow, manual, import, API). This is invaluable for debugging data quality issues.

Admin Setup · Section 08
Permissions & Governance

Property governance is one of the most important — and most neglected — parts of HubSpot administration.

Why Governance Matters

Without governance, properties multiply. In 12 months, a portal can easily accumulate 200+ custom properties — many duplicated, many unused, many with inconsistent names and no descriptions. At that point, the CRM becomes unusable and data is unreliable. An admin who governs properties proactively is 10× more valuable than one who just creates them.

Who can create properties

By default, any Super Admin in HubSpot can create custom properties. In larger teams, this quickly becomes a problem. Restrict property creation to 1–2 designated admins who enforce naming conventions and avoid duplication.

Naming conventions — the admin standard

ConventionRuleExample
Prefix by teamAdd a short prefix to identify which team owns the property[CS] Onboarding Status, [FIN] Contract Value, [MKT] Campaign Tag
Plain English labelsNo abbreviations, no jargon, no internal codes"Preferred Language" not "Pref Lang" or "lang_pref"
Verb + noun for actionsProperties that track whether something happened should say so"Has Signed NDA," "Has Attended Demo," "Has Received Welcome Email"
Date properties end in "date"Makes date properties immediately identifiable"Contract End Date," "Last Review Date," "First Purchase Date"
Score properties end in "score"Distinguishes scores from other number fields"NPS Score," "BANT Score," "Engagement Score"

Monthly governance checklist

  • 📋
    Audit for duplicate properties — two or more properties storing the same data. Merge via import and archive the redundant one.
  • 🗄️
    Archive unused properties — any custom property with 0 records filled in for 6+ months. Archiving hides it from the UI but preserves historical data.
  • 📝
    Review description coverage — any custom property without a description should get one added immediately.
  • 🏷️
    Enforce naming conventions — rename any properties that don't follow the convention (label change is safe).
  • 👁️
    Review sidebar configuration — are the right properties visible on records? Remove low-value properties from default sidebar view.
  • 🔒
    Audit required fields — are required fields being filled with real data or placeholder values? Adjust if adoption is poor.
Applied Learning · Section 09
Real-World Example

Building a complete BANT qualification property set from scratch — how a real admin does it.

A B2B SaaS company wants their SDRs to qualify leads using the BANT framework (Budget, Authority, Need, Timeline). None of these are default HubSpot Contact properties. Here is how an admin builds them:

Step 1 — Create the property group

Before creating any properties: Settings → Properties → Contacts → Groups → Create group → Name: "BANT Qualification"

Step 2 — Create the properties

Property label Field type Group Options / format Required?
Budget confirmed Single checkbox BANT Qualification Checked = has confirmed budget exists No
Budget range Dropdown select BANT Qualification <$5k / $5k–$20k / $20k–$50k / $50k+ No
Decision maker Single checkbox BANT Qualification Checked = this contact can sign off No
Pain point Checkboxes BANT Qualification Speed / Cost / Compliance / Integration / Reporting No
Timeline to buy Dropdown select BANT Qualification <1 mo / 1–3 mo / 3–6 mo / 6+ mo / No timeline No
BANT score Number BANT Qualification 0–4 calculated by workflow (1 point per BANT element confirmed) No

Step 3 — Connect to workflow automation

SDR fills BANT fields
Workflow calculates BANT Score (0–4)
Score ≥ 3?
Lifecycle → SQL ✓
Score < 3
Lifecycle stays MQL
Lead Status → "Needs Nurturing"

Step 4 — Result

Now the sales manager can report: "What percentage of MQLs reached BANT Score ≥ 3 this month?" SDRs have a structured qualification framework. The pipeline only contains properly qualified leads. SQL-to-close rates improve because the leads entering the pipeline are genuinely ready.

Applied Learning · Section 10
Three Case Studies

Real problems, real admin solutions, real outcomes.

📊
Case 1 — The Duplicate Property Disaster
When too many people create properties with no governance
Data QualityB2B Agency
The Problem

A 40-person digital marketing agency had 6 super admins in HubSpot. Over 18 months, the Contact object accumulated 312 custom properties. "Lead Source," "Marketing Source," "Original Lead Source," "Traffic Source," and "Inbound Source" all existed simultaneously. Nobody knew which one to fill in. Reports showed wildly inconsistent source data. The RevOps hire brought in to fix the CRM found the property settings page unusable.

Admin solution

  • 🔍
    Audit phase (week 1): Exported all properties to CSV. Sorted by "last used date" — 180 of 312 custom properties had zero records filled in the last 12 months. Immediately archived all 180.
  • 🔗
    Merge phase (week 2): Identified 14 groups of duplicate properties. For each group: decided the canonical property, exported all data from the duplicates, re-imported into the canonical property, then archived the duplicates.
  • 📋
    Documentation phase (week 3): Added descriptions to all remaining 64 active custom properties. Created a "Property Registry" Google Sheet documenting each property's purpose, owner, and fill instructions.
  • 🔒
    Governance phase (week 4): Removed Super Admin access from 4 of the 6 admins. Set up a "Property Request" process — anyone wanting a new property submits a form, admin reviews within 48 hours, checks for existing alternatives first.
RevOps Outcome

Source attribution accuracy went from 34% to 91% within one quarter. The CEO was able to see, for the first time, which channels were actually generating closed revenue — not just leads. The RevOps hire's first month ROI was immediately visible.

⚙️
Case 2 — The Wrong Field Type Problem
When someone stores revenue data as text
Field TypesSaaS Company
The Problem

A SaaS company's previous admin created an "Annual Revenue" property on the Company object as a Single-line text field. Reps entered values like "500k," "$500,000," "500000," "~$500k," and "half a million." The finance team could not build any revenue reports from this data. Sorting by Annual Revenue produced alphabetical, not numerical, results.

Admin solution

  • 📋
    Created a new "Annual Revenue (Verified)" property as Currency type on Company object. Added description: "Confirmed annual revenue in USD. Source: discovery call or LinkedIn. Enter numbers only — no symbols or abbreviations."
  • 📤
    Exported all Company records with the old text property. Cleaned the data in Excel — standardised all values to plain numbers (500000 not "$500k"). Re-imported into the new Currency property.
  • 🗄️
    Archived the old text property. Updated all workflows and reports referencing the old property to use the new one.
  • 🚫
    Added the old property as "Hidden from new object form" and "Hidden from forms" to prevent anyone accidentally using it again while the archive propagated.
RevOps Outcome

Finance could now build ICP-based revenue reports. "Show me all Companies with Annual Revenue > $1M" became a one-click filter. The AE team started using revenue tiers to prioritise accounts — immediately improving their average deal size by 22% within two quarters.

🎯
Case 3 — Building a Lead Scoring System with Properties
Using custom properties to automate lead prioritisation
Lead ScoringB2B Startup
The Problem

A B2B startup had SDRs manually reviewing every inbound lead to decide who to call first. With 300+ leads per month, this took hours and was inconsistent — some SDRs called cheap leads, others called expensive ones. There was no structured prioritisation and hot leads were often called 3–4 days late.

Admin solution — property-based lead scoring

  • 🏗️
    Created a "Scoring" custom property group on Contact object.
  • 📊
    Created "Demographic Score" (Number), "Behavioural Score" (Number), and "Total Lead Score" (Number) custom properties.
  • ⚙️
    Built demographic scoring workflow: Job Title contains "VP" or "Director" → +20. Company Employees > 200 → +15. Industry = SaaS or FinTech → +10. Country = US or UK → +5.
  • ⚙️
    Built behavioural scoring workflow: Visited pricing page → +15. Opened 3+ emails → +10. Attended webinar → +20. Filled contact form → +25. Score decays by 5 points if no activity in 30 days.
  • 📋
    Created an active list: "Hot Leads — Score > 60." SDR team's morning call queue is this list, sorted by Total Lead Score descending.
  • 🔔
    Notification workflow: when a Contact's Total Lead Score crosses 70 → immediate Slack notification to the assigned SDR: "🔥 Hot lead alert — [Name] at [Company] just hit score 74."
RevOps Outcome

Average lead response time dropped from 3.2 days to 4 hours for high-score leads. MQL-to-SQL conversion rate increased from 18% to 31% within one quarter. The SDR team spent 70% of their time on leads that eventually converted — up from 40%.

Applied Learning · Section 11
Common Admin Mistakes

The most frequent property mistakes — and how to avoid each one.

  • 1. Using the wrong field type and realising it too late
    "Annual Revenue" stored as Single-line text. "Lead Score" stored as a text field. "Timeline" stored as a number instead of a dropdown. You can't change most field types after creation — you have to delete and rebuild, losing all historical data. Fix: choose field type deliberately, using the decision guide, before saving.
  • 2. Creating duplicate properties
    "Source," "Lead Source," "Marketing Source," and "Original Source" all existing simultaneously. Reps don't know which to fill. Reports are split across four fields. Fix: search existing properties before creating. If one already exists, use it.
  • 3. Never filling in the description field
    Six months later, nobody knows what "Flag B" means or why it was created. Fix: every custom property gets a description before it goes live. Treat it as required documentation.
  • 4. Making too many fields required
    If 14 properties are required to save a Contact, reps enter "n/a," "unknown," or random values just to get past the validation screen. Fix: limit required properties to 3–5 critical fields per object. Let rep adoption drive data quality for non-critical fields.
  • 5. Not understanding the "don't overwrite" setting in workflows
    A workflow overwrites a rep's manually-set Lead Status back to "New" every time a new form is submitted. The rep's work is silently erased. Fix: enable "Don't overwrite existing values" on any workflow action that sets a property which may have been filled by a human.
  • 6. Using Single checkbox where a Dropdown with Yes/No/Unknown is better
    "Budget Confirmed" as a single checkbox has three states: checked (yes), unchecked (unknown — not no). For true Yes/No/Unknown tracking, a Dropdown with those three options is cleaner and more reportable. Fix: understand the three-state nature of checkboxes before using them for yes/no logic.
  • 7. Dumping all custom properties into the default "Contact Information" group
    The record sidebar becomes 40+ properties long, all mixed together. Reps can't find anything. Fix: create named custom groups by function — "Qualification Data," "Marketing Attribution," "CS Fields." Keep the default groups for HubSpot's own properties.
  • 8. Never archiving old properties
    Properties from campaigns from 3 years ago, old qualification frameworks, deprecated fields — all still cluttering the property picker and confusing new reps. Fix: quarterly archiving review. Anything with 0 fill rate in 12 months gets archived.
Applied Learning · Section 12
Property Registry Template

The standard RevOps deliverable — document every custom property for governance and onboarding.

What Is a Property Registry

A Property Registry is a living document (usually a Google Sheet or Notion table) that lists every custom property in your HubSpot portal — with its purpose, owner, field type, fill instructions, and status. It's your internal CRM documentation. Having one immediately signals senior admin capability in any interview or client project.

Sample property registry — Contact object

Property label Internal name Field type Purpose & fill instructions Status
[BANT] Budget Range bant_budget_range Dropdown Budget size confirmed in discovery. SDR fills after discovery call. Active
[BANT] Decision Maker bant_decision_maker Checkbox Check if this contact can approve purchase without escalation. Active
[MKT] Campaign Tag mkt_campaign_tag Single-line text UTM campaign value from last conversion. Set by workflow automatically. Active
[CS] Onboarding Status cs_onboarding_status Dropdown Not Started / In Progress / Completed / Stalled. CSM updates weekly. Active
NPS Score nps_score Number Score from most recent NPS survey (0–10). Set by Typeform integration. Active
Referral Source Text referral_source_text Single-line text DEPRECATED — replaced by [MKT] Campaign Tag in Q2. Do not use. Archived
Registry Columns to Include in Your Own Version

Property label · Internal name · Object · Field type · Group · Purpose / fill instructions · Who fills it (rep / workflow / integration / admin) · Required? · Hidden from forms? · Date created · Created by · Status (Active / Archived)

Applied Learning · Section 13
Interview Questions

Questions you should be able to answer confidently — with model answers.

Q: "What is the difference between a Default property and a Custom property in HubSpot?"
"Default properties are created by HubSpot and come pre-loaded in every portal — things like Email, Lifecycle Stage, and Deal Amount. They can't be deleted. Custom properties are ones I create as an admin to capture data specific to our business. Both types behave the same way in workflows, reports, and forms — the difference is just in who created them and whether they can be removed."
Q: "A sales rep wants to track which 'pain point' drove a contact to reach out. They list five possible pain points. What field type do you use and why?"
"I'd use Checkboxes — because a contact might have multiple pain points, not just one. Checkboxes allow multiple selections from a predefined list, while Dropdown only allows one. I'd create five options as the checkbox values. If I used Single-line text instead, I'd lose the ability to filter or segment by pain point — I'd just have free text that can't be reported on cleanly."
Q: "Why can't you change the internal name of a property after it's been created?"
"The internal name is the identifier used by HubSpot's API, all workflows, and any external integrations. If you could change it, every workflow action, report filter, or API call referencing the old internal name would silently break — it would look for a property that no longer exists under that name. Keeping it immutable ensures stability across all systems connected to HubSpot."
Q: "A workflow is overwriting a rep's manually-set Lead Status back to 'New' every time someone fills a form. How do you fix it?"
"In the workflow's 'Set property value' action, there's an option called 'Don't overwrite existing values.' Enabling this means the workflow only sets the property if it's currently empty — it won't overwrite a value that's already been set by a rep manually. This is the standard fix for protecting human-entered data from being overwritten by automation."
Q: "What is a Property Registry and why does it matter for a CRM admin?"
"A Property Registry is a living document — usually a Google Sheet or Notion table — that catalogues every custom property in the portal: its label, internal name, field type, object, purpose, who fills it, and status. It matters because without it, properties multiply unchecked, duplicates appear, and nobody knows what existing properties are for. It's the difference between a CRM you can maintain and one that slowly becomes unusable. I maintain one as a standard deliverable in any HubSpot implementation I own."
Q: "What's the difference between a Date picker and a Date and time property?"
"Date picker stores only a calendar date — day, month, year — with no time component. Date and time stores a full timestamp including hour and minute, stored internally in UTC and displayed in the portal's configured timezone. I use Date picker for things like 'Contract End Date' or 'Last Review Date' where the specific time doesn't matter. I use Date and time for things like 'Meeting Scheduled At' or 'Webinar Start Time' where the exact time is essential."
Applied Learning · Section 14
Summary Cheatsheet

Everything you need to remember — in one place. Save this for quick reference.

14 field types at a glance

Field typeStoresKey rule
Single-line textShort freeform textUse only for truly freeform data — if options are fixed, use Dropdown
Multi-line textLong paragraphsCan't filter or segment — don't use for structured data
NumberNumeric valueRequired for calculations, averages, and numeric comparisons
CurrencyMonetary amountAlways use instead of Number for money — auto-formats correctly
Date pickerCalendar date (no time)Enables date-based workflow triggers (X days before/after)
Date and timeFull timestampStored in UTC — set portal timezone correctly first
Dropdown selectOne option from a listBest for long lists with one correct answer
Radio selectOne option from a listBest for short lists (2–5 options) shown all at once
CheckboxesMultiple options from a listUse when multiple answers are valid simultaneously
Single checkboxTrue / Unknown (not False)Unchecked ≠ false — it means unknown. Design workflows accordingly
EmailEmail addressValidates format. Primary email = deduplication key for contacts
Phone numberPhone stringEnables click-to-call from HubSpot — always use for phone fields
URLWeb addressMakes values clickable — use for LinkedIn, website, booking links
ScoreAuto-calculated numberCannot be manually edited — built via HubSpot lead scoring settings

Key rules to remember

  • 🔒
    Internal name is permanent — set your label correctly before saving. The internal name cannot be changed.
  • ⚠️
    Most field types cannot be changed after creation. Plan your field type before creating.
  • 🔄
    Last write wins — the most recent update to a property overwrites the previous value. Use "Don't overwrite" in workflows to protect human-entered data.
  • ☑️
    Single checkbox unchecked ≠ false — it means the value is unknown/not set. Build workflow conditions using "is known" not "is equal to true."
  • 📋
    Always fill in descriptions — every custom property must have a description explaining its purpose and how to fill it.
  • 🗂️
    Custom group first — create a named custom group before adding custom properties. Never dump custom properties into HubSpot's default groups.
  • 📊
    Maintain a Property Registry — the #1 governance tool for any CRM admin. Document every custom property with purpose, owner, and status.
  • 🔍
    Search before creating — always check if a property already exists before creating a new one. Duplicates are the most common CRM data quality problem.
RevOps Mindset on Properties

Properties are not just form fields — they are your data architecture. Every downstream function in HubSpot (segmentation, automation, reporting, scoring, personalisation) depends on properties being correctly typed, consistently named, and reliably populated. Before building any workflow, campaign, or dashboard — a RevOps professional asks: "Do I have the right properties to support this?" If not, they design the properties first. Property design is always the foundation. Everything else is built on top of it.

HubSpot Properties — Complete Admin Reference

14 field types · All settings · 3 case studies · Property registry template · Interview Q&A · Admin governance framework. Keep this alongside your HubSpot sandbox for reference during practice sessions.