<!--
ROBOTS ON PAYROLL / THE VAULT
What this is: the complete architecture of a working cold outreach system: domains, DNS, warmup, targeting, sequencing, reply handling, compliance.
How to use it: download this file and give it to your AI (Claude, ChatGPT,
Cursor, Lovable chat) as a reference. Say: "Use this as my playbook for
building my outbound engine."
Latest version + full guide: https://robotsonpayroll.com/resources/outbound-engine
-->

# The Outbound Engine: Full Blueprint

The complete architecture of a working cold outreach system for selling newsletter
sponsorships (or any B2B offer), anonymized. This is the whole system in one document:
domains, DNS, warmup, targeting, sequencing, reply handling, compliance. This is the
system I built and run as of July 2026 (domains live, warmup running, first batch
targeted and drafted); every domain, name, and key is a placeholder.

---

## 0. The one rule that pays for everything else

**Never send cold email from your main domain.** Not once, not "just this batch".

Cold email gets marked as spam sometimes even when it's good. Spam complaints damage
domain reputation. Domain reputation is shared by EVERY email the domain sends,
including your newsletter itself, your transactional email, your password resets.
One bad cold campaign from yournewsletter.com can tank the deliverability of the
product you are trying to sell sponsorships FOR.

So the architecture is: buy lookalike domains (yournewsletter-hq.com,
tryyournewsletter.com, yournewsletter-media.com), send cold only from those, and let
them absorb all reputational risk. Worst case you burn a $10 domain, not the business.

## 1. Architecture overview

Components:

1. **3 to 5 lookalike sending domains**, each with 1 to 2 mailboxes, all hosted on a
   cold-email sending platform (the category: Instantly, Smartlead, and similar tools).
   The platform provides mailbox hosting, warmup network, unified inbox, and a send API.
2. **A contact database** (the category: Apollo, and similar B2B databases) used in two
   stages: free broad searches to scout, paid reveals only for chosen contacts.
3. **A prospect state file / lightweight CRM**: per-company send history, mailbox
   ownership, reply flags, stage. This is the seed of your sponsor CRM; treat it as the
   single source of truth.
