Loading tutorials…
Loading tutorials…
Workflows are the engine under HubSpot's marketing automation. They are also where 80% of the silent breakage happens — wrong enrollment criteria, missing re-enrollment toggles, branch logic that loops. Here's how specialists build them so they hold up.
Who this is forMarketing ops leads and founders building automation in HubSpot for the first time. Or anyone with 20+ existing workflows where nobody knows which are still active. If you're paying for Marketing Hub Pro and have under 10 working workflows, this is the leverage tutorial.
What you'll need
Step 1
HubSpot has 5 workflow trigger types. Picking the wrong one is the most common workflow design error.
Navigation → Automation → Workflows → Create workflow.
Trigger type — Contact-based: most common. Enroll contacts based on properties, behavior, list membership. Use for lead nurture, lifecycle promotion, sales handoff.
Company-based: enroll companies (Marketing Hub Pro+). Use for ABM-style automation where the company is the unit of work.
Deal-based: enroll deals when stage or property changes. Use for deal-stage notifications, sales follow-up, post-close handoff.
Ticket-based: customer service workflows.
Quote-based: quote-stage automation.
Rule of thumb: if the action is "send the contact an email," use Contact-based. If the action is "notify the deal owner," use Deal-based. Mismatched type = workflow runs but actions fail.
Step 2
Enrollment criteria is what decides who enters the workflow. Vague criteria = wrong people enrolled. Most workflow failures trace here.
In the workflow editor → Enrollment triggers → Set enrollment triggers.
Common patterns: "Lifecycle stage = Lead" + "Last form submission > 7 days ago" + "Email opt-in = Yes." Each AND condition narrows the cohort.
For behavioral triggers, use Filter type → Activity → Page view / Form submission / Email click.
Always add an exclusion: "Email = is unknown" (excludes blank emails) and "Lifecycle stage = Customer" (excludes existing customers from prospect workflows).
Preview the cohort before turning on: click "Test" or look at the right-rail count showing matching contacts. If the count is 0 or 10,000 when you expected 200, criteria is wrong.
Step 3
Re-enrollment decides if a contact can enter the workflow more than once. Wrong setting = contacts spammed or never re-engaged.
In the workflow editor → Settings → Re-enrollment.
Default = OFF. Most workflows should stay OFF. A contact who enrolled in 'New lead nurture' yesterday should not re-enroll today even if they fill out another form.
Re-enrollment ON is for workflows where re-triggering makes sense: 'Cart abandonment' (every new cart), 'Webinar reminder' (every new registration), 'Annual review prompt' (every year).
Even with re-enrollment ON, set a cooldown delay. Action → Delay → 7 days (or appropriate) → after delay, allow re-enrollment.
Bad re-enrollment is the #1 cause of "HubSpot spammed my list" complaints.
Step 4
Branches (Pro+ feature) let one workflow handle multiple paths. They are powerful and easy to over-use into unmaintainability.
In the workflow editor → click + → If/then branch.
Use branches for true conditional logic: "if industry = SaaS, send email A; else send email B."
Resist branches for "and one more variation, and one more...". Once a workflow has 4+ branches, split into separate workflows by enrollment criteria. Easier to maintain and reports stay readable.
Always set a fallback for branches. Every "if" should have an explicit "else" path even if the else is "do nothing." Unhandled branches leave contacts stranded mid-workflow.
Add internal notes ("This branch is for enterprise leads") inside the workflow — future-you will need them.
Step 5
HubSpot's Test feature lets you walk a single contact through the workflow. Always run this before activation.
In the workflow editor → top-right → Test.
Pick a sample contact who matches your enrollment criteria. Walk through each step and verify: action happens as expected (email sends, property updates, task creates), delays are correct, branches route correctly.
For email actions, "Test" sends a real email to the test contact. Use a contact you own (your own +test@ email) to avoid sending to real customers.
Run 3-5 different test contacts representing different paths (matches branch A, matches branch B, exits early). If any path breaks, fix before activation.
When you activate ("Review and publish"), set "Enroll existing contacts who meet trigger criteria" intentionally. ON = backfill all matching contacts immediately (can spam thousands). OFF = only enroll going forward.
Step 6
Activated workflows degrade over time. Monthly audit = open each workflow, check Performance tab, verify it still does what it should.
Navigation → Automation → Workflows → click any workflow → Performance tab.
Check: Currently enrolled (anyone stuck for >30 days?), Total enrolled this month, Goal conversion rate if set, any actions with high failure counts.
Common failure modes that show up here: emails bouncing en masse (sender domain issue), tasks failing to create (workflow assigned to deleted user), delays of "until property = X" never triggering because X never gets set.
Archive workflows you no longer use. Inactive-but-not-archived workflows clutter the workflow list and create confusion about what is current.
Common mistakes
Using "has been updated" triggers without limits
What goes wrong: A workflow with 'Lifecycle stage has been updated' as the trigger fires every time the property changes — including spurious integration updates. Contacts get enrolled 50x per week, get the welcome email repeatedly, and unsubscribe. List quality drops 20%.
How to avoid: Use 'is equal to [specific value]' instead of 'has been updated.' If you need 'changed,' add re-enrollment criteria with a cooldown delay.
Turning on "Enroll existing contacts" without thinking
What goes wrong: You build a new welcome workflow with 'Enroll existing contacts who meet trigger criteria' = ON. 12,000 existing leads get the welcome email overnight. Half were customers from 3 years ago. Spam complaints surge.
How to avoid: Default this to OFF. Only enable when you've deliberately decided to backfill. Use a list + 'Enroll into workflow' bulk action for controlled backfill instead.
Wrong workflow type for the action
What goes wrong: You build a Contact-based workflow that tries to update Deal properties. The Deal actions silently fail because Contact-based workflows can't reliably edit associated Deal records. Reports look right; data isn't updating.
How to avoid: Match workflow type to the object you need to update. If actions touch deals, use Deal-based. If they touch companies, Company-based. Cross-object actions need careful association mapping.
Branch logic without a fallback
What goes wrong: You build 'if Industry = SaaS → send email A.' If Industry is unknown or any value other than SaaS, the contact hits the branch and... nothing happens. They sit there forever, counted as enrolled. Performance reports show 100s of contacts stuck.
How to avoid: Every if/then branch must have an explicit else path, even if the else action is "do nothing" or "exit workflow."
Stacking workflows without coordination
What goes wrong: You have 'New lead nurture,' 'Demo follow-up,' and 'Industry-specific outreach' all triggering on the same contact. They get 4 emails in 24 hours. Open rate drops. They unsubscribe.
How to avoid: Use 'Goal' criteria or exclusion lists to make workflows aware of each other. E.g., 'Enrollment criteria = not enrolled in [other workflow] in last 7 days.'
No testing before activation
What goes wrong: You build a 12-step workflow, activate it, and discover by Tuesday morning that step 7 had a typo causing 800 contacts to get an email referencing '{{ firstname }}' as literal text. Sales rep credibility damaged.
How to avoid: Always run 3-5 test contacts through every workflow before activation. HubSpot Test feature exists for exactly this reason. Skipping it is the most expensive shortcut in marketing ops.
Recap
Done — what's next
How to set up HubSpot lifecycle stages so marketing and sales actually agree
Read the next tutorial
Hand it off
Workflow design is the part of HubSpot where specialist time compounds the hardest. A well-built workflow runs for years without touch; a poorly-built one creates support tickets monthly and degrades trust in the data. EverestX HubSpot specialists typically design 3-5 core workflows in week 1, then maintain on ongoing retainer at $14-16/hr.
See specialist rates
A focused portal runs 15-30 active workflows. Beyond 50, most teams stop knowing which is which. Beyond 80, workflows start interfering with each other and the maintenance burden eats the team's time.
Workflows = marketing automation, anonymous or one-to-many, lifecycle-driven. Sequences (Sales Hub) = 1:1 sales outreach with reply detection and pause-on-reply. If a sales rep is sending the email manually, sequences. If it's automated based on contact behavior, workflows.
Yes — Workflows → click the three-dot menu on any workflow → Copy → choose destination portal. Permissions and associated assets (emails, properties) must exist in the destination first or the copy will be partial.
Mid-flow contacts pause indefinitely. They don't complete the workflow, they don't get the remaining actions. Reactivating resumes them from where they stopped. If you want to flush, suppress, or restart, do it explicitly before deactivating.
Breeze (HubSpot's AI, formerly ChatSpot) can generate workflow skeletons from a natural-language prompt. Useful for the first draft. Always review and test — the AI doesn't know your specific data quality, lifecycle definitions, or list hygiene. Treat it like a junior assistant, not a finisher.
HubSpot Marketing Hub
Lifecycle Stage is the most misunderstood property in HubSpot. Set it up wrong and marketing reports show 'MQLs created' that sales never touches. Set it up right and the whole pipeline becomes legible. Here's the taxonomy and automation that holds up.
HubSpot Marketing Hub
Lead scoring is the most-built and least-used feature in HubSpot. Most setups generate scores that nobody references because they don't match how sales actually qualifies. Here's the model that earns sales trust — and the decay rules most owners skip.
HubSpot Marketing Hub
Sequences are HubSpot's 1:1 sales outreach tool — for reps sending personalized emails at scale. Different from workflows. Different from marketing email. Different rules. Used wrong, sequences burn down your sending reputation. Used right, they double rep capacity.
HubSpot Marketing Hub
HubSpot is one of the most powerful platforms in marketing — and one of the easiest to over-configure into uselessness. Here's the honest framework: when DIY costs you more than hiring, and how to tell which side of the line you're on.