# The inbound-led outbound engine

> Content creates the demand, capture turns it into signals, qualification and suppression decide who is touched, and three tiers route each one to a rep or a sequence.

- Canonical page: https://warmup.ai/library/inbound-led-outbound-engine
- By Mike Hurley, founder of WarmUp. This is the system we run on ourselves. Capture, qualification, suppression, routing and the record are live; the weekly signal report and the automated Tier 3 nurture lane are drawn and not yet built.
- Version 1.0. Last updated 2026-10-03. About 8 minutes.
- Board: https://warmup.ai/library/inbound-led-outbound-engine.webp
- Full build guide: https://warmupai.notion.site/The-inbound-led-outbound-engine-3eede1f21b8f811b904aeb41bd3c5451

**Content creates the demand. Signals set the priority. People advance the sale.**

How to read the board: Left to right. The first column is what we make: the standup, the guides, the pages built for search and AI answers. The second is what catches the response to it. Every captured signal passes through one qualification step and one suppression step, then lands in one of three tiers. Tier 1 and Tier 2 go to a person; Tier 3 goes to a sequence. Everything is written to the CRM, and the loop at the bottom sends what the rep hears back to the start as next week's content.

## Why it helps

Most companies I talk to already create engagement. A founder posts, a page gets read, a video gets watched, someone fills in a form and never hears back. Almost all of it disappears, because nothing is watching it and nothing is deciding what it means. The sales team, meanwhile, works a cold list.

This engine closes that gap. It treats every reaction, visit, download and reply as a signal, puts each one through the same qualification and suppression it would apply to a cold account, and then routes it by tier so the warmest, best-fit people are in front of a rep the same day with the reason attached. The cold motion does not go away; it becomes the fallback instead of the whole job.

It is also the system we sell, pointed at ourselves. The client version assumed signal sources already existed. Ours builds them, because a founder's own content is the cheapest signal source there is. The qualification, suppression and routing layer is the same one in every deployment, which is why this guide can be specific about it.

## The sources

Signal creation is the content: a short standup video most days, the open guide library, pages written to answer the questions buyers put to search engines and AI assistants, long-form teardowns, and reviews on the directories AI engines cite. Signal capture is one step per source. Our live ones are LinkedIn engagement (reactions, comments and reposts on our own posts and on posts from a few companies we watch, collected by Apify running through Freckle) and the site's own forms and booking page, where the source field now includes AI search. Identified website visitors and video viewers are drawn on the board and added the same way: one capture step each, the same shape downstream.

## The three tiers

| Tier | What it means and who touches it |
|---|---|
| Tier 1, hot | An active signal on a high-fit account. The rep works it the same day: a call or a message, with the signal and the full engagement history already in front of them. |
| Tier 2, warm | Engaged and worth a touch. A sequence that references the signal: email, LinkedIn or a call, each on its own sender. A person still writes the first message. |
| Tier 3, fits, no signal yet | Today's cold motion, demoted to the fallback. A nurture sequence, never worked blind. A reply or a fresh signal promotes the record to Tier 2. |

## Why we built it this way

- **Build the signal sources; do not wait for them.** The client version of this engine assumed signals already existed. For a small company they usually do not, and a founder's own content is the cheapest source to build. The standup, the guides and the search pages are on the board as parts of the system, not as marketing beside it.
- **One qualification step, one suppression step, whatever the source.** A warm signal is tempting to act on without checking. It is still scored against the same ICP facts and the same segments as a cold account, and suppression still runs first: open opportunities, current clients, recent activity, duplicates in the book. Warmth sets the priority, not the rules.
- **Two things swap per client. Everything else carries over.** Signal sources swap, and the CRM swaps. Scoring, suppression, ownership, tiering, routing and reporting are the same layer in every deployment, which is what makes the engine repeatable rather than a one-off.
- **A reply promotes the record. Nothing else changes a tier.** Fit belongs to the account. Timing belongs to the signal. A reply or a fresh signal moves a record up a tier; a sequence finishing, or time passing, never moves it down past where its fit puts it.
- **The gates hold.** Agents draft, a person posts, the rep works Tier 1 and Tier 2 by hand. Nothing external ships unattended, and every number on the report comes from the scorecard, never from memory.
- **The loop is the content calendar.** The questions a rep hears on calls and in discovery are next week's standups and guides. Replies and new engagement come back in at the left as signals. The engine feeds itself, so there is no separate content plan to maintain.