4. **A sequencer script (or the platform's sequencer)**: renders every email to a draft
   for human review, then sends on schedule, respecting caps and reply-stops.
5. **A reply pipeline**: unified inbox pulled via API, filtered to an allowlist of
   contacted prospects, replies composed by you but dispatched from the mailbox that
   owns the thread.

The flow, end to end:

```
scout (free searches, all plausible titles per company)
  -> judge (human or LLM picks the sponsorship BUYER + one alternate)
  -> reveal (spend credits on chosen contacts only, verified emails)
  -> draft (every email rendered to a file for human review)
  -> send (initial -> f1 +3d -> f2 +8d, 10-15/day per mailbox)
  -> escalate (no reply after 2 days -> intro the alternate, once)
  -> reply detected -> ALL sequences to that company stop
  -> conversation continues by hand from the owning mailbox
  -> CRM stage advances: contacted -> replied -> interested -> negotiating -> booked
```

Why this shape: everything cheap and reversible happens early (searching, judging,
drafting), everything expensive and irreversible happens late (credits, sends). Human
judgment sits at exactly two gates: picking the contact, and approving the drafts.

## 2. Domains and DNS

### Buying domains

- Buy 3 to 5 lookalikes of your real brand. Patterns that work: `get<brand>.com`,
  `try<brand>.com`, `<brand>hq.com`, `<brand>-media.com`, `read<brand>.com`.
- .com strongly preferred. Weird TLDs (.xyz, .top) carry spam baggage.
- Age matters: buy them the day you decide to do outbound, because warmup adds 2+
  weeks and older domains warm better. Domains cost ~$10 each; this is not where you save.
- 1 to 2 mailboxes per domain. More mailboxes per domain concentrates risk; more
  domains distributes it.

### The records (per lookalike domain)

SPF, TXT on root. One record only, hard fail:

```
v=spf1 include:_spf.yoursendingplatform.com -all
```

DKIM, selector subdomain, value supplied by your sending platform:

```
Host:  s1._domainkey
Type:  CNAME
Value: s1.dkim.yoursendingplatform.com
```

DMARC, TXT on `_dmarc`, reject policy:

```
v=DMARC1; p=reject; rua=mailto:dmarc@yournewsletter-hq.com; adkim=s; aspf=s; pct=100
```

`p=reject` is right for a single-purpose outbound domain: every legitimate email from
it is yours and authenticated, so anything failing is spoofing. (Gmail/Yahoo require
DMARC of at least `p=none` from 5,000+/day bulk senders; you'll be far under that,
but reject exceeds the bar either way.)

MX records per your platform's docs, or replies bounce and the whole exercise is
pointless.

### The redirect

Point the root of every lookalike at your real site with a 301:

```
yournewsletter-hq.com/*  ->  https://yournewsletter.com
```

Prospects check the domain before replying. A parked page or an error screams
throwaway spam infrastructure. A redirect to a real site with a real audience page
closes the credibility gap in one click.

### Verify before warmup

Send a test to a Gmail account, open "Show original", confirm `SPF: PASS`,
`DKIM: PASS`, `DMARC: PASS`. Do this per domain. Five minutes now saves two weeks of
warming a misconfigured domain.

## 3. Warmup: the mandatory two weeks

New domains and new mailboxes have zero reputation. Mail providers treat
zero-reputation senders that suddenly blast 50 emails/day as spammers, because that is
what spammers look like.

**What a warmup network does:** your sending platform enrolls your mailboxes in a pool
of real inboxes that email each other automated but human-looking messages. Those
messages get opened, replied to, rescued from spam folders, and marked important. To
Gmail and Outlook, your mailbox looks like a normal human account building normal
relationships.

**The rules:**

- Minimum 2 weeks of warmup before the first real cold send. 3 to 4 weeks is better.
  This is a hard gate; put the date in your sequencer as a literal interlock the send
  command refuses to run before.
- Keep warmup running at reduced volume even after going live. Warmup traffic keeps
  the positive-signal ratio healthy alongside real cold sends.
- Watch the platform's health score per mailbox. You are ready when: 2+ weeks elapsed,
  health score sustained in the platform's green zone (typically 90%+), and warmup
  emails landing in inbox, not spam, across providers.
- If a mailbox's health drops after going live: pause cold sends from it, keep warmup
  on, resume at half volume when it recovers. If it does not recover in 2 weeks,
  retire the mailbox.

**Ramp:** even after warmup, do not jump to full volume. Start at ~5 cold sends per
mailbox per day, add ~2/day every few days up to your cap of 10 to 15.

## 4. The sequence

Three touches to the primary contact, one escalation to an alternate:

```
Day 0   initial       primary contact, mailbox A
Day 2   escalation    IF no reply: fresh intro to the ALTERNATE contact, mailbox B
Day 3   follow-up 1   primary, same thread, one new piece of value
Day 8   follow-up 2   primary, same thread, clean breakup email
```

Non-negotiable mechanics:

- **A reply kills everything.** Any reply, from either contact, including "no", stops
  every scheduled message to that company immediately. Automated follow-ups after a
  human reply are how you get spam-flagged AND embarrassed.
- **Escalation is one-shot and from a different mailbox.** If the primary is silent
  after 2 days, the alternate gets a fresh initial (not a forward, no "my colleague
  didn't answer"). One escalation per company, ever. Two people ignoring you is an answer.
- **Daily caps: 10 to 15 cold sends per mailbox per day.** This is the load-bearing
  deliverability number. Across 4 domains x 2 mailboxes that is still 80 to 120
  emails/day, which is more pipeline than a solo operator can handle replies for anyway.
- **Follow-ups reply to your own thread** (same subject, In-Reply-To set). Threading
  raises reply rates and lowers spam signals versus fresh subjects.
- **Every send is rendered to a draft file first.** Dry-run by default; the live flag
  is an explicit, separate decision. You will catch broken merge fields, wrong names,
  and stale fit lines in drafts. Everyone does, every batch.

## 5. Targeting: scout, then judge, then spend

The expensive mistake in B2B prospecting is paying to reveal contact data for people
you later realize are the wrong buyer. Invert it:

**Stage 1, scout (free).** For each target company, pull ALL plausible candidates via
the contact database's search endpoints: everyone in marketing, partnerships, demand
gen, community. Searches are free or near-free on the major databases; reveals are
what cost credits. Dump everything to a candidates file.

**Stage 2, judge.** A human (or an LLM with a tight rubric, human-spot-checked) reads
each company's candidate list and picks one primary and one alternate. Only then:

**Stage 3, reveal (paid).** Spend credits revealing verified emails for the chosen two
per company. Never reveal whole rosters. Verified-only by default: bounces are poison
on young domains, and one batch of guessed emails can undo two weeks of warmup.

### Who actually buys sponsorships

Pick the sponsorship BUYER, not the first marketer you find. Growth product and
performance marketing people build funnels; they do not buy placements. Title ranking,
best first:

1. Anything with "creator", "sponsorships", "newsletter", "media buying" in the title
2. Demand generation
3. Partnerships / business development
4. Brand marketing, field marketing
5. Developer relations (for dev-audience newsletters)
6. Community

Avoid: talent acquisition (they buy job ads, not sponsorships), growth product,
analysts and ops-only roles, "brand ambassador" titles.

### The fallback ladder (when your chosen contact will not verify)

1. Verified email revealed: use as-is.
2. Unverified but a real address is present: usable, tag it `guess`, watch bounces.
3. No email: infer from the company's dominant pattern, learned from VERIFIED
   colleagues at the same domain (if jane.doe@acme.com verified, john.smith@ probably
   follows). Tag it `pattern`.
4. Only a senior person findable: use them, but switch the opener to a routing ask,
   "are you the right person for this, or can you point me to whoever is?" Senior
   people forward; they rarely buy directly.

## 6. Templates

Full anonymized template set with timing, escalation copy, and reply snippets lives in
`sequence-templates.md` in this same folder. The rules they encode:

- 60 to 110 words for the initial. Shorter for follow-ups.
- One specific fit sentence per email, referencing something checkable about the
  prospect (a launch, a feature, a category). No "I love what you're doing".
- No stats claims in email 1 unless you can screenshot them on the first call. Offer
  the numbers rather than asserting them.
- One CTA, phrased as a question, no calendar link in the first touch.
- Minimal signature: name, one-line identity, link to the real site. No images, no
  banners (they hurt deliverability on young domains).
- A one-line opt-out in every email.

## 7. Reply handling

- **One unified inbox, pulled via your sending platform's API.** With 4 domains x 2
  mailboxes you cannot check 8 webmail tabs; you will miss a reply and lose a deal
  to latency.
- **Allowlist filtering.** Only surface messages from contacts you have actually
  emailed (match sender domain/address against your prospect state). This matters for a
  non-obvious reason: warmup traffic arrives from random third-party domains and looks
  like real email. Filtering by allowlist membership (not by pattern-matching warmup
  content) excludes all of it cleanly.
- **Thread-consistent replies.** Always reply from the mailbox that owns the thread,
  via the platform's API, with In-Reply-To set. Never reply from your main-domain
  personal account and never from a different lookalike mailbox: it breaks threading,
  confuses the prospect, and leaks the architecture.
- **Poll frequently.** Every 15 minutes via cron is fine; add a notification (Slack
  webhook, push, whatever you already have) on new replies. Cold-reply conversations
  are won by response speed; same-hour answers convert measurably better than same-day.
- **Reply detection also drives the sequencer.** The same poll that surfaces replies
  flips the company's reply flag, which is what stops scheduled follow-ups.
- **Advance the CRM stage on every touch:** queued -> contacted -> replied ->
  interested -> negotiating -> booked -> live / passed. Even a JSON file with those
  stages beats memory. When a sponsor asks "what did we agree in March", you will
  have it.

## 8. Compliance: decide deliberately, not accidentally

Not legal advice; a map of the tradeoffs so you choose on purpose.

**CAN-SPAM (US).** Cold B2B email is legal under CAN-SPAM if you: (1) do not use
deceptive headers or subjects, (2) include a functioning opt-out and honor it within
10 business days, (3) include a valid physical postal address in every email.
Penalties run to five figures per email in theory. The postal address is the rule
solo operators most want to skip, because it means printing your address (or paying
for a virtual mailbox, ~$10 to 30/month) in every cold email. Skipping it is a real,
quantifiable legal risk that some operators knowingly accept and others solve with a
virtual address. Decide which you are; do not just forget the requirement exists.
The opt-out line is not negotiable under any reading, and honoring replies that say
"stop" is both the law and basic hygiene.

**Germany (UWG) and much of the EU.** Germany's UWG requires prior express consent
for commercial email, including B2B. There is no cold-email carve-out; first contact
by email without consent is already a violation, enforced via competitor and
consumer-association cease-and-desist letters with real costs attached. Austria is
similar. If your prospect list includes German companies, the defensible move is to
remove them from email sequences and use LinkedIn or warm intros instead. GDPR also
applies to processing prospects' personal data across the EU (legitimate-interest
balancing, right to erasure on request).

**Practical minimum bar, wherever you are:** clean opt-out in every email, honor
every "no" permanently in your state file, verified emails only (bounce rate is both
a deliverability and a reputational signal), no deceptive subjects, and a real
website behind the sending domain. Beyond that: know the postal-address rule and the
Germany rule, and make an explicit call.

## 9. Build order (checklist)

1. Buy 3 to 5 lookalike domains
2. Add SPF (-all), DKIM, DMARC (p=reject), MX per domain; verify PASS/PASS/PASS via
   Gmail "Show original"
3. 301-redirect every lookalike root to the real site
4. Create 1 to 2 mailboxes per domain on the sending platform; start warmup
5. While warming (2+ weeks): build the target list, run scout searches, judge picks,
   reveal verified emails for picks only
6. Write the sequence; render every email to drafts; review by hand
7. Wire the interlocks: live sends refuse before warmup-ready date; daily cap 10 to
   15 per mailbox; reply flag stops sequences
8. Go live at ~5/day per mailbox, ramp to 10 to 15
9. Poll the unified inbox every 15 minutes, allowlist-filtered, notify on replies
10. Reply same-hour, from the owning mailbox, and move the CRM stage

Total cost to stand this up: roughly $30 to 50 in domains, $30 to 100/month for the
sending platform, and whatever the contact database's credit plan costs at your
volume. The system pays for itself with the first booked placement.
