← Vault Index
Source: business/products/consulting-practice-sop-manual/runners/cold-outreach-batch-runner-SKILL.md

name: cold-outreach-batch-runner description: > Runs the full Wednesday outreach cadence — ICP-filtered prospecting list, personalized cold emails, pipeline logging, and follow-up scheduling. Every Wednesday morning. 45 minutes. metadata: author: "Kathryn Brown, Practice Builders" version: "1.0.0" date: "2026-04-28" sop: "Cold Outreach Batch" category: "Business Development" frequency: "Weekly" estimated-time: "45 min" trigger: "Every Wednesday morning"


Cold Outreach Batch — Runner

You are executing the Cold Outreach Batch SOP for an independent consultant. Cold outreach without a defined cadence is noise — yours and theirs. This runner converts a prospecting list into a disciplined weekly batch of personalized outreach that builds pipeline consistently, independent of referral volume or inbound activity.

Do not skip steps. Do not ask questions across multiple turns — collect everything upfront.


What you'll have when this is done: 5-10 personalized outreach messages sent and logged, each with a follow-up date recorded. Your pipeline tracker reflects this week's outreach activity, and your Wednesday cadence has held.

Step 1: Collect All Inputs

Ask the user for the following in a single prompt. Accept whatever detail level they provide. Flag gaps but keep moving.

Ideal Client Profile:

This Week's Prospecting List (5-10 targets):

For each prospect, collect:

Your Background (for the relevance bridge):

Pipeline Context:

If the user can't provide specific research context for a prospect, flag it: "Without a specific reference point (post, article, talk, news), the outreach loses its edge. Find one before sending."


Step 2: Filter the List Against the ICP

Review every prospect on the list against the Ideal Client Profile criteria.

2A. Qualification Check

For each prospect, assess fit:

ProspectIndustry MatchRole MatchBehavioral SignalsICP Fit
[Name][Yes/No/Partial][Yes/No/Partial][Any known signals]Keep / Remove

Keep prospects who match the profile criteria. Remove anyone who doesn't. Don't send outreach to poor-fit prospects just to hit a volume number.

2B. List Health Check

After filtering:

2C. Duplicate Check

Cross-reference the filtered list against last week's outreach log. Remove anyone already in an active sequence. Note removals.


Step 3: Personalize Each Outreach Message (Cold Outreach Personalizer — Condensed)

For each qualified prospect, build a personalized cold outreach email using this structure. The email must be under 120 words total.

Message Structure

Subject line: Under 8 words. Specific to the prospect — reference their content, company, or situation. No clickbait, no emojis. Pattern: "[Specific topic] — quick thought" or "Re: your [post/talk/article] on [topic]."

The Research Hook (1-2 sentences): Open with a specific reference to something the prospect published, said, or did. A LinkedIn post, a talk, an article, a company announcement. The more specific and recent, the better. Generic openers ("I came across your profile") get archived immediately.

The Relevance Bridge (2-3 sentences): Connect their situation to your experience without pitching. Pattern: "I've been working on [similar problem] with [similar type of client], and [one specific insight or result]." This is proof of relevance, not a capability statement. Match the prospect's industry, role, or challenge to a real engagement from the user's experience.

The Micro-Ask (1 sentence): Close with a low-commitment question. Not "Can we schedule a 30-minute call?" but "Would it be worth a 10-minute conversation to see if this applies to your situation?" The goal is a response, not a booking. One ask only.

Sign-off: First name only.

Per-Message Quality Check

Run these checks on each message before including it in the batch:

#CheckFix
1Does the opening reference a specific piece of content, not a generic profile observation?Replace with a concrete post, article, talk, or event.
2Does the relevance bridge connect their situation to a real engagement or result?Add a specific client type and outcome. Remove abstract capability claims.
3Is the close a low-commitment question, not a meeting request?Rewrite as a question that requires only a reply.
4Is the subject line specific to this prospect?Include their name, topic, or company. Remove anything generic.
5Is the total email under 120 words?Cut ruthlessly. Cold outreach that runs long doesn't get read.

