Skip to content

HubSpot

HubSpot CRM Strategy, Automation & Implementation

We design and repair the HubSpot logic behind your lifecycle stages, lead routing, workflows and reports, so the CRM reflects what is happening with each contact, company and deal.

  1. Subscriber
  2. Lead
  3. MQL
  4. SQL
  5. Opportunity
  6. Customer

Other transitions the system must handle

  • SQL to LeadDisqualified after first call, returns to nurture
  • Opportunity to LeadDeal closed lost
HubSpot moves lifecycle stage forward on its own. Every backward path has to be designed.

Open the property settings of a HubSpot portal that has been running for three or four years and you can usually read its history. There’s a “Lead Source” field and a “Lead Source (new)” field. Four forms map the same question into three different properties. A workflow called “MQL nurture v2 FINAL” is still switched on, and no one remembers what v1 did.

None of that happens because HubSpot is badly built. It happens because HubSpot is easy to change, so every team adds its own logic, and the whole picture has no owner. Our work is to put that picture back together: decide what the portal needs to know, how records move between states, and what should happen at each step, then build it so the next person can follow it.

What we work on inside HubSpot

Architecture and properties

Which facts live on the contact, the company or the deal, how they’re associated, and which properties are in use. We merge duplicates, fix field types and set naming rules so new properties don’t sprawl.

Lifecycle stage and lead status

Clear entry criteria for each lifecycle stage, a lead status that reflects real sales activity, and one documented owner for every transition.

Pipelines

Deal stages with exit criteria, required properties at the stages that matter, and separate pipelines where the sales motion is genuinely different.

Lead routing

Owner assignment that checks existing company ownership, territory and availability in a fixed order, with a fallback and an alert when a lead goes unworked.

Workflows, forms and segments

Enrollment triggers, re-enrollment and suppression that match the moment you care about, plus forms that write to the right properties.

Reporting and QA

Dashboards built on agreed definitions, and test records pushed through every path before anything goes live.

A quick note on the two properties people mix up most. Lifecycle stage describes where a record sits in the overall relationship: Subscriber, Lead, Marketing Qualified Lead, Sales Qualified Lead, Opportunity, Customer, Evangelist, Other (or your own custom stages). Lead status describes what sales is doing with a lead right now: New, Attempted to Contact, Connected, Bad Timing, Unqualified and so on. When teams use lifecycle stage to log sales activity, or lead status to mark marketing qualification, both stop meaning anything. If your Sales Hub portal also uses the newer leads object, its lead stages add a third layer, and each one needs a defined job.

Why are HubSpot lifecycle stages inaccurate?

Lifecycle stages go wrong because several sources set them at once, and HubSpot’s automatic updates only move a record forward. Forms with a hidden lifecycle field, imports, connected apps with their own default stage, association settings and a handful of workflows can all write to the same property. Whichever fires last wins, and none of them move anyone backward.

A typical case: a contact downloads a guide in March and becomes an MQL. In June a rep creates a deal, so the contact becomes an Opportunity. The deal is lost in August. Nothing sends them back to nurture, so a year later they still count as an open opportunity in every funnel report.

To move a record to an earlier stage, the property has to be cleared first, manually or with a workflow. Doing that also clears the “became a [stage] date” for the later stage, which changes historical reports. That’s fine if it’s deliberate. It’s a problem when someone does it in bulk to “tidy up.” We define entry criteria for each stage, decide which single process owns each transition, and build the backward paths (closed lost, disqualified, churned) on purpose. Our guide to HubSpot lifecycle stages goes deeper.

Why are contacts entering the wrong workflows?

Contacts usually land in the wrong workflow because the enrollment trigger describes a property value rather than the moment that matters. A filter-based trigger (“When filter criteria is met”) enrolls anyone who matches, including records that matched for unrelated reasons. An event-based trigger (“When an event occurs”) enrolls on the action itself, such as a specific form submission.

Re-enrollment causes the rest. By default a record enrolls once, ever. If re-enrollment isn’t set up, a returning customer never gets the onboarding sequence for their second product. If it is set up loosely, someone gets the same “welcome” email every time a property flickers.

A common one: a webinar follow-up workflow uses a segment as its trigger. Months later, someone edits that segment for a different campaign, and a few thousand old contacts receive a follow-up for an event they never attended. We inventory every active workflow, map what triggers it and which properties it writes, check for workflows that overwrite each other, and add suppression and unenrollment rules before anything is switched back on. This is the core of our CRM automation work.

Why is HubSpot lead routing inconsistent?

