Home / Guides

Guide

HubSpot audit checklist: what to check in your portal and what to fix

Run your own HubSpot portal audit: workflows, lead routing, marketing contacts, data quality, pipelines, integrations, seats, email and reports, in order.

By Abdur Rahim Mostafa · Updated 25 October 2026

A HubSpot audit checks what your portal really does against what your team thinks it does. You go through workflows, lead routing, marketing contacts, data, properties, pipelines, integrations, seats, email and reports, then fix or switch off what is wrong. Portals collect workflows nobody remembers building, and some of them fail without showing an error.

The checklist starts with workflows, because they write much of the data everything else reads. Use a Super Admin login if you can, and note that some tools need a Professional or Enterprise subscription. Before you start, write down what the team believes happens today, such as where a new lead goes and what counts as a won deal.

1. Workflows

Go to Automation > Workflows. The Needs review tab lists workflows with errors in the last seven days, and the Unused tab lists ones that are off or haven't run actions in 90 days (HubSpot's guide). Professional and Enterprise portals also have a Health tab and a Review automation issues view, still marked beta in October 2026. Some failures look like success. HubSpot's error guide notes that a Send email action skips non-marketing contacts and the workflow carries on, with no resend later.

  • For each active workflow, check recent enrollments and filter the action logs to errors. The logs only go back 90 days.
  • Check re-enrollment. It is off by default, so a record enrolls only once. A workflow meant to run on every form submission needs re-enrollment triggers.
  • Read the unenrollment conditions and suppression segments on workflows that send email or change owners.
  • Look for two workflows writing to the same property, or one undoing the other.
  • Check every workflow with the Delete contact action. Deleted contacts can be restored for 90 days.
  • Turn off what should be off. Actions skipped while a workflow is off don't run when you turn it back on.

2. Lead routing

Routing can break after a change somewhere else. A form edit moves an answer into a new property, the owner workflow keeps reading the old one, and every lead drops to the default branch without an error.

  • Confirm each routing branch reads the property the form writes to.
  • Submit one test entry per branch and check who becomes the owner.
  • Check that every person named in a branch is still an active user.
  • The Rotate record to owner action only assigns to activated users with a paid Sales Hub or Service Hub seat, so check each rotation still holds the people you expect.
  • Before you deactivate someone, reassign their records and take them out of workflows. HubSpot's deactivation guide leaves that to you.

3. Marketing contacts and billing

Only marketing contacts can get marketing email or be targeted with ads, and Marketing Hub bills by marketing contact tier. As of October 2026, HubSpot's billing page says going over your tier by even one contact moves you up automatically, and tiers only come down at renewal. Changes to non-marketing wait for your update date, which is the first of each month on a yearly subscription.

  • Compare your marketing contact count with your tier in Account & Billing.
  • Find every workflow that uses the Set marketing contact status action, and check what enrolls into it.
  • Check each form's setting. HubSpot forms set new contacts as marketing by default.
  • Check Settings > Integrations > Marketing Contacts. Apps sync contacts as non-marketing unless that app's toggle is on.
  • Consider a maximum marketing contacts limit, which workflows, forms and imports can't push past.
  • Before you set people to non-marketing, check which workflows email them, since those sends will be skipped.

4. Data quality and duplicates

HubSpot's data quality tools sit under Data Management > Data Quality, with an overview of duplicates, formatting issues and property insights. Manage Duplicates needs Professional or Enterprise, and bulk duplicate work needs Data Hub Professional or Enterprise (Data Hub is what HubSpot used to call Operations Hub).

  • Review duplicate contacts and companies. HubSpot matches new contacts on email and companies on domain, but companies created through the API aren't deduplicated by domain.
  • Clear the Formatting issues tab.
  • Check fill rates on the fields routing and reports depend on, such as lead source, owner, amount and close date.
  • Look for deals with no contact or company. The Create and associate companies with contacts setting links contacts to companies by email domain, though HubSpot advises against it with the Salesforce integration.
  • On Enterprise, read any Account Cleanup policy. It runs monthly and can delete records not modified in a set period, and workflows that are off.

5. Properties and forms

Duplicate properties are how a form ends up writing to one field while a workflow reads another.

  • The Property Insights tab in Data Quality flags empty, unused and duplicate properties.
  • Exporting all properties gives each one's usages and fill rate.
  • The archive panel shows which assets still use a property. Archived properties are deleted for good after 90 days.
  • Review required form fields and keep the ones routing or reporting reads.

6. Deal pipelines

A deal stage counts as won or lost through its deal probability setting, and HubSpot's pipeline guide says sales and revenue reports need both Won and Lost stages to process deals correctly. If your team added stages after the sale, such as job scheduled or delivered, each one needs to be set as Won. If it isn't, deals drop out of won revenue as they move forward.

  • Check every stage matches a real step in how the team sells.
  • Check every stage after the sale is marked Won.
  • Check stage probabilities, which drive the weighted amount on the board view.
  • Look for deals stuck in one open stage for months.
  • Compare last quarter's closed won total with the figure finance reports.