Identify the weakest element in each message. Rewrite it. Verify the rewrite landed before including the message.

Rules for Every Message


Step 4: Review and Edit for Voice

Present all drafted messages to the user for review. For each message, flag:

The user edits for accuracy and voice. The message should sound like them, not like a template with merge fields.


Step 5: Log and Schedule Follow-Ups

For each message the user approves, produce a pipeline tracker entry:

ProspectCompanyChannelDate SentMessage SummaryFollow-Up Date
[Name][Company][LinkedIn/Email][Today's date][1-line summary of hook + ask][7 days from today]

Rule: Every send gets logged, same session. Unlogged outreach creates invisible pipeline — prospects who responded positively but were never followed up because there was no record they existed.


Step 6: Assemble Final Output

Present one unified document containing:

A. ICP Filter Results

The qualification table from Step 2A showing who was kept and who was removed, with reasoning.

B. Outreach Messages

For each qualified prospect, the complete message:

Prospect: [Name], [Role], [Company] Channel: [LinkedIn / Email] Subject: [Under 8 words, specific to prospect]

[Full message text — research hook, relevance bridge, micro-ask, sign-off]

C. Pipeline Log Entries

The complete logging table from Step 5 — every message sent, channel used, date, and follow-up date.

D. Batch Summary

MetricValue
Prospects reviewed[X]
Removed (ICP mismatch)[X]
Removed (already in sequence)[X]
Messages drafted[X]
Messages flagged for research[X]
Follow-ups scheduled[X] for [date 7 days out]

E. SOPs to Trigger


Quality Check

CheckPass?
Every prospect from the input list appears in the qualification table — none silently dropped
ICP filter applied before any messages were drafted
Every message has a specific research hook — no generic openers
Every relevance bridge references a real engagement or result, not abstract credentials
Every close is a low-commitment question, not a meeting request
Every subject line is specific to the prospect — under 8 words
Every message is under 120 words
No two messages use the same phrasing for the hook or bridge
Every sent message is logged with date, channel, and 7-day follow-up
Last week's outreach log was checked — no duplicates in this batch
Prospects without specific research context flagged, not sent blind

Rules

  1. Filter before you write. Never draft outreach for a prospect who hasn't passed the ICP check. Volume without targeting wastes your time and theirs. Ten well-matched prospects outperform fifty mismatched ones every time.
  2. Every message earns its own research hook. If you can't reference something specific the prospect said, wrote, or did, don't send the message. Flag it for research and move on.
  3. Under 120 words. No exceptions. Cold outreach that runs long doesn't get read. Every word earns its place or gets cut.
  4. No links in the first email. Links trigger spam filters and add friction. The goal is a reply, not a click.
  5. Log every send, same session. Unlogged outreach creates invisible pipeline. Every send gets a row in the tracker with a follow-up date 7 days out.
  6. One ask per message. Don't give the prospect multiple response options. One low-commitment question.
  7. Don't skip the duplicate check. Contacting someone already in an active sequence signals disorganization — the opposite of what your outreach is trying to prove.
  8. Wednesday cadence holds. The value of this SOP is the rhythm. If Wednesday gets skipped, the pipeline stops being fed on a schedule and reverts to "when I get around to it."
  9. Escape dollar signs as \$ for Notion compatibility.
  10. If the prospecting list is consistently thin after filtering, the problem is upstream. Don't lower your ICP standards — fix your sourcing channels.

Copyright (c) 2026 Kathryn Brown, Practice Builders Licensed under the Practice Builders Skill License v1.0 See https://practicebuilders.ai/license for terms.

This skill is part of the Consulting Practice SOP Manual, a Practice Builders product. Redistribution, resale, or derivative use without written permission is prohibited.