JD
All projects

Marketing Automation Architecture

ABGi Marketing Automation

A HubSpot revenue engine: routing, scoring, lifecycle, and attribution that sales actually trusts.

Automation architect — design, build, and rolloutClient engagement

01

Problem

Leads arrived from ads, webinars, referrals, and the website into a flat CRM. Routing was manual, lifecycle stages were opinions, scoring didn't exist, and nobody could say which campaign sourced which revenue.

Sales didn't trust marketing's numbers because the numbers changed depending on who pulled them. The real deliverable wasn't workflows — it was a single funnel definition both teams would accept.

02

Solution

I designed the automation as an architecture, not a pile of workflows: one intake pipeline that normalizes every lead source, a lifecycle model with explicit entry and exit criteria, additive lead scoring, and time-based routing with SLA escalation.

UTM governance made attribution trustworthy — enforced parameter conventions at the source, captured on every conversion, and rolled into campaign attribution reporting that finance could reconcile.

Every workflow was documented as a diagram before it was built, so the system stayed legible: anyone can trace a lead from first touch to closed-won and see every decision the automation made.

Workflow design

Lead routing workflow

The core intake workflow, as designed: every lead source feeds one pipeline; branching logic scores, segments, and routes with SLAs — no lead waits on a human to be triaged.

Trigger

Form Submission

Ads · Webinar · Website · Referral

Action

Normalize & Enrich

Firmographics, dedupe, UTM capture

If / Then

ICP Fit?

Industry, size, geography

Action

Score ≥ 60 → MQL

Behavior + fit scoring

If / Then

Territory Match

Round-robin within region

Action

Route to AE

Task + Slack alert, 2h SLA

Action

Score < 60 → Nurture

Lifecycle email track

If / Then

Re-engaged?

Content + intent signals

Outcome

Recycle or Close

Attribution logged either way

Architecture

How it's put together

The system view: sources feed a normalization layer, the lifecycle engine owns stage transitions, and reporting reads from one attribution spine instead of per-channel exports.

Sources

Google Ads

LinkedIn

Webinars

Website / SEO

Referrals

Intake & Governance

UTM Framework

Enforced conventions

Form Normalization

One schema, all sources

Dedupe & Enrichment

Automation Engine (HubSpot)

Lead Scoring

Fit + behavior

Lifecycle Stages

Explicit entry/exit criteria

Routing & SLAs

Territory, round-robin, escalation

Nurture Tracks

Branching by segment

Revenue & Reporting

Campaign Attribution

Multi-touch

Funnel Reporting

Stage conversion, velocity

Sales Handoff

CRM tasks, alerts

Challenges

What was hard, and what I did about it

Attribution people would stop arguing about

Multi-touch attribution fails socially before it fails technically. Locking UTM conventions at the source and publishing one shared funnel definition ended the dueling-spreadsheets era — the model was simpler than it could have been, on purpose.

Workflows that stay maintainable

HubSpot workflows rot into spaghetti fast. Every workflow followed a pattern — one trigger, named branches, documented exits — and the diagram was the source of truth, reviewed before anything was built.

Routing edge cases

Territory overlaps, house accounts, and re-engaged closed-lost leads each broke naive round-robin. The routing layer grew explicit precedence rules and an escalation branch instead of silent misroutes.

Tech stack

Built with

HubSpotSalesforceWorkflow designLead scoringLifecycle modelingUTM governanceMulti-touch attributionGA4Zapier / webhooks

Outcomes

What changed

  • 0 manualtriage steps between form submission and rep follow-up
  • 2h SLAon qualified-lead follow-up, enforced by escalation branches
  • 1 funneldefinition shared by marketing, sales, and leadership — same numbers in every meeting

Next project

Google Ads AI