Skip to Content
CoursesAutomated Outbound07 Research a reason

Research a Reason to Reach Out

Outcome: an evidence column holding one specific, dated, checkable fact per account — and an honest count of how many rows have nothing.

Surface
App and MCP server
Level
Intermediate
Uses
company_job_listings · linkedin_page_posts · AI research · scrapers
Credits
~1–2 per account
Prerequisite
A qualified account list

”Why now” is the whole game

A cold message needs to answer a question the recipient asks in the first two seconds: why is this person writing to me, today?

“Because you fit our ICP” is not an answer. A dated event is.

This lesson builds the column that holds that answer, and it runs before the copy column because copy without evidence is decoration.


Reason types, strongest first

RankReasonWhere it comes fromWindow
1Funding roundFunding enrichment90 days
2Relevant hire, especially an execJob listings, exec-change signals30–90 days
3Job posts naming the problemcompany_job_listings30 days
4Product launch or major announcementPage posts, news60 days
5Tech-stack changeStack detection diff180 days
6Something they publishedPage posts, blog30 days
7Traffic or headcount growthGrowth enrichments90 days
8A researched fact about their modelAI researchNo window
9FirmographicsEnrichment

Ranks 1–4 carry their own timing. Ranks 8–9 do not, which is why a list built only on them has no natural ordering — every account looks equally urgent, so nothing gets worked.


Getting them cheaply

Start with what you already have

If lessons 01–06 already enriched funding, hiring and stack, the evidence column is a free formula over existing data. Check before spending.

Job posts are the best value

One cheap call returns hiring intent, named tools, team size and often the problem statement. company_job_listings is the highest-yield single source in outbound.

Page posts are cheap and current

linkedin_page_posts gives announcements and launches in one call.

AI research last

Only for accounts where the cheap sources returned nothing, and only for accounts worth the spend.


The evidence column

A free formula that picks the strongest available reason per row and falls down the ranking.

evidence = funding_90d ? "raised " + round + " in " + month : exec_hire_90d ? "hired " + title + " " + weeks + " weeks ago" : roles_30d >= 2 ? "posted " + roles_30d + " " + function + " roles this month" : launch_60d ? "launched " + product_name : stack_change ? "recently added " + tool : recent_post ? "posted about " + topic : ""

Then the number that matters: what percentage of rows end with rank 1–4 evidence?

Share with strong evidenceReading
Above 40%Good — a genuinely signal-driven campaign
20–40%Workable; consider splitting into two campaigns
Under 20%This is a cold list with decoration. Either add signal sources or accept it and write generically.

A blank evidence field is a finding, not a failure. It means there is no reason to contact this account this week — and the honest response is to leave the row in the table and wait for a signal, rather than inventing a reason.


Keep it checkable

Every evidence value should be something the recipient could verify. Two rules:

  • Date it. “Posted three sales roles this month” beats “is hiring”.
  • Quote where possible. A phrase from their job post or their own announcement is stronger than your paraphrase of it.

Store the source URL alongside. When a message gets a reply asking “how did you know that?”, you want to be able to answer.


Do this now

Audit what you already have

Which reason types are already enriched on the table?

Add job listings

The best value per credit in this lesson.

Add page posts

For announcements and launches.

Build the evidence formula

Ranked fallback, dated values.

Compute the strong-evidence share

Rank 1–4 as a percentage of rows.

Add AI research only where needed

High-value accounts with no cheap evidence.

Store the source URL per row

Decide what happens to blank rows

Hold and wait, or a separate generic campaign at lower volume.


Check your work

  • Evidence is a single column with a ranked fallback
  • Every value is dated and checkable
  • Source URLs are stored
  • You know the share of rows with strong evidence
  • Blank rows have an explicit policy

Where this breaks

Using a stale signal is worse than using none. Congratulating a company on a funding round from eight months ago, or referencing a role that was filled in March, tells the recipient your data is old and your process is automated. Every evidence type needs a window, and the formula must check the date rather than the existence of the fact.


Further automation

Once the evidence column works, invert the workflow: instead of building a list and looking for reasons, watch for signals and let accounts enter the list when a reason fires. That is the shift from a campaign to a pipeline, and it is what Signals & ABM builds.


Next lesson

08 — Write the opening line, turning the evidence into a sentence.

Reference for this lesson: company_job_listings, linkedin_page_posts, Signals, Research & Web Scraping.