Great thread. Two specific questions came up in the follow-up, what to do after Closed Won and how to handle duplicates. Wanted to address both directly, then add a few SaaS-specific things that don’t get mentioned enough.
After Closed Won
HubSpot automatically updates contact and company lifecycle to Customer when a deal closes. This is on by default but worth confirming in Settings > Objects > Contacts > Lifecycle Stage > Automate since it can be toggled off.
What most teams miss is the handoff. Build a workflow that fires on Closed Won to: create a ticket in your onboarding or CS pipeline, assign it to the right owner, and copy key deal fields into the ticket. Whether you copy deal properties to the company record via a workflow, use a property sync, or surface associated deal properties directly on the company card depends on whether your team needs to edit those values or just view them. Decide that first, then pick the method.
On duplicate companies
HubSpot’s automatic company creation already excludes free email domains (Gmail, Hotmail, Yahoo) natively. You can also exclude up to 1,000 custom domains in Settings > Objects > Companies if you have industry-specific domains you don’t want creating company records. Before building a custom workflow for this, check what’s already broken specifically. The native behavior handles the most common case.
On enrichment
Run it after standardization, not before. Inconsistent company names, free-text fields, and unstandardized domains mean enrichment fills in values on top of messy data and compounds the problem. Standardize first, then enrich.
On the pipeline
Six stages maximum, each representing a decision not an activity. If a stage doesn’t require something specific to be true before a deal moves in, it’s an activity stage and belongs in the activity log not the pipeline. Define exit criteria for each stage in one sentence. If you can’t write it in one sentence the stage isn’t defined clearly enough to exist.
On SaaS reporting, the thing nobody mentions upfront
HubSpot’s native ARR and MRR properties calculate automatically from deal line items. They work for basic visibility but they’re not designed for SaaS revenue reporting in the investor sense. Tracking NRR, cohort MRR, expansion and contraction across your customer base natively requires Data Hub Enterprise for custom datasets. On Pro, which is where most early-stage SaaS teams start, the practical approach is HubSpot as the system of record and Google Sheets as the calculation layer, synced daily via a simple export or integration. It’s not glamorous but it gives you board-ready MRR and NRR without an Enterprise upgrade. Add a BI tool when you hit the limits of Sheets, not before.