配方 · 外呼邮件

Outreach touch 2

跟进邮件,发给触达 1 在更早的某一天已经联系过、且尚未被移到 Replied 的行。它用一个从句再提一次你的价值主张,而不是把第一封信重讲一遍,并说明这是最后一封。它绝不会在触达 1 发信的同一天再给这一行发信。

本页内容

它做什么

选好邮箱,并读一遍文案参数。它不会在触达 1 发信的当天再发一封,但除此之外的间隔,取决于你把这个序列排进日程的频率。

跟进邮件,发给触达 1 在更早的某一天已经联系过的行。68% 的正面回复出现在这一封之后。

它在一个环境上运行,走这个环境自己的代理、带它自己的 Cookie——所以页面加载出来的样子,和那个账号的主人看到的一样。 它完全不打开任何页面,这意味着它可以跑在一个你不太想惊动其会话的环境上。

One profileOpens no pageThe Outreach list table5 settings on the run

14 个步骤

这是真实的步骤树,读自启动器随附的那个套件。缩进代表嵌套:循环下面的步骤每行执行一次,分支下面的步骤只在它上方的条件成立时才执行。每一处 {{…}} 都是运行时才填入的值——来自正在遍历的那一行、来自这次运行的某项设置,或者来自环境本身。

loadRowsLoad the rows ready for touch 2Load Outreach list into rows
loopEach personLoop forEach

Each time

setVarStart this row with no outcomeSet outcome
setVarStart this row unsentSet sent
ifOnly rows touch 1 reached on an earlier dayIf {{loop.item.touch_1_day}} notEquals失败时:continue

Yes

setVarMark the row attemptedSet sent
setVarAssume the send did not completeSet outcome
sendEmailSend touch 2Send "Re: {{loop.item.company_casual}} — quick question" to {{loop.item.email}}失败时:continue
setVarRecord what happenedSet outcome失败时:continue
setVarRecord whether it wentSet sent失败时:continue

Each time

ifIf the message wentIf {{vars.sent}} equals失败时:continue

Yes

saveRowsAdvance the rowSave to Outreach list失败时:continue

Each time

ifIf the send was refused or failedIf {{vars.sent}} equals失败时:continue

Yes

saveRowsRecord the refusal on the rowSave to Outreach list失败时:continue

其中每一个都是自动化参考上的某一种步骤类型,字段与编辑器里显示的一致,也与 Agent 经本地 API 拿到的一致。

它用到的表

它们会随配方一起加载。数据集是一张由你的工作区拥有的、有类型的表——列名和列类型事先定好,步骤才能寻址到它们,而其中每一列日后都可以由你改名、扩展,或者从文件里填充。

Outreach list

读取写入

One row per person: their address, what you know about them, whether they opted in, and which touch of the sequence they are on.

email
Email · email
first_name
First name · text
company
Company · text
company_casual
Company (casual) · text
location
Location · text
location_local
Location (local) · text
icp
Segment · text
metric
Metric · text
signal
Signal · longText
cold_read
Cold read · longText
consent
Consent · select · Cold — no consent | Opted in
status
Status · select · Queued | Prepared | Touch 1 sent | Touch 2 sent | Sequence finished | Replied | Booked | Unsubscribed | Bounced | Refused
touch
Touch · number
deliverable
Deliverable · select · Deliverable | Risky — catch-all | Undeliverable | Could not check
last_sent_at
Last sent at · datetime
touch_1_day
Touch 1 day · date
outcome
Outcome · longText

重跑会更新它此前写下的那一行,而不是再添一行。保存步骤里的匹配列就是为此存在的,这也正是一次状态检查与一张每跑一遍就翻倍的表之间的区别。

它会问你什么

设置在运行开始时填写,而且每个环境都可以保存自己的一套值——一条流程就是这样服务一整个文件夹的账号的。

credibility
Who you are, and why this is not spam · textarea · 必填

One or two sentences with a number in them. This is the part that answers "why is a stranger writing to me", and a number is what answers it — an adjective does not.

offer
The offer · textarea · 必填

A quantified result, a tight window, and the risk taken off them. All three: a result with no timeframe is a hope, and a timeframe with no risk reversal is a demand.

ask
The ask · textarea · 必填

Two concrete times, not "let me know what suits". Every extra reply a meeting needs before it exists is a place the thread dies.

signoff
Sign-off · text

Optional, and short. "sent from my phone" is a real signal that a real person typed this; a deliberate typo is not — it reads as careless far more often than it reads as human, and it cannot be taken back.

pool
Mailbox pool · text

The name of a pool under Mail. The least-used mailbox in it that still has allowance today sends each message. Leave empty and pick a single mailbox on the step instead — one of the two has to be set before the first run.

如何加载

在启动器里打开 Automations,选择 Load a starter pack,然后挑 外呼邮件。把不想要的取消勾选。先落地的是表,然后是流程,最后是一个叫 Outbound 的项目,把它们连在一起。

到手的是一条普通的自动化记录行。在编辑器里打开它、改一个步骤、给它改名、把它删掉都行——此后应用不会把它当作特殊的东西,而且第二次加载这个套件是做一份全新的副本,不会覆盖你改过的那一条。表则相反:同名的表如果已存在,就会被沿用并保留它的数据行。