Turn a Date of Birth Field Into an Automatic Age Property in HubSpot
HubSpot will not work out an age from a date of birth on its own. A date picker plus one calculated property does it, and it keeps the raw date out of every list and report.
Why is this hack helpful?
Knowing a contact’s age can be incredibly useful for personalisation, segmentation, and compliance, especially in industries like education, healthcare, and financial services. But HubSpot doesn’t calculate age automatically from a date of birth, and the default “Date of Birth” property is just a free text field, which isn’t much help for automation or reporting.
This hack shows you how to set up a proper date property for Date of Birth and then use a calculated property to automatically display a contact’s current age. No more manual calculations or messy spreadsheets: just up-to-date age data, ready to use in lists, workflows, and reports.
Is your date of birth field a plain text box?
Half the entries will be typed in three different formats.
There’s a second reason to do it this way, and it’s the one regulated buyers care about. A date of birth is personal information under the Privacy Act 1988 (Cth), and Australian Privacy Principle 11 says you have to take reasonable steps to protect the personal information you hold from misuse, loss and unauthorised access. A free text birth date gets typed three different ways, pasted into spreadsheets, and shown on the record to everyone with access. A calculated Age property lets you segment and report on age while the underlying date stays in one property you can restrict, which is the practical version of only exposing what the job needs.
Steps to Set It Up
1. Create a Date of Birth Property (Date Picker)
Go to Settings > Properties and create a new property:
- Object type: Contact
- Group: Contact Information (or another relevant group)
- Label: Date of Birth
- Field type: Date picker
Note: If you’ve been using the default free text “Date of Birth” property, you’ll need to migrate your data to this new date property for calculations to work.
If the dates you hold arrived through a dropdown rather than a date field, turning a dropdown into a proper date field covers that conversion.
2. Create a Calculated Property for Age
Go to Settings > Properties and create another new property:
- Object type: Contact
- Group: Contact Information
- Label: Age
- Field type: Calculation
In the calculation setup:
- Choose “Time since” as the calculation type.
- For “Start date”, select your new Date of Birth property.
This property will now automatically calculate and display the contact’s age, updating every year.
Use Age in Lists, Workflows, and Reports
Now that you have a live Age property, you can:
- Segment contacts by age in lists (e.g. under 18, over 65)
- Trigger workflows based on age (e.g. send birthday offers, age-based compliance emails)
- Report on your contact database by age
Because the value recalculates on its own, it also saves you a workflow that sits waiting for a birthday to come round. That is the same idea as replacing workflow delays with calculated properties.
Wrapping Up
With this hack, you can finally automate age calculations in HubSpot, making it easier to personalise communications, meet compliance requirements, and gain insights into your contact base. Just remember: for this to work, your Date of Birth property must be a date picker, not a free text field. If you’re migrating from the default property, consider a one-off data clean-up to get everything in order.
Age is one of a family of these. The same approach gives you a day of week field, a days-since-last-contact field and plenty more, and building other calculated properties for automation walks through the pattern.
Relying on age data for a compliance rule?
A calculated property is only as good as the dates behind it.
For more on calculated properties, check out HubSpot’s knowledge base article.
Property clean-ups like this one are the small end of how NBH builds RevOps and HubSpot systems. If your contact data is holding your segmentation back, we can take a look.