Email · 18 min

Email Deliverability System

Everything you need to keep inbox rates above 95%.

Deliverability isn't a project. It's a hygiene practice.

tl;dr
  • Default to 3 domains, 2 inboxes each, and 1 warm-up lane; anything else is noise.
  • Clay + Common Room catch bad intent before send 1; list quality beats copy every time.
  • 11x or Lindy handles replies; humans only review edge cases and hard bounces.
  • PostHog + June measure inbox placement; if you cannot see it, you are guessing.
  • Framer + Relume fixes the website layer; broken trust signals burn deliverability fast.
Action plan
Action plan0/3 · 0%
Progress saved locally. Sign in to sync
Week one
  1. 01Day 1: Create 3 sending domains and 2 inboxes each, then wire SPF, DKIM, and DMARC with a hard DNS checklist.
  2. 02Day 2: Build 1 suppression and fit-scoring table and sync it into the CRM.
  3. 03Day 3: Set up dashboards for sends, bounces, complaints, and reply rates.
  4. 04Day 4: Draft 3 email variants and validate every factual claim against warehouse data.
  5. 05Day 5: Wire reply triage and booking, with escalation rules for pricing and security.
  6. 06Day 6: Launch 1 test batch at 50 sends/inbox/day and watch placement for 24 hours.
  7. 07Day 7: Kill any weak domain and lock the winning list source, cadence, and suppression rules.

Build the sending stack like production infra

Use 3 domains, 2 inboxes per domain, and 1 clear role per inbox: prospecting, follow-up, or replies. Attio is the system of record; Clay is the filter before send. n8n should push hygiene checks into every list build, while PostHog logs every send, bounce, and reply path. 11x or Lindy should own reply triage so humans do not touch routine responses. The rule in 2026: if a domain cannot absorb 150 sends/day without complaint spikes, it is not ready for scale.

  1. 01

    Segment sending roles

    Create 1 domain for outbound, 1 for follow-up, and 1 for replies or customer comms. Keep each inbox at 50-75 sends/day until PostHog shows stable placement.

    Use Attio tags like 'cold-prospecting-2026' and route through n8n to the right inbox.
  2. 02

    Automate mailbox checks

    Run Clay enrichment on every prospect, then verify DNS and mailbox health with an n8n workflow before any sequence starts. Reject bad domains immediately.

    Clay pulls company data, then n8n flags missing SPF or DMARC with the prompt snippet 'block if auth incomplete'.
  3. 03

    Delegate replies to agents

    Use 11x or Lindy for first-response triage, escalation, and scheduling. Humans only step in for pricing, security, or legal objections.

    Prompt 11x: 'Classify reply intent, draft 1-line answer, escalate if intent=procurement'.
IfThen
one inbox crosses 0.8% hard bounces in 7 dayspause that inbox, rotate traffic to a clean domain, and re-run Clay suppression on the list.
reply volume exceeds 15/day per repmove triage to Lindy or 11x and cap human handling at pricing and legal only.

Win before send 1 with brutal list hygiene

Clay is the front door, Common Room is the intent layer, and Apollo AI is the fallback for firmographic gaps. Every contact needs role fit, recent intent, and suppression history before it can hit a sequence. Keyplay should score accounts that match your ICP, then n8n routes only the top tier into outbound. The 2026 rule is simple: 80% of deliverability failures come from bad targeting, not bad infrastructure. If the account is not a fit, do not test the domain on it.

  1. 01

    Enrich and score

    Use Clay to enrich contacts, Common Room to detect active product signals, and Keyplay to score account fit. Reject weak matches automatically.

    Prompt in Clay Chat: 'Score only accounts with 2+ signals and title relevance above 0.7'.
  2. 02

    Suppress aggressively

    Keep a single suppression table in Attio and sync it through n8n before each send. Remove bounced, unsubscribed, and low-engagement contacts instantly.

    n8n rule: 'if last_reply = negative OR bounce_count >= 1, suppress forever'.
  3. 03

    Preflight the list

    Run a final validation pass with Apollo AI or Clay Chat to catch role drift, obsolete domains, and duplicate records before launch.

    Clay Chat prompt: 'Find duplicates, free mailboxes, and accounts with no ICP fit; return CSV'.
IfThen
list quality drops below 70% ICP matchstop sending and rebuild the sourcing logic in Clay before touching subject lines.
duplicate rate is above 2%dedupe in Attio first and block re-entry with an n8n suppression gate.

Use 1 agent for replies and 1 model for copy