7. Integrations and connected apps

Settings > Integrations > Connected Apps shows who installed each app and, for most apps, a last activity date. A Needs your attention section lists expired, disconnected or failing connections. Apps built on HubSpot's data sync have a CRM syncs tab with in sync, failing and excluded counts per object.

  • Disconnect apps with no recent activity.
  • Fix everything under Needs your attention, and read the errors behind each failing count.
  • Check what each integration matches records on. Data sync uses email for contacts and name or domain for companies by default. A custom integration that matches on a value many records share can move all of them in one update. Match on an ID that belongs to one record, and consider making it a unique value property.
  • If you run private apps, check API Call Usage under Connections insights. They share one daily pool.

8. Users, seats and permissions

Settings > Users & Teams > Seats shows each user's seat and last active date. As of October 2026, Core, Sales, Service and Revenue seats are paid, and View-Only seats are free on Starter, Professional and Enterprise. Unassigning a seat doesn't lower the bill. You also have to remove the unassigned seat, which applies from the next billing period, and HubSpot says seat counts generally can't drop until renewal.

  • List paid seat holders who haven't been active recently.
  • Move people who only read records and reports to View-Only seats.
  • Remove unassigned seats before renewal.
  • Review who has Super Admin, using HubSpot's permissions guide.

9. Email sending and subscriptions

Settings > Content > Domains & URLs > Email Sending shows each sending domain as Not authenticated, Partially authenticated or Authenticated, which means DKIM, SPF and DMARC are all verified.

  • Every domain you send from should show Authenticated.
  • Check each marketing email uses the right subscription type. Contacts unsubscribed from a type can't receive email sent under it.
  • Carry unsubscribes across when you import. A contact opted out of all email gets no marketing or one-to-one email.
  • On Marketing Hub Professional or Enterprise, a workflow's Performance tab shows the skipped rate for its emails.

10. Reports and dashboards

Numbers that don't match what the team sees are often where an audit starts.

  • Rebuild the three numbers leadership watches from a filtered list of records and compare.
  • Check each report's date property. Create date and close date give different answers.
  • Check which pipelines each report includes.
  • If you report by brand or region, group by that field. Grouping by deal owner breaks when owners don't line up with brands.

What these checks found in real portals

At Conference Badge, marketing contacts had reached 9,159 on a 7,000 tier because one welcome workflow marked every app signup as marketing. I fixed the workflow and scheduled more than 7,800 signups to non-marketing, back under the tier from 1 November 2026. The same audit found four workflows failing silently, and all four are fixed.

At Mission Mobile Medical, active client records were going missing. I traced the loss to an inactivity workflow that was deleting them, stopped it and restored the records.

PICO IV runs two brands in one portal. After a form change, every website signup for one brand went to one default rep, because the form and the routing used different fields. Three routing branches still pointed at deactivated reps. Routing now reads the field the form writes, and deal workflows flag that brand's orders, with 110 past orders flagged back to 2024.

At Phoenix Industrial Cleaning, 57 deals were falling out of won revenue because later job stages weren't marked as won. Correcting the stage rules put them back. Their ServiceTrade integration had also matched on a shared location ID, which swept unrelated deals into the wrong stage, so I rebuilt it to link jobs to deals on the service request ID.

If you'd rather have someone do this for you, see my HubSpot audit and cleanup service. The written report lists what I found, what I fixed and what needs your decision.

Questions

Does HubSpot have a built-in audit tool?

The tools are spread across several screens. Workflows has the Health tab and automation issues view, Data Quality covers duplicates and properties, and Audit Logs in settings records changes made by users.

Will setting contacts to non-marketing lower my bill straight away?

No. The change waits for your next update date, and as of October 2026 HubSpot doesn't lower your tier mid-term. It lowers your count from that date, which helps you stay under the tier and avoid an automatic move up.

Can AI audit HubSpot workflows?

It can help you sort them. HubSpot writes a workflow's name and description with AI when you leave them blank, and workflow search matches descriptions. A description says what a workflow was built to do, so you still need the action logs to see what it did.

How often should I audit my HubSpot portal?

When report numbers stop matching what the team sees, after a big change such as a new form or integration, and a few months before renewal, since seat and tier reductions only apply then.

What's the difference between an audit and a portal cleanup?

The audit finds what is wrong and why. The cleanup is the fixing, such as merging duplicates, archiving properties and correcting routing. On my audits I fix what is clear and list the rest for you to decide.

Written by Abdur Rahim Mostafa. I'm an independent HubSpot consultant with 12 years of HubSpot work. I build integrations, automation and AI agents in HubSpot for teams in the US, UK and Australia. See my case studies or find me on LinkedIn.

Need help with your HubSpot portal?

Book a free 30-minute call. You'll get a written scope and one fixed price.

Book a free 30-minute callMicrosoft Teams · times shown in your time zone