← The blog
6 min read·By Abhiraj DG

How We Built a Cold Outreach System From Job Postings

LinkedIn Jobs to Claude Cowork to Apollo to Gmail drafts. The four-step system behind our first cold outreach batch, how we kept tokens and credits low, and what ten sends already taught us.

Nearly every client we have came through a referral. That is a good problem to have and a fragile one, because referrals cannot be scheduled.

So this month I built an outbound system and ran its first batch. I want to describe it as it actually went, including the parts that did not work, because most write-ups of cold outreach only show the version that did.

The idea: a job posting is a public confession

When a company posts a marketing role, it is telling you three things for free. There is a problem it has not solved, there is budget to solve it, and there is a window between the role opening and the role being filled.

That window is where a fractional service fits. You are not asking a company to change its plans. You are offering capacity while it carries out the plan it already announced.

The four steps

1. LinkedIn Jobs is the trigger. We look for growth and marketing roles at companies large enough to have budget but not so large that they already have a full team. The posting is the reason to write, and it is also the first line of the email.

2. Claude Cowork does the reading. Each posting gets read for what the role actually asks one person to cover. The email opens with one specific observation drawn from that. In our batch, the observation was usually some version of "this brief spans several jobs that are normally separate", which is true of a lot of postings.

3. Apollo enriches the shortlist. We use the free tier, and only on leads that have already passed our own screen. For each one we look up the likely decision-maker, usually the hiring manager or the head of the function, and a working address.

4. Gmail drafts, then a human. Nothing is sent automatically. Every message lands as a draft, and I read each one before it goes. That is the step that keeps a system like this from turning into spam.

Keeping tokens and credits low

The system is deliberately cheap to run, and the saving comes from the order of the steps, not from a clever tool.

  • Shortlist first, enrich second. Each cycle we shortlist four or five leads from the postings. Only those get enriched. Enrichment costs one to two credits a lead, so a cycle uses a handful of credits and the free allowance goes a long way.
  • Screen before you spend. Reading a posting costs a few tokens. Enriching a lead costs a credit. Doing the cheap step first means the expensive one only runs on leads already worth writing to.
  • Small cycles keep quality up. Four or five leads is a number one person can research, draft for and review properly in one sitting. A bigger list would mean thinner observations and more tokens spent on drafts nobody reads carefully.
  • Paid tiers can wait. If free credits cover the shortlist, the limit is your own attention, not the tool.

What the email looks like

Each message ran to roughly a hundred words and had four parts:

  1. One observation from the posting, specific enough that it could not have been sent to anyone else.
  2. One line on who we are, with the proof point chosen to match the role. A performance role got a performance credential. A broader role got a broader one.
  3. The frame: capacity while the search for the full-time hire continues, not a replacement for it.
  4. A small ask. "Happy to share how we'd help." No calendar link, no deck.

What ten sends taught us

The first batch was ten emails, sent over about six minutes on one morning. Here is the honest state of it two days later.

  • No replies yet. Two days is too early to judge anything, and ten emails is not a sample. We will read the result after a couple of weeks and a follow-up.
  • One address bounced. It was a guessed address that did not exist. Verify every address before the batch goes out, not after.
  • Two emails went to the same company. Same body, two different people. A recipient who compares notes with a colleague sees a template. One contact per company is a better rule.
  • Sending in a tight burst is fine at ten. It is not a habit to scale. A new sending pattern from a business domain is something mailbox providers pay attention to, so grow the volume slowly.

Build your own, in order

  1. Decide the trigger signal. A job posting is one. A funding announcement, a new product launch or a leadership change are others.
  2. Write the observation by hand for the first five, so you know what a good one sounds like before you ask a model to draft it.
  3. Use AI for reading and drafting, and keep a human on the send button.
  4. Shortlist before you enrich, so credits go only to leads worth writing to. Verify addresses. Cap it at one contact per company.
  5. Log every send with the date, the trigger and the outcome, so week three has data instead of opinions.
  6. Know the rules for the countries you email. In the US, the FTC's CAN-SPAM guide is the short version. Other markets have their own rules.

What I would tell you not to do

Do not measure it by the first day. Do not send the same message to a whole company. Do not pretend the system is finished after one batch. It is a hypothesis with a log attached, and the log is the point.

If you build one, send me the first batch's results. I will send you ours.

Find out where your marketing architecture is breaking down.