Skip to content
Solution Blueprint

A Service Hub Audit Built Around a Medical-Data Compliance Gate

Support agents were logging customers' disclosed medications and a custom Medicare Number field directly against Contact and ticket records, the exact pattern HubSpot's own Terms of Service treats as making Service Hub noncompliant for regulated health data. We audited every inbox, chatflow, and ticket pipeline the support team used inside Service Hub, isolated the three capture points responsible, and defined a remediation gate the client could action from its own admin settings.

Executive Summary

context-header-icon

Context

An Australian on-demand pharmacy and medicine delivery service ran its post-purchase support entirely through HubSpot Service Hub: shared inboxes, two chatflows answering medication questions, and a ticket pipeline built up over tens of thousands of cases. A base of 140,000-plus customers meant every channel carried real prescription detail into a CRM built for general records, not health data.

what-we-built-header-icon

What We Built

We delivered a Service Hub audit naming every inbox, chatflow, and property capturing sensitive medical detail, and handed the client a remediation gate: disable free-text input on the two medication chatflows, turn off automatic ticket creation, and remove the Medicare Number property.

tech-stack-header-icon

Tech Stack

  • HubSpot Service Hub
  • Zendesk
  • Aircall

Not a fit if you need the remediation built as well as specified: this audit names each capture point and the setting to change, and the client's own admin makes the change. It's also not a fit if the account still carries an old, uninstalled integration that nobody has decommissioned, since a stray legacy property can carry the same exposure forward.

the-challenge-header-icon

The Challenge

Two chatflows, a triage bot and a pharmacist-search bot, appeared on the Help, FAQ, About, Contact, and Ask-a-Pharmacist pages. They took free-text input from customers who often typed the exact drug and dose they were asking about. That text saved to the conversation record and, at times, the Contact record, alongside a custom Medicare Number property tracking a government rebate identifier.

Shared inboxes and a ticket pipeline spanning tens of thousands of cases carried the same detail into ticket fields, and a legacy Zendesk integration's old properties were still present. HubSpot's Terms of Service doesn't cover protected health information at that level, so each capture point put the account on the wrong side of the platform's terms. A bucket of service hours, valid for six months, funded the review, so we ranked which points to name first.

our-approach-header-icon

Our Approach

We reviewed the account inbox by inbox and pipeline by pipeline rather than pulling a portal-wide report, because one dashboard view would hide which stage actually captured the risky text. For each medication chatflow we traced the path: page-targeted display, a free-text question field, and a Customer Satisfaction Survey at close, with no validation step before the transcript saved.

A blanket ban on chatbot free text would have broken the purpose of the pharmacist-search flow, so the gate targets specific fields instead. It disables free text on the two chatflows, turns off automatic ticket creation, and removes the Medicare Number property outright. We flagged the legacy Zendesk properties for cleanup rather than migration, because no workflow still read them. Every recommendation targets a setting or property the client's own admin can action, not a platform migration.

impact-header-icon

Impact

check-icon

every capture point named, not just the obvious one

The Medicare Number property was easy to spot, so the review didn't stop there. It named the two chatflows and the shared inboxes as capture points too, since removing only the property would leave free-text medication detail landing in ticket transcripts. The client now holds one list covering every place sensitive detail can enter Service Hub.

check-icon

a remediation gate the client can action without a rebuild

Every recommendation ties to a Service Hub setting or property: disable free text on two named chatflows, turn off automatic ticket creation, delete one property. The client can act inside its existing admin console rather than commission a new project, so the bucket's remaining hours go towards the fix, not the specification.

check-icon

a ticketing history checked for exposure, not just the live inboxes

The audit also traced legacy Zendesk ticket properties still present after that system's uninstall, since an old field left active could keep carrying medical detail even after Service Hub itself gets remediated. Flagging those for cleanup closed a path the live-channel fixes alone would have missed.

check-icon

a ranked list inside a fixed-hours window

Because the client had sixty service hours, valid for six months, the audit ranked the capture points instead of listing them without order. That way the client's team knew which change to make first if hours ran out before the list did.

Technical Blueprint
1

Every shared inbox and ticket pipeline was checked on its own rather than through one aggregate report, so a risky pattern in a single pipeline couldn't average out against cleaner ones. Each finding was matched back to the specific inbox or pipeline it came from.

2

The triage and pharmacist-search chatflows both close on a Customer Satisfaction Survey after taking a free-text question, and the free-text question field was the capture point: a customer typing a drug name or dose saves it to the record with no validation step. The gate disables free text on these two flows specifically, not chat generally.

3

A custom contact property had been added to store a government rebate identifier against the Contact record, a field a native HubSpot property was never built to hold. The gate calls for removing it rather than restricting its visibility, since a hidden field is still a stored field.

4

A prior ticketing system's properties remained on ticket records after that integration was uninstalled, with no active workflow reading them. The audit flagged them for cleanup rather than migration, since carrying an unused field forward would move the same exposure into a system nobody queries.

Service Hub inboxes, chatflows and a Medicare Number property feeding customer records, ending in a remediation gate.

Medical detail used to reach Contact and ticket records through several routes. A portal-wide report would have hidden which stage captured it, so we reviewed the account inbox by inbox and pipeline by pipeline. Each capture point is now named. The remediation gate at the end targets settings the client's own admin can action: free text off on the two medication chatflows, automatic ticket creation off, and the "Medicare Number" property removed.

FAQ

Can HubSpot Service Hub store medication or health information safely?

Not without changes to what a portal's inboxes, chatflows, and properties are set up to capture. Here, a custom property built to hold a health identifier, plus two chatflows taking free-text medication questions, were the exact points a Terms of Service compliance review flagged, each with its own fix inside existing admin settings.

What does a Service Hub compliance audit actually check?

It goes inbox by inbox and pipeline by pipeline rather than pulling one portal-wide report, tracing where free-text input or a custom property lands against a Contact or ticket record. The output is a named list of capture points and a remediation gate, not a general compliance score.

Continue reading

209049052787

Australian online pharmacy: three Knowledge Bases from one FAQ source

209053157499

Sustainable paper subscription retailer: HubSpot and Klaviyo audit

209049052787

Cell therapy biotech: HIPAA data governance and partitioning

209049052787

Not-for-profit aged care provider: AlayaCare sync keeps health data out

209049052787

Behavioral health partnership: HIPAA-compliant architecture

209049052787

$50M+ telehealth provider: HIPAA-compliant clinical ERP sync

footerCTA footerCTA-mobile
Spice up your inbox
Sign up for our newsletter
Don't worry - we only average, like, two emojis per subject line.