Do not let humans hand-write every variant. Use Claude 4.5 Sonnet or GPT-5.4 for copy generation, then route drafts through Cursor or Claude Code to check claims against your RevOps SQL. Relevance AI can generate follow-up branches based on reply intent, while 11x manages live responses and meeting booking. Framer + Relume should support every offer page so send-to-site trust is consistent. The 2026 standard is 4 touches over 12 days, with 1 value message, 1 proof message, 1 objection message, and 1 exit message.

  1. 01

    Generate copy variants

    Use GPT-5.4 or Claude 4.5 Sonnet to draft 3 subject lines and 3 body variants per ICP segment. Keep each variant tied to a single pain point.

    Prompt: 'Write 3 emails for RevOps leaders, each under 90 words, with 1 CTA and no hype'.
  2. 02

    Validate claims in SQL

    Use Cursor or Claude Code against RevOps SQL to verify every metric, customer reference, and offer condition before launch.

    Cursor query: 'select count(*) from meetings where source = email and date >= now()-30d;'.
  3. 03

    Automate follow-up branches

    Use Relevance AI or Lindy to branch replies into interested, not now, objection, or unsubscribe, then map each to a sequence path.

    Relevance AI prompt: 'If reply mentions timing, draft a 2-line re-engagement note for 30 days later'.
IfThen
a subject line tests below 18% open rate after 500 sendskill it and replace the angle, not the punctuation.
a body variant increases complaint rate by 0.03%remove the claim and re-check it in Cursor or Claude Code immediately.

Treat deliverability as a control loop

PostHog and June should show placement, replies, unsubscribes, and bounce anomalies in 1 dashboard. Use MCP servers to pull mailbox health, DNS status, and suppression counts into a single operating view. When the system drifts, n8n triggers alerts and Attio halts campaigns automatically. The hard rule in 2026: recovery starts before reputation collapses, not after. If complaint rate rises twice in 24 hours, stop sending, inspect the domain, and only resume after 48 clean hours. No dashboard, no scale, no excuses.

  1. 01

    Centralise telemetry

    Pipe send logs, reply states, and bounce reasons into PostHog, then summarise performance in June for weekly review.

    PostHog event: 'email_bounce_hard' with properties domain, inbox, and list_source.
  2. 02

    Add automated alerts

    Use n8n or Trigger.dev to alert on complaint spikes, auth failures, and sudden engagement drops. Alert to Slack only when thresholds are breached.

    Trigger.dev rule: 'if spam_complaints > 0.08% in 24h, notify #revops'.
  3. 03

    Lock governance

    Store sending rules in Attio and mirror them in an MCP server so every agent and operator uses the same suppression logic.

    MCP prompt: 'Return eligible contacts only if consent=true and bounce_count=0'.
IfThen
domain reputation drops for 2 consecutive daysfreeze sends for 48 hours and move volume to the cleanest inbox pair.
a new source adds more than 1% hard bouncesban that source until Clay enrichment and validation are fixed.
Pitfalls

What goes wrong

Mistake

Sending from 1 domain at 500/day because the team wants speed

Fix

Split into 3 domains, cap at 50-75/day per inbox, and let n8n enforce the limit.

Mistake

Using broad Apollo exports without Clay enrichment

Fix

Enrich in Clay first, score in Keyplay, and suppress every weak-fit contact in Attio.

Mistake

Letting humans triage every reply

Fix

Move first-pass handling to 11x or Lindy and reserve humans for high-value exceptions.

Mistake

Treating deliverability as a copywriting problem

Fix

Fix domain health, list quality, and consent fields before testing subject lines.

Mistake

Shipping without telemetry

Fix

Instrument PostHog, June, and n8n alerts before the first campaign goes live.

FAQ
How many domains do I need in 2026?

Use 3 domains as the default, with 2 inboxes per domain and 50-75 sends per inbox per day. Anything larger before proof is vanity. If one domain starts degrading, shift traffic fast and keep the other 2 clean.

Is warm-up still necessary?

Yes, but only as a 14-day calibration step, not a strategy. Warm-up without list quality is dead. Use Clay, Attio, and n8n to validate the audience first, then warm each inbox with real operational volume, not fake traffic.

What is the fastest way to improve inbox placement?

Fix list quality before changing copy. Clay enrichment, Common Room intent, and Keyplay scoring remove more risk than any subject-line test. Then use PostHog and June to confirm the lift and keep 1 suppression table in Attio.

Should humans reply to every response?

No. 11x or Lindy should handle first-pass routing, meeting booking, and routine objections. Humans should only touch pricing, security, legal, and strategic accounts. That rule saves time and keeps response speed under 5 minutes.

What breaks deliverability most often?

Bad targeting and silent list drift break it first. The second failure is missing telemetry. If you cannot see bounce spikes in PostHog or stop sends in n8n, you are operating blind and the domains will decay within 2-3 campaigns.

Get one system like this in your inbox each week

No fluff, no upsell. Unsubscribe anytime.