Research-backed outreach with Claude: the workflow behind 15 demos a week and 40 qualified opportunities a month
The same system carried my number twice: as a rep selling investor-management software to real estate sponsors, and later running an agency that sourced investors for private funds. About 15 booked demos a week, about 40 qualified opportunities a month, 160% of quota. The system was never the sending. It was knowing why this person, this month, and saying that first. Here is how I run it now, with Claude doing the reading and SimpleSend doing the research, and how the drafts go out: as a SimpleSend sequence from your own warmed mailboxes, or through Smartlead, Instantly or HubSpot.
✍️ Ethan Choi, founder of SimpleSend·⏱️ ~16 min read·📋 9 prompts to paste·📎 14 sources
The five-line version
The result, and what it was. About 15 demos booked a week, about 40 qualified opportunities a month, 160% of quota. A demo is a calendar hold. A qualified opportunity is a buyer with the problem, a budget and a next step. The system produced the second kind, because every email opened with a reason that was true of that one reader.
The reason is the whole game. A verifiable, recent event that lands on the reader's seat. Six of them the research finds on its own. The best one you learn from your own replies; mine was naming the investor portal a sponsor already ran.
Who does what. SimpleSend reads: one dossier per company, cached 30 days, every fact with a source id. Claude writes, on your Claude plan, for zero draft credits. A verifier refuses any specific it cannot trace to a source. You decide what is worth saying.
One prompt runs the campaign. Sending is the other half. Claude builds a SimpleSend sequence and launches it from your own warmed mailboxes on your go, or the drafts go out through the sender you already run: CSV into Smartlead or Instantly, merge fields into HubSpot sequences, or Claude enrolling them itself when your sequencer is connected too.
Replies become opportunities through three doors. The same research is email one, the call block with a talk track, and the LinkedIn note.
Rather run it than read it? Start the trial, connect Claude, paste the campaign prompt. Or draft one real prospect right now, no account.
14-day free trial · No credit card needed · Plans from $50/mo
I have run outbound from two seats. First as a rep, selling enterprise investor-management software to private real estate sponsors, a market where a generic email dies on contact. Then as an agency owner, sourcing high-net-worth investors for private commercial real estate funds, where the list was small and every name on it mattered. The same system carried the number both times, and it is the system this page is about.
The numbers, so we are talking about the same thing. As a rep I booked about 15 demos a week. Around 40 a month became qualified opportunities: a buyer with the problem, a budget and a next step on the calendar, not a hold that no-shows. That ran the year at about 160% of quota. I am not promising you those numbers. It was one niche, one product, and a rep who refused to send a template. What transfers is the system, and the system is small.
🧭
The whole system in one sentence. Know why this person, this month, and say that first. Everything else on this page is plumbing for that sentence.
Every opportunity came through one of three doors, and all three were fed by the same four minutes of reading per person:
📧
Email one
The signal, the bridge, one useful thing. No ask.
☎️
The call block
The same signal as the opener, the day after email one lands.
💼
The LinkedIn note
Under 300 characters, the same reason, no pitch.
That reading was the part I could not scale by hand. Twenty researched emails a day or two hundred generic ones, never both. It is the part SimpleSend does now, and Claude writes off what it finds. The email half has numbers you can check: eight campaigns on my own accounts, 950 leads, 3.6% of leads replied, the best campaign at 8.6%, counted per lead against the public benchmarks on the playbook page.[14] This page is what to do with that.
The reading step, on one of your prospects
Type a name and a company and read what the research finds before you decide whether any of this is worth your time.
🧭The reason to email, and the signal only you know
Intent-data vendors sell a score. A score tells you a company visited a category page. It does not tell you what to write. My definition is narrower and more useful: a real reason to email is a verifiable event, in the last 90 days, that changes what the reader's seat is worried about.
Verifiable means you can point at where you saw it.
Recent means the writing rules further down will not let you call anything older than 90 days recent, and neither should you.
Seat means it has to land on the person you are writing to, not on their company in general. A new CFO worries about a different break than a new VP Sales, and the same funding round is a different email to each.
Six of them the research finds on its own, with the play for each:
Signal
Where the dossier finds it
What it usually means
The play
Shelf life
The incumbent tool, visible on their site
dossier.tools_detected
They already bought the category. The question is whether it is holding.
Name the tool. Ask about the break it causes at their stage. Never trash it.
until they switch
A new leader in the buying seat
dossier.leadership_changes
New leaders evaluate the stack in their first quarter.
The fresh-start angle. Offer the comparison they would want to run anyway.
90 days
A raise, a close, an expansion
dossier.recent_news
A growth push. The manual workaround is about to stop holding.
Name the operational break that arrives with scale, and when it lands.
90 days
Open roles that imply the break
dossier.hiring_signals
They are staffing a problem.
Reference the role. Pitch ramp time or productivity. If the roles do not fit, skip it.
60 days
Their own post about the pain
person.activity
They are broadcasting the problem.
Reference the idea, not the post. Give the one thing that helps.
30 days
New in role
person.tenure
First-quarter priorities, no history with the incumbent.
Open on the role with one pointed question. Keep it under 70 words.
90 days
The ids in the second column are the source ids SimpleSend's dossier hands Claude, and the ids Claude has to cite for every specific it writes. The loop section shows what happens when it cannot.
The signal only you know
The ladder is where everyone starts. The signal that actually moved my reply rate was not on it. Selling investor-management software, the finding that worked was the investor portal a sponsor already ran. Their LP login page named it. So my opener named it back, and asked about the thing that portal is known to break at their size: K-1 season, distribution notices, the LP who cannot log in. Replies went up because the email proved, in one sentence, that I had looked and that I knew their world.
Nobody had put "incumbent portal" on a signal list. It came from reading fifty replies and noticing what the yeses had in common. Every market has one of these. For a recruiter it is the req that has been open too long. For a fractional CMO it is the Series A with no marketing leader named. For an agency it is the demand-gen role posted next to a funding announcement. You find yours the same way I did: read your last twenty replies, note what each opener named, and write the winner down as a research target. The research targets section shows how. From then on it runs on every company, every time, and gets cited like any other fact.
🧪
The test. Would this event make a good first sentence? "Saw the Series A news, congrats" passes. "You sell robots to 3PLs" fails. They know what they sell. If the best you have is what they sell, you do not have a reason yet. You have a list.
Where an email that opens with what they already sell ends up.
Do
Pick two signals from the ladder that fit your segment, then add the one you learned from your own replies. Write each as an if/then play.
Expect
On the playbook page, the same brief aimed at the seat that owns the problem replied at six times the rate. Your own signal is that lever, one person at a time.
⚙️Who does what, and how to connect once
This runs over MCP, the open standard Claude uses to call tools.[10] SimpleSend is a connector: Claude calls it the way it would call a calendar or a CRM, from claude.ai, Claude Desktop or Claude Code.[7] No tab-hopping. No CSV round trips until the export you actually want.
Who
Does
Costs
You
The segment, the signals, the brief, the offer, and the judgment on every draft you send.
Your time, mostly up front, once.
SimpleSend
The list. One dossier per company: site, news, funding, hiring, leadership changes, detected tools, answers to your targets. The person card. The verifier. The export. Email sending from your own warmed mailboxes. LinkedIn sending. Talk tracks.
Research credits: 5 per target per company, cached 30 days. No draft credits when Claude writes. Sending uses no credits.
Claude
Reads the dossier and the rules, writes every step, fixes what gets flagged, runs the whole loop from one prompt, and hands the drafts to your sequencer when it is connected too, or builds, pre-flights and launches a SimpleSend sequence on your go.
Your Claude plan.
💸
The only money rule. Drafting in Claude uses your Claude plan and charges no SimpleSend draft credits. Research still uses credits: 5 per research target per company, once per 30 days.
🧭
What stays human. Which hundred people. Which three signals. What you are giving in email one. The decision to cut a draft that is technically accurate and tonally wrong. The machine reads at a scale I cannot and writes a first draft off what it found. It does not decide what is worth saying.
Connect once
About five minutes, and you do it once. You need a SimpleSend account (the 14-day trial works: no card, 375 credits; it covers research and drafting, while sending, Find Leads and LinkedIn need a paid plan) and any Claude plan. SimpleSend is in Claude’s connector directory, and directory connectors work on every plan, including Free; on Team and Enterprise, an Owner adds SimpleSend under Organization settings → Connectors and members then click Connect.[8] Claude Code works with any plan that runs Claude Code, with a personal key from Profile → Claude → ⋯ → Get a key.[9] The short version, with a one-click Connect, is on the Claude integration page.
1
Open SimpleSend in Claude's connector directory, or in claude.ai or Claude Desktop open Customize → Connectors, click + and search for SimpleSend.
2
Click Connect. You'll land on SimpleSend to sign in (or start your free trial) and approve the connection, then return to Claude.
3
On a Team or Enterprise plan, an Owner adds SimpleSend first: Organization settings → Connectors → Browse connectors → Add to your team.
4
Works on every Claude plan, including Free. Drafting uses your Claude plan; research uses SimpleSend credits.
Approving the connection happens on SimpleSend, on a screen that says what a connection can do:
Read your lead lists, campaigns, drafts, sequences, and LinkedIn campaigns and conversations
Create lists and campaigns, research companies and start SimpleSend drafting (both use your SimpleSend credits)
Find and enrich leads (spends credits)
Save the drafts Claude writes, and export campaigns
Create sequences, enroll your lead lists, and launch sequences that send email from your mailboxes (after you confirm each launch)
Create, launch and reply in LinkedIn campaigns from your connected LinkedIn account (you confirm each launch)
It cannot see your billing details, change your plan, buy domains or mailboxes, or read your HubSpot or LinkedIn credentials. Then type: "what lead lists do I have in SimpleSend?". If Claude answers, you are connected. Every tool and its cost is on the docs page.[11]
🔒
What leaves your account. Only the arguments of the tools Claude calls, and back come your own lists, campaigns, drafts and research, your sequences, and your LinkedIn campaigns and conversations. Tool calls are logged for 90 days without their arguments. The connector never forwards a Claude token anywhere. Security and administration.[12]
🎯Build the hundred
Move 1 on the playbook page is the whole of this step: one persona, one nameable operational break, a hundred people or fewer, and one sentence that is true of everyone on the list and false of everyone off it. Write that sentence first. It becomes the bridge in email one and the filter for everything else.
Four ways the list gets to SimpleSend, cheapest first:
1
📋Paste it into Claude
Names, titles, companies, emails, LinkedIn URLs. Claude creates the list (up to 500 contacts) and it costs nothing, because the data is already yours.
2
📄Upload a CSV in the web app
Any extra column you already have (a note, a trigger, a mutual contact) becomes a fact Claude can cite, at 1 credit per contact for a notes column and nothing for a link, a plain value or inserted text.
3
🔗Import a HubSpot list
Read-only OAuth from Profile. The list lands in the wizard deduplicated across your team, so two reps never draft the same person. The full flow is in the Send it section, and on the HubSpot page.
4
🔍Search for them from Claude
By title, seniority, function, industry, location or company, on any paid plan: 2 credits per new person shown, billed once ever, then 10 credits per work email and 100 per phone number actually found. Claude shows the estimate and asks before anything is billed. Find Leads.
One thing the list tells you before you draft: how many contacts have an email. Below about 80%, enrich or cut. And if enrichment found someone's email at a different company, the campaign leaves them out by default and says so. Resolve the flag or include them on purpose.
Do
One persona, one break, 100 people or fewer, 80% or more with an email, segment sentence written.
Expect
Claude reports the counts when it reads the list. A list that fails the segment test is two lists, and the fix is to split it, not to write a vaguer email.
🔎Turn signals into research targets
A research target is a signal written as an instruction. It has two parts: a topic, what to find and where it tends to show up, and an angle, how a finding should change the email. The angle is where the judgment lives. "Company growth signals, use it to personalize" is not a target. "Open SDR or AE roles posted in the last 60 days; if they are hiring reps, name the role and lead with ramp time; if the postings are engineering-only, skip this" is.
SimpleSend tries a few sources per target and stops at the first solid, well-sourced finding. Findings are scarce on purpose. Two or three well-chosen targets beat five vague ones, and they cost less: planning is 5 credits per target once per campaign, research is 5 credits per target per company, cached for 30 days and shared by everyone at the same company. A target a web search cannot answer is neither searched nor billed.
Encode the one you learned
Mine, as a target. Topic: which investor portal they run, from their investor login page or their careers page. Angle: if one is named, name it and ask about its known break at their LP count; if none is found, skip this finding and open on the role. That is the whole trick. A signal that took me fifty replies to notice becomes one line that runs on every company in the list, and the verifier makes Claude cite the page it found it on.
Two more places your own knowledge gets in. A CSV column of notes from past calls becomes a fact Claude can cite about that person. And a saved brief template carries your targets into every future campaign, so the learning compounds instead of living in one rep's head.
The signal set, as research targets
SIGNALS AS RESEARCH TARGETS (topic, then the angle). Pick two or three.
1. The incumbent tool
topic: which [CATEGORY] vendor or tool they use, from their website,
careers page or job posts
angle: if a vendor is named, name it and ask about the break it causes
at their stage; if none is found, skip this finding entirely.
2. A new leader in the buying seat
topic: a new [TITLE, e.g. CFO / VP Sales / Head of RevOps] hired or
promoted in the last 90 days
angle: if found, open on the appointment and offer the comparison a new
leader runs in their first quarter; if the hire is in another
function, skip it.
3. A raise, a close, an expansion
topic: funding, a fund close, an acquisition or a new office announced
in the last 90 days
angle: if found, name the event and the operational break that arrives
with that scale, and when it usually lands; older than 90 days,
past tense and no "recently".
4. Open roles that imply the break
topic: open [ROLE] roles posted in the last 60 days
angle: if they are hiring [ROLE], reference the role and lead with
[RAMP TIME / PRODUCTIVITY / COVERAGE]; if the postings are
[OTHER FUNCTION] only, skip this finding.
5. Their own words
topic: a LinkedIn post or interview by [FIRST NAME] in the last 30 days
about [PAIN]
angle: if found, reference the idea (not the post) and give the one
thing that helps; never quote them back to themselves.
Find the signal only you know
Below are the last [N] cold email replies I got, each with the first
email that earned it. Find the signal that is doing the work.
For each reply, name the one thing the opening sentence referenced about
the recipient (a tool they run, a hire, a raise, an open role, something
they posted, a stage they are at). Group the replies by that thing and
rank the groups by how often they replied compared to the emails that
did not.
Then write the top three as SimpleSend research targets, each with a
topic (what to look for and where on the web it shows up) and an angle
as an if/then play: if found, how the opener should use it; if not,
whether to skip it or fall back to a role-based opener. Tell me which of
them are ordinary signals (news, hiring, leadership, funding, their own
posts) and which are specific to my market, because the specific ones
are the ones worth saving in my brief template.
Replies:
[paste them here]
💸
The free path, honestly. Claude can research a company with its own web search and SimpleSend charges nothing. But the verifier only accepts a specific it can trace to the dossier, the person card or your own brief, so anything Claude found on its own has to be written as a generalization or it comes back flagged. Free research buys you role-based openers. The signal opener needs the dossier.
Do
Two or three targets, each a topic and an if/then angle, one of them yours.
Expect
A 100-contact list at three targets researches for at most about 1,500 credits, fewer when contacts share a company. At one target, about 500. The calculator further down does this for your list.
🧾The brief, once
The brief is the same shape as the playbook's, mapped onto the fields the connector takes. What I sell, in my words. Who I sell to. Value propositions one per line, because the drafter rotates them across steps and the first one runs in email one. The tone word, which two or three pasted emails I actually sent will override, and should. The ask as a short verb phrase with a link, because the sentence that carries it becomes the link. Length short, which is 60 to 110 words unless my samples say otherwise. My signature.
Then the sequence: four steps, twelve days, and email one's CTA set to none. That is how "no ask in email one" stops being advice and becomes a setting. Gong's 304,174 cold emails found an interest close, asking whether the problem is worth a conversation, booked meetings at twice the rate of a calendar ask.[4]
Email one. The gift, no ask attached.
The brief, in the connector's fields
THE BRIEF FOR CLAUDE + SIMPLESEND (one per segment)
description What I sell, one concrete paragraph, in my own words. Name
the operational break it removes and for whom. No adjectives
that could describe a competitor.
icp The seat, the company type, the stage. One line.
value_props Three lines, one outcome each, specific enough to argue in
a sentence. The first one runs in email one. Any number here
must be one I can defend; it is the only number Claude may
attribute to me.
tone One word: casual / direct / warm. The samples override it.
cta A short verb phrase that reads as a link:
"grab the checklist", "see a sample", "book 15 minutes".
cta_link Where that phrase points. Ungated if the phrase promises a gift.
length short (60 to 110 words). Samples set it instead when pasted.
samples Two or three emails I actually sent. Rhythm, vocabulary,
contractions and directness are matched; sentences are not
copied.
signature Name / title / company, substituted for [Your name] at export.
sequence intro (day 0, CTA none), value (+3 days), followup
(+4 days), breakup (+5 days, no CTA)
research Two or three targets from the signal set.
save_as_template: true
Save it as a template the first time (one flag on the campaign) and the next campaign is one line: "use my saved brief". An agency keeps one per client.
Do
Paste three real sent emails as samples, set the CTA as a verb phrase with a link, set step one's CTA to none, save the brief as a template.
Expect
The samples win over the tone word and set the length. Every later campaign starts from the template with nothing retyped.
✍️One prompt, the whole campaign
Everything above is preparation. This is the part that used to take 58 hours. You paste one prompt, and Claude does the rest:
1
📇Reads the budget and the list
Your plan and credits left, how many contacts have an email, how many are flagged as a possible job change. If the campaign will not fit, it says so and stops.
2
🧾Creates the campaign and plans the research
The brief, the four-step sequence and your research targets, saved as a template for next time. Planning costs 5 credits per target, once per campaign.
3
🔎Pulls 3 to 5 contacts at a time
For each one, a company dossier (site, news, funding, hiring, leadership changes, detected tools, answers to your targets; 5 credits per target per company, cached 30 days), a person card, and the writing rules.
4
✍️Writes and saves every step
A subject, two to four short paragraphs, the sentence that carries the ask, and a claims list with a source id for every specific. Saves up to 10 contacts at once. Zero draft credits.
5
✅Fixes what the verifier flags, then goes again
Every flagged sentence comes back with the reason; Claude cites it, hedges it or cuts it and resaves. When nothing is left, it shows you the two sequences it is least sure about and waits for you before anything is exported or sent.
The one-prompt campaign
Draft a research-backed cold email campaign in SimpleSend for my lead list
"[LIST NAME]". Work through this in order and stop where I say stop.
Before anything else
1. get_account. Tell me my plan and credits left. Research costs 5 credits
per target per company (cached 30 days) plus 5 per target to plan the
campaign. If the list below will not fit, say so and stop.
2. list_lead_lists, then get_lead_list for "[LIST NAME]". Tell me how many
contacts have an email and how many are flagged as a possible job change.
If fewer than 80% have an email, stop and tell me.
The segment (true of everyone on this list, false of everyone off it)
[ONE SENTENCE]
Research targets (topic, then the angle as an if/then play)
1. [topic]. If found: [angle]. If not: [skip / fallback].
2. [topic]. If found: [angle]. If not: [skip / fallback].
3. [topic]. If found: [angle]. If not: [skip / fallback].
The brief
- description: [what I sell, one concrete paragraph, in my words]
- icp: [who I sell to]
- value_props (one per line):
[value prop 1]
[value prop 2]
[value prop 3]
- tone: [casual / direct / warm]
- cta: "[verb phrase, e.g. grab the checklist]" cta_link: [https://...]
- length: short
- samples: [paste 2 or 3 emails I actually sent]
- signature:
[name]
[title, company]
The sequence (four steps, twelve days)
- step 1, intro, day 0, cta mode "none": the signal, the bridge, one thing
that is only useful to them, an interest close. No ask.
- step 2, value, 3 days later, inherit the CTA: a second signal, one insight.
- step 3, followup, 4 days later, inherit the CTA: one customer like them,
one number from my brief, then a soft ask.
- step 4, breakup, 5 days later, no CTA: one line, door open.
Save the brief and sequence as a template named "[TEMPLATE NAME]".
Then
3. create_campaign named "[CAMPAIGN NAME]" on that list with the brief, the
sequence and the targets. If research_planning is "incomplete", call
plan_research. Show me the planning credits, the per-company research
cost and my remaining credits, then continue without asking.
4. The loop: get_drafting_context five contacts at a time (pass
include_rules: false after the first call). For each contact write every
step as JSON that follows writing_rules and output_schema exactly. Every
sentence that states a specific about the recipient goes in claims with
its source id; if you cannot cite it, say the general thing or cut it.
Open on the signal, never on what their company sells. save_drafts, fix
every step that comes back with unresolved sentences and resave it, and
repeat until remaining_contacts is 0. Tell me when a contact is deferred
and call again for it.
5. When it is done, show me the two sequences you are least sure about, in
full, and say why. Then stop and wait for me before exporting or building
the sequence.
🖼️Screenshot: Claude running the loopplaceholder
📸 One batch: three contacts read, three sequences written, saved and verified.
The rules Claude is handed
The connector gives Claude a writing rulebook with every batch. These are the ones that are the method:
The opener is one sentence, at most 22 words, naming one concrete thing about them. "Saw the Series A news, congrats" is an opener. "You're selling robots to 3PLs" is not. An opener that could go to a different company unchanged is a failure.
Never tell the recipient what their company sells or who it sells to.
Cite or hedge. A sentence with a specific in it (an event, a number, a date, a vendor, a hire) has to carry the source id it came from. No source, no specific.
Nothing older than 90 days is "just" or "recently".
No dated fact and no research answer: open on the person's role with a pointed question, and keep the whole email under 70 words.
Each step opens on a different fact and argues a different value prop. Follow-ups never "circle back". The breakup has no pitch and no CTA.
What the verifier does when a sentence breaks them
⚠️ What Claude wrote first
Subject: your Fund III portal
Congrats on closing $40M on Fund III last month.
Going from 60 LPs to 200 is where the manual K-1 workaround stops holding.
↳ verifier: uncited_specific ("$40M", "Fund III") · no claim carries a source
✅ Fix one: cite it
Subject: your Fund III portal
Congrats on closing $40M on Fund III last month.
↳ claims: [{ text: "…$40M on Fund III…", source: "dossier.recent_news[0]" }] · accepted
✅ Fix two: when the dossier has no such fact
Subject: the K-1 window
Sponsors at your stage usually hit the K-1 window first, the March after the raise.
↳ a generalization, no specific about them · accepted
Three reasons come back: bad_source_id, claim_without_source and uncited_specific. A resave replaces the step. You never argue with it. You cite, hedge or cut.
A made-up number, meeting the verifier.
🖼️Screenshot: one flagged sentence and the resaveplaceholder
📸 The verifier sends a sentence back with the reason. Claude fixes it and resaves.
🎬Recording coming: One prompt, twenty-five researched sequencesplaceholder
▶ The drafting loop, start to export
Speed and limits: paid plans get 180 tool calls per five minutes, 3,000 a day, and 200 uncached companies a day, so a hundred-contact campaign fits in one sitting. Your part is reading, not typing.
Do
Paste the one-prompt campaign, then read what comes back: every flagged sentence and the two sequences Claude is least sure of.
Expect
remaining_contacts reaches 0 with every unresolved list empty. If a step keeps getting flagged, the dossier has no fact for it. Hedge or cut. Do not argue with the verifier.
Run the loop on your list
Upload a list, connect Claude, paste the prompt, read what comes back.
14-day free trial · No credit card needed · Plans from $50/mo
📤Send it: from SimpleSend, or via Smartlead, Instantly, HubSpot
Two paths, and nothing goes out until you launch it. Send from SimpleSend, from warmed mailboxes on domains registered in your name, with schedules, daily caps, one reply inbox and unsubscribes handled. Or hand the drafts to the sender you already run: Smartlead or Instantly by CSV or by Claude, HubSpot by merge fields. None of them involves pasting. Either way, read two full sequences yourself first, including one you would have written differently, and have Claude run the QA pass.
The QA pass
Review the drafts in campaign "[CAMPAIGN NAME]" against my rules before I
send or export. Use list_campaign_contacts, then get_drafts. For every
contact and step, check:
1. Step 1 makes no ask. "Worth a chat?" counts as an ask. Flag it.
2. Every step is under 120 words and argues one idea.
3. The opener names one verifiable, dated thing about them, not what their
company sells and not a compliment.
4. Each follow-up carries a new signal; nothing "circles back" or "bumps".
5. Every specific claim has a source; list them. Anything the dossier
cannot back gets hedged or cut.
Give me one table: contact, step, problem, proposed fix. Then apply the fixes
with save_drafts (a resave replaces the step) and tell me exactly what
changed. Stop before exporting or building the sequence.
From SimpleSend, by Claude
Sending is included on Pro and Teams; on Individual it is the Email Sending add-on ($49.99/mo). Domains and mailboxes are bought in the web app, never from Claude: lookalike domains registered in your name, with SPF, DKIM and DMARC published for you, and Google or Microsoft mailboxes that warm up on their own. Once a mailbox reads Ready, Claude can turn the drafted campaign into a sequence and launch it:
1
📮Check what can send
get_sending_status: which mailboxes are ready and which are still warming (about two weeks for Google, three for Microsoft), and whether your business mailing address is set. No ready mailbox or no address, and Claude stops there and tells you what to do in the web app.
2
🧱Build the sequence from the campaign
create_sequence with from_campaign_id: the campaign’s steps and delays become the sequence, and every contact keeps the wording drafted for them. A lead with no wording for a step is held until save_sequence_steps writes fallback wording for that step.
3
⚙️Pick the mailboxes and the window
update_sequence_settings: your ready mailboxes, the time zone and the send window. The defaults are weekdays 8am to 5pm in each mailbox’s time zone, 25 sends per mailbox a day and 4 to 9 minutes between sends.
4
👀Preview, then test
preview_sequence_step shows a step for one lead exactly as it will go out, with your signature, the opt-out line and your mailing address. send_sequence_test sends step 1 to your own address, and to no one else.
5
✅Run pre-flight
preflight_sequence: how many leads are ready, who is held and why, and when the first emails finish going out.
6
🚀Launch on your go
launch_sequence returns the summary first and launches only when you say go, at most 10 launches a day. A reply stops that person’s follow-ups and lands in the Sequences inbox; control_sequence pauses, resumes or stops it.
Send it from SimpleSend
Send the campaign "[CAMPAIGN NAME]" from my own mailboxes in SimpleSend.
Work through this in order, and stop before the launch until I say go.
1. get_sending_status. Tell me which mailboxes are ready and which are
still warming, and whether my business mailing address is set. If
sending is not on my plan, no mailbox is ready or the address is
missing, tell me what to do in the web app and stop.
2. list_campaigns, then create_sequence with from_campaign_id for
"[CAMPAIGN NAME]". Tell me how many steps and leads it has.
3. update_sequence_settings with my ready mailbox_ids, time zone
[TIME ZONE] and send window [8am to 5pm, weekdays].
4. preview_sequence_step for three leads, every step, exactly as they
will be sent.
5. send_sequence_test so step 1 lands in my own inbox, then wait until I
tell you it arrived and reads right.
6. preflight_sequence. List every held lead and why. If a lead is held
only because a step has no wording for them, propose fallback wording
for that step and save it with save_sequence_steps after I approve it.
7. launch_sequence without a confirmation, show me the summary (ready,
held, mailboxes, finish estimate, warnings) and stop. Launch only when
I say go.
🛡️
What every email carries. Your signature, an opt-out line, an unsubscribe link and your business mailing address. Unsubscribes, hard bounces and “please stop” replies are suppressed across your team, and a mailbox or sequence pauses itself when bounces spike.
Smartlead or Instantly, by CSV
1
📤Export the CSV
One row per contact: first name, last name, email, company, title, LinkedIn URL, the drafting status, then step_1_subject, step_1_body and step_1_qa for every step. Small campaigns come back inline, large ones as a one-hour download link.
2
🧹Keep the done rows
Filter the status column to done. A step without a saved draft exports empty on purpose, so a half-drafted contact cannot slip in as a blank email.
3
📥Upload as leads with custom fields
Map each step column to a custom field of the same name. Build the mapping once; the headers never change between campaigns.
4
🧩Make the templates the variables
Subject {{step_1_subject}}, body {{step_1_body}}, and so on per step. Both Smartlead and Instantly fill custom variables per lead, so every lead gets its own email and the template is only a shell.
5
📡Send from warmed domains
Secondary domains, 20 to 40 sends per mailbox per day, complaint rate under 0.10%. The step-by-step walkthrough is in from CSV to Smartlead, step by step.
The hand-off, by CSV
export_campaign "[CAMPAIGN NAME]" as json. Walk me through the handoff
block: which variable carries each step's subject and body, and the
confirmation rule. Confirm the field mapping with me before I enroll anyone.
Then list every contact whose status is not "done" so I can exclude them,
and give me the CSV version too, with links written as plain text. Then
tell me, column by column, what to map each step_N_subject and step_N_body
header to in my sequencer.
Smartlead or Instantly, by Claude
If your sequencer is connected to Claude as well (both publish APIs; a connector or an API key is all Claude needs), skip the CSV and ask for the JSON export. It comes back paged by contact, every step on every row so the shape never changes, with a hand-off block that names one variable per step (step_1_subject, step_1_body) and carries one instruction, verbatim:
🤝
Before enrolling these drafts in another tool (Smartlead, Instantly, HubSpot sequences), show the user the field mapping (which export field feeds which template variable) and get their explicit confirmation; per-lead copy must go into per-lead custom fields, not into a shared template body.
So Claude sets up the variables, fills them per contact, shows you the mapping and the first few leads, leaves out anyone not marked done, and enrolls on your go. The template in the sequencer stays a shell; every lead carries its own copy.
The hand-off, by Claude
My sequencer is connected to you as well. Enroll the campaign "[CAMPAIGN
NAME]" from SimpleSend into my [Smartlead / Instantly] campaign "[SEQUENCER
CAMPAIGN]" without me touching a CSV.
1. export_campaign "[CAMPAIGN NAME]" as json and read the handoff block.
2. In the sequencer, make sure a custom variable exists for every name the
handoff block lists (step_1_subject, step_1_body, and so on). Do not
change my sequence templates or my sending schedule; tell me if the
templates do not reference those variables yet and I will fix them.
3. Show me the mapping, then the first three contacts with their variables
filled in, exactly as they will be enrolled.
4. Leave out every contact whose SimpleSend status is not "done", and list
them so I know who is missing.
5. Enroll only when I say go, and tell me how many were added and how many
were skipped as duplicates.
🖼️Screenshot: the mapping, confirmed before anyone is enrolledplaceholder
📸 The mapping and the first three leads, filled in, before a single enrollment.
HubSpot, both directions
1
🔗Connect HubSpot from Profile
Read-only OAuth: lists and contacts, nothing else. It cannot write to your CRM, so nothing enters HubSpot that you did not map yourself.
2
📥Import any list into the wizard
The same column mapping and approval gate as a CSV, the first 500 contacts, deduplicated across your team.
3
✍️Draft it, in the web app or from Claude
The list shows up in your lead lists with its source marked HubSpot and drafts like any other, one prompt and the same loop.
4
🧩Export and map the merge fields
step_1_subject to sequence email 1's subject, step_1_body to its body, and so on. Enroll in a HubSpot sequence or workflow. Build the mapping once and reuse it. The HubSpot integration.
5
☎️Take the call from the record
The Chrome extension shows the talk track card beside the HubSpot contact the moment the record opens, so the call uses the same research as the email.
Whichever path the drafts take, the floor is the same. Send cold email from dedicated, authenticated domains, never your main one, and warm them first: SPF, DKIM and DMARC on every sending domain, twenty to forty sends per mailbox per day, complaint rate under 0.10%.[5][6] Send from SimpleSend and most of that floor is the default: the DNS records are published on domains registered in your name, warmup runs on its own, and each mailbox sends 25 a day unless you change it. It is Move 5 on the playbook page, and the sending infrastructure guide walks through the setup.
Do
Pick the path. From SimpleSend, launch once the test email and pre-flight look right. Through your own sender, confirm the mapping before anyone is enrolled and exclude anything not marked done. Either way, send from warmed domains.
Expect
Every lead gets its own email: in a SimpleSend sequence each contact keeps its drafted wording, and in a sequencer the template is only a shell. A wrong mapping or a missing fallback shows up on the first lead you preview, not silently on the two-hundredth.
☎️The other two doors
Email caps out. On the playbook page the best campaign got 8.6% of leads to reply, and the average across eight was 3.6%. The opportunities at the top of this page came from the same signals used three ways: as email one, as the call opener, and as the LinkedIn note. Same research, three doors.
The call block
Talk tracks are the same dossier turned into a card a rep glances at before dialing: why call now (the signal, dated), the hooks, a permission-based opener, discovery questions ordered easiest to deepest, talking points, the objections you actually hear with a spoken response for each, and the ask. They are drafted in the web app on the Talk Tracks channel (research plus one card per contact, 2 / 4 / 8 credits by model), and the Chrome extension shows the card inside HubSpot and Salesforce Lightning the moment a record opens, and in Zoho CRM, HighLevel and dialers like Nooks, Orum, Kixie and PhoneBurner once a rep turns them on. From Claude, before a call block, ask for the cards.
🖼️Screenshot: a talk track card inside HubSpotplaceholder
📸 The same research as the email, as a card the rep glances at before dialing.
The call block
Before my call block: list_campaigns with channel "talktrack" and find the
one for "[LIST NAME]". For the next 20 contacts, get_drafts and give me one
card each, four lines: why call now (the signal, with its date), the opener,
the first discovery question, and the objection I am most likely to hear
with the response. If there is no talk-track campaign for this list, say so;
I will draft one in the web app.
The LinkedIn layer
From Claude, two ways. Templated: a connection note under 300 characters with no link and no pitch, follow-ups after acceptance with merge tags, paced by SimpleSend (25 invites a day by default, 80 at most; quiet hours 22:00 to 07:00; three days between follow-ups; acceptance polled for 14 days). Drafted per person: SimpleSend writes the note and the messages from the same research (draft credits per step plus 2 credits of person research per contact), and you send when the previews look right. Either way Claude shows the preview and the pacing, nothing goes out until you say go, and sends spend LinkedIn actions (9,000 a month per seat, included with the add-on), not credits. It needs the LinkedIn Outreach add-on ($80/mo, on either plan) and your own LinkedIn account connected in the web app, where your sign-in goes to our LinkedIn automation partner (listed in our privacy policy). How LinkedIn outreach works.
The LinkedIn layer
Set up the LinkedIn layer for the same list. First get_linkedin_account: if
my seat is not connected or my plan does not include LinkedIn, tell me what
to do in the web app and stop.
Otherwise create_campaign with channel "linkedin" on "[LIST NAME]" using my
saved brief "[TEMPLATE NAME]" as template_id, with a two-step sequence: a
connect note (under 300 characters, no link, no pitch, the same signal as
email one where the research supports it) and one follow-up 3 days after
acceptance with the interest close. Tell me the credits it will cost per
contact, then start_drafting. When get_campaign reports it is done, show me
the notes for the first five people and the pacing you propose (25 invites
a day, quiet hours 22:00 to 07:00). Do not send anything until I say go.
Do
Run the call block off the talk track cards the day after email one lands. Send the LinkedIn note to everyone with a profile URL, paced.
Expect
Three touches that all cite the same reason, arriving on three channels within a week. That is what a prospect experiences as 'this person did their homework', and it is where my opportunities came from.
👥How each seat runs it
The workflow is the same in every seat. What changes is which parts you lean on, and what a week looks like.
🏢Agency owner
Your week
One saved brief per client, with that client's voice samples, signature and CTA. One list per client, imported from their HubSpot or built from a search, deduplicated across your team. The loop runs per client in its own campaign, and the export lands in each client's Smartlead or Instantly. The talk track cards go to the client's reps. Same headcount, more clients.
Lean on
Saved briefsHubSpot import with team dedupeThe JSON hand-offPer-client campaigns
Monday: build the hundred and run the loop while you do your call block. Tuesday to Thursday: calls off the talk track cards, and LinkedIn notes to everyone with a profile URL. Friday: read the replies and write down what the openers that worked had in common. Next Monday, that becomes a research target.
Lean on
The one-prompt campaignTalk tracks in the CRMThe LinkedIn layerThe find-your-signals prompt
📈Sales leader
Your week
One brief and one playbook for the team, so a new hire drafts like your senior rep on day one. Every step carries a QA verdict you can read before anything sends. The extension puts the card inside HubSpot or Salesforce for the dial block. Teams seats are $275 a month each with everything in Pro, sending included, 3 seats minimum; teammates who don't draft are free, and you can cap each person's monthly credits.
Lean on
Team playbooksSaved briefsQA verdicts per stepThe Chrome extension
An hour a week. Forty accounts you actually care about, one brief in your own voice, the loop, the export, and your name on every email. Start with the free demo on a prospect you know before you connect anything.
Two calculators, because the two questions I get are "what does a campaign cost me" and "how many people does forty opportunities take".
What one campaign costs
Planning
15
Research
1,500
Drafting in Claude
0
Total credits
1,515
Over the trial's 375 credits; cut targets or contacts, or start on a plan. Per month: Individual ($50) about 2 campaigns · Pro ($250) about 9 campaigns. A company researched in the last 30 days is not charged again, so a second campaign into the same accounts costs less than this.
Pipeline math, email only
Demos a month
1.7
Qualified opportunities
1.1
Leads for 40 opportunities
11,173
A demo is a calendar hold. An opportunity is a buyer with the problem, a budget and a next step; about two in three of my demos got there, which is the default above. Email alone needs a big list to reach forty. That is the whole argument for the other two doors: the call block and the LinkedIn note run on the same research and add their own on top.
Defaults: 3.6% replied per lead is the playbook's eight-campaign figure;[14] 15.3% and 29.6% of replies booked are Gong and 30MPC's comparison group and top decile across 85 million cold emails;[3] two in three demos qualifying is my own ratio, in my niche. Instantly's average reply rate is 3.43%, for scale.[1]
Plan
Price
Credits a month
What that is, when Claude drafts
14-day trial
$0, no card
375
About 75 companies at one target. Enough to run the loop once and judge it. Sending, Find Leads and LinkedIn need a paid plan.
Individual
$50/mo
4,000 credits
About 800 companies a month at one target. Email sending with the Email Sending add-on, $49.99/mo.
Pro
$250/mo
14,000 credits
About 2,800 companies a month at one target. Email sending included: 1 domain and 3 warmed mailboxes.
Teams
$275/seat/mo, 3 seats minimum
14,000 per seat, one shared pool
About 2,800 companies a month per seat at one target. Email sending included on every seat: 1 domain and 3 warmed mailboxes each.
📋Before you hit send
The prompts above only work as written with SimpleSend connected, because they name its tools. The segment test, the signal set, the brief and the QA rubric work in any tool; they just take 58 hours to fill by hand. This one is the last thing I run every time.
The pre-flight checklist
BEFORE YOU HIT SEND: A CLAUDE-DRAFTED CAMPAIGN
Connection
[ ] SimpleSend shows as connected in Claude (connector settings, or /mcp in
Claude Code)
[ ] get_account: enough credits for the list (5 per target per company,
plus 5 per target to plan)
List
[ ] One persona, one break, 100 people or fewer; the segment sentence is
written
[ ] 80% or more have an email; the rest enriched or cut
[ ] Job-change flags resolved, or included on purpose
Signals
[ ] Two or three research targets, each a topic and an if/then angle
[ ] Nothing older than 90 days will be called recent (the rules enforce it;
the angles assume it)
Brief
[ ] Two or three real sent emails pasted as samples; signature set
[ ] The CTA is a verb phrase with a link; step 1's CTA is "none"; step 4 is
a breakup with no CTA
[ ] Any number in the brief is one you can defend
Drafts
[ ] remaining_contacts is 0 and every unresolved list is empty
[ ] You read two full sequences yourself, including one you would have
written differently
[ ] Export shape matches your sequencer; the mapping was confirmed before
anyone was enrolled
[ ] Or, sending from SimpleSend: mailboxes ready, mailing address set,
test email received, pre-flight holds no one unexpected
Sending (the playbook page, Move 5)
[ ] SPF, DKIM and DMARC on every sending domain; warmed secondary domains;
20 to 40 sends per mailbox per day; complaint rate under 0.10%
(sending from SimpleSend, the DNS records, warmup and daily cap are set
for you)
🧯When it doesn't work
🧯Claude says it cannot see SimpleSend.
It is not connected yet. Open SimpleSend in Claude’s connector directory and click Connect, or check Customize → Connectors on claude.ai or Claude Desktop. Every Claude plan works, including Free, and on Team or Enterprise an Owner adds SimpleSend under Organization settings → Connectors before members can click Connect. In Claude Code, /mcp lists the servers; if SimpleSend is missing, run the add command again with your key.
🧯Claude says the sequence tools need approval.
Your connection was approved before Claude could launch email sequences. In SimpleSend, open Profile → Claude and approve the updated list. Connections approved before September 30, 2026 need this once; everything else keeps working meanwhile.
🧯Pre-flight holds leads.
It holds anyone it would be wrong to email: no email address; an invalid, role, catch-all or duplicate address, or a domain that takes no mail; a suppressed address; someone already live in a teammate’s sequence; a company that replied in the last 90 days; or a lead with no wording for a step (a per-lead step without fallback wording yet) or a merge tag with no value. Ask Claude to write the fallback, or leave those leads out. A missing business mailing address stops the whole launch instead: set it in Sequences → Settings. preflight_sequence lists who is held and why.
🧯My sequencer is not connected to Claude.
Send from SimpleSend instead, or use the CSV hand-off. The headers are stable (step_1_subject, step_1_body), so the mapping you build in Smartlead, Instantly or HubSpot once holds for every campaign after it.
🧯It says research planning is incomplete.
A rate limit or a budget hold interrupted planning. Ask Claude to call plan_research. Targets already planned are skipped.
🧯Every step comes back with unresolved sentences.
Three causes. The dossier has no fact for what the sentence claims (hedge or cut). The source id does not exist (bad_source_id). Or it is your own number and it is not in your brief: put it in your value props or description and Claude cites it as sender.
🧯It stopped mid-campaign.
Paid plans get 180 tool calls per five minutes, 3,000 a day, and 200 uncached companies a day. Contacts that timed out come back as deferred; ask Claude to call again for them. A campaign stopped from the dashboard is refused on purpose; ask Claude to reopen it (restart: true).
🧯Some contacts were skipped.
No email, a duplicate, or a possible job change flagged by enrichment. The campaign reports each count when it is created.
🧯I would rather SimpleSend drafted.
Ask for start_drafting: 2, 4 or 8 draft credits per email depending on the model, the same research, the same verifier.
🧯Is my data safe?
What is sent, what comes back, what is logged (90 days, never the arguments), no token passthrough, and how to revoke are on the docs page, the security page and the privacy policy.
Run this on your own list
Everything above is the workflow. The fastest way to judge it is to point it at a hundred people you already know you want, and read what comes back.
Start here
Start the trial, connect Claude, paste the campaign prompt
Fourteen days, no card, 375 credits: enough to run the loop on about 75 companies at one target and read what comes back. Or draft one real prospect right now without an account.
Trial: 14-day free trial · No credit card needed · Plans from $50/mo Demo: Free · No signup · ~40 seconds
For teams
📅 Book a demo
Running a team on this, migrating an existing outbound motion, or need to walk through security, seats and the connector for an organisation? Book time and we will go through it properly.
Who's writing this. I've run outbound from both sides of the table: as a rep selling enterprise investor-management software to private real estate sponsors, and as an agency owner sourcing high-net-worth investors for private commercial real estate funds. Both times I hit the same wall: twenty researched emails a day or two hundred generic ones, never both. SimpleSend is the thing I kept wishing existed. This page is the system that worked for me in both seats, written down so the reading scales and the judgment stays yours.
The demo and opportunity numbers are one person's months in one niche, and the campaign figures are my own accounts over my own lists. Benchmark figures move quarter to quarter and depend on what each dataset divides by. Treat all of it as direction, not promises.