Lead routing becomes inconsistent when assignment is split between forms, chat, integrations, workflows and people, each applying different conditions. The first one to set the owner effectively wins, and the rest skip the record because an owner already exists.

Picture an inbound demo request from a company your enterprise rep already owns. It arrives through chat, the chat tool assigns whoever was online, and the routing workflow never touches it. The rep who owns the account finds out a week later.

HubSpot’s “Rotate record to owner” workflow action can distribute records evenly across a set of users or teams, and either respect or overwrite an existing owner. In lead and ticket workflows it can also be limited to available users so reps marked Away are skipped; for contacts, companies and deals the rotation simply splits evenly, so absences need their own branch or a team update. Our HubSpot lead routing guide covers the details. It needs Sales Hub or Service Hub Professional or Enterprise, and assignees need paid seats. The action works well. The trouble is usually the order of decisions around it.

Arrives
New inbound lead
Rules check
  1. Existing company owner
  2. Territory
  3. Company size
  4. Rep availability
Assigned to
  • Account owner
  • Regional team
  • Enterprise AE
  • Round-robin queue
One routing workflow, fixed order of checks, and a fallback when nobody is available.

We consolidate routing into one place, define the order of checks, and add an alert when a lead sits unworked past your agreed response time. Routing and the marketing-to-sales handoff sit within our CRM automation service if that’s your main concern.

Why can’t the sales team trust CRM reporting?

Sales teams stop trusting HubSpot reports when the reports accurately describe data that doesn’t match how the team works. The numbers are right about the records. The records are wrong about reality.

The usual causes are deal stages without clear exit criteria, so one rep’s “Proposal” is another rep’s “Discovery”; close dates and amounts that are never updated; deals created at different points in the process by different people; and lifecycle dates reset by bulk edits. Attribution adds its own confusion when original source and latest source get read as the same thing.

We fix the definitions before the dashboards. That means stage criteria the team agrees to, required properties at the stages where they matter, a single definition of each funnel metric, and dashboards built from those definitions.

See where your HubSpot logic breaks

We map your lifecycle stages, workflows, routing and reports, and show you which issues are costing you leads or trust in the numbers.

Request a HubSpot Audit

Segments, forms and integrations

HubSpot now calls lists segments, though “lists” still appears in some menus and older documentation. Active segments add and remove records automatically as filters change. Static segments are a snapshot that doesn’t update after saving. Most segment problems come from using one where the other belongs, or from chaining segments into workflow triggers until no one can trace why a contact qualified.

Forms deserve more attention than they get. Each one should write to properties you’ve agreed on, set source data consistently, and avoid stamping a lifecycle stage that a workflow is supposed to control. Non-HubSpot forms need to be captured or rebuilt so their submissions behave the same way.

Integrations are where clean portals get messy again. Ecommerce, billing, Salesforce and calendar apps each create or update records with their own field mappings and sync directions, and connected apps can set a default lifecycle stage for every record they create. We document each sync and decide which system is the source of truth for each property. More on our approach to integrations.

How a HubSpot engagement usually runs

Most start with an audit: we review the portal, interview the people who use it, and produce findings ranked by impact. From there we design the architecture, implement the changes, and validate them with test records before switching anything on in production. Some clients then keep us on for ongoing optimization; others take the documentation and run it themselves. For new portals or rebuilds, see CRM implementation.

Can you work in our existing portal, or do we need a rebuild?

Usually we work in the existing portal. A full rebuild is rarely needed; most portals need consolidation, clear definitions and a cleanup of conflicting workflows. We’ll tell you after the audit if a rebuild would genuinely be cheaper.

Which HubSpot subscriptions do you work with?

We work across Marketing Hub, Sales Hub and Service Hub. Some features depend on tier: owner rotation in workflows needs Professional or above, and custom objects need Enterprise. We’ll flag where your current tier limits a design before we build it.

What access do you need?

Usually a user with Super Admin or broad edit permissions for the audit, so we can review workflows, properties and settings. We don’t change anything during the audit itself.

We’re moving to HubSpot from another CRM. Where do we start?

With the data model, not the export file. Decide which properties, pipelines and lifecycle stages the new portal needs, map old fields onto them, and clean duplicates before import. Workflows are rebuilt in HubSpot’s own logic rather than copied. Our CRM migration service covers the move itself, and the new portal’s setup is usually scoped alongside it as CRM implementation.

Find out what your HubSpot portal is really doing

A HubSpot audit maps your lifecycle logic, workflows, routing and reports, then gives you a prioritized list of what to fix first.