## How to build it

1. **Make something, on a schedule you can keep.** A short video most days, one open guide a week, or pages that answer the questions your buyers ask. The schedule matters more than the format: capture needs a steady stream to watch.
2. **Add one capture step per source.** Start with the source you already have. For LinkedIn, a collector that runs on a schedule and returns everyone who reacted, commented or reposted. For the site, make sure every form carries a source field that includes AI search.
3. **Qualify every captured person and company the same way.** Identify the company, enrich the few facts your ICP needs, score the fit, and store it in a database you own. A workflow builder does this in one step; the CRM gets the result, not the work.
4. **Suppress before anyone decides.** Open opportunities out. Current clients out. Anyone with recent activity out, and anyone already in the book deduplicated. One owner field, so two people never work the same record.
5. **Route into three tiers.** Hot, warm, and fits-with-no-signal. Write the tier and the reason on the record so the rep sees why, not just who.
6. **Give each tier one kind of touch.** Tier 1 is a person the same day. Tier 2 is a sequence that references the signal, with a person writing the first message. Tier 3 is a nurture sequence that is never worked blind.
7. **Write everything to the CRM.** Every signal, score, source and tier goes on the account and the contact. Let your sender-sync tool write activity back, so the CRM is the record even though it is not the brain.
8. **Close the loop with a weekly report and next week's content.** Who engaged, how they scored, what was worked, what booked, and what each source is worth. Then take the questions the rep heard and make next week's content from them.

## Copy this: The tier and suppression rules

The rules the routing step applies to every signal, whatever its source. The tools in the comments are the examples we use; the rules are the part to copy.

```yaml
# engine.yaml
suppress_first:                 # runs before any tier is assigned
  - open_opportunity            # anyone with a live deal
  - current_client
  - recent_activity: 14d        # touched by anyone in the last two weeks
  - duplicate_in_book           # same company or person already owned
  - do_not_contact              # one list, one writer
owner: single_field             # a record has one owner or none
tiers:
  tier_1:
    when:  [fit: high, signal: active]
    touch: person_same_day      # a call or a message, history attached
  tier_2:
    when:  [fit: ok, signal: engaged]
    touch: sequence_with_signal # person writes the first message
    senders: {email: one, linkedin: one, calls: one}
  tier_3:
    when:  [fit: ok, signal: none]
    touch: nurture_sequence     # never worked blind
promote:
  - on: reply         -> up one tier
  - on: fresh_signal  -> up one tier
demote: never_below_fit         # a tier can rise on timing; fit sets the floor
record:
  write: [signal, score, source, tier, reason]   # on the account and the contact
  activity_back: sender_sync    # the senders write their own activity into the CRM
loop:
  weekly_report: [who engaged, how they scored, what was worked, what booked, source value]
  next_content:  questions the rep heard this week
```

## Words we use

- **Signal:** Something a company or a person did that suggests now is a good time to talk: a job posting, a comment on a post, a form, a reply.
- **Tier:** The rank a company holds on the map because of its fit. A signal moves a company up inside its tier and never changes the tier.
- **Fit and timing:** Two separate numbers. Fit is how well a company matches who we sell to, and it belongs to the account. Timing is how fresh the signal is, and it fades.
- **Queue:** The one ordered list a rep works from, with a score and a reason to call beside each name.
- **Sender:** A tool that delivers messages or calls on one channel: email, LinkedIn or the phone.
- **Blocklist:** The companies and people we must never contact. One tool writes it, and every sender reads the same copy.
- **Router:** The one step every signal passes through. It matches the signal to a company and a person and puts it in one shape before anything acts on it.

## Talk to a person

Want this engine pointed at your own content? WarmUp builds these systems for companies, or places a verified GTM engineer to run them: https://warmup.ai/gtm-systems and https://warmup.ai/hire. WarmUp publishes no pricing.
