seotools.pro Get started free

Outreach Follow-Up Tracker Template

Outreach rarely fails on the first email. It fails on the follow-ups: some prospects get nudged five times, others never, and nobody knows who said stop.

This tracker gives every prospect one row: why they fit, what you last sent, when to follow up next and the condition that ends the thread.

Each row has one owner and one next action. Opt-outs, bounces and clear noes stop the row the day they arrive.

Inside: a fill-in tracker, follow-up rules, a stop condition picker, a new-reason check, a weekly review, a CSV header and a fictional example.

Format
Editable Word .docx
Length
7 variants · ~7 pages
Price
100% free
Setup
Copy or download

Get the editable Word doc in one click.

Free · No signup · Instant download

Works withSemrushSe Ranking
UOutreach & Link Building

Outreach Follow-Up Tracker Template

Outreach follow-up tracker

One row per prospect and campaign. Update the row the same day anything happens: a send, a reply, a bounce or an opt-out.

Campaign: [campaign name] - Tracker owner: [name] - Max follow-ups: [number]

ProspectRelevant reasonPrevious contactNext dateStop conditionOwner
[site, page URL, contact name][why this page and person, in one line][date + touch number + channel][YYYY-MM-DD or none][what ends this thread][name]
[prospect][reason][date + touch][date][stop condition][name]
[prospect][reason][date + touch][date][stop condition][name]

Per-row detail (fill for every prospect)

  • Contact route: [email / contact form / social], where you found it
  • Touches sent: [1 / 2 / 3] of [max]
  • Last reply: [none / quote of the reply, with date]
  • Status: [queued / waiting / follow-up due / replied / hold / won / stopped]
  • New reason for the next touch: [what the follow-up adds that the last one did not]
  • Stop reason (if stopped): [no / opt-out / bounce / wrong person / max touches / won] on [date]
  • Suppressed: [yes, date added to the do-not-contact list / not needed]

Next action

  • Outreach owner: [name] - task: send follow-ups due today and log each one by [date]
  • Tracker owner: [name] - task: review overdue rows and stop reasons by [weekday]
  • Content owner: [name] - task: supply the new reason or asset for touch 2 by [date]

Completion check

  • Every open row has a next date. Every closed row has a stop reason and date.
  • No row has more touches than the campaign maximum.
  • Every follow-up note names a new reason, not just "bumping this up".
  • Opt-outs are on the do-not-contact list, with the date they arrived.
  • Each row has one owner. Won rows are copied to your backlink tracker.
Download free template

Why it works

Every outreach prospect has a reason, a dated next step and a stop condition, so follow-ups go out on time and end when they should.

  • A written maximum and a stop condition per row end endless nudging before it starts.
  • Asking for a new reason before each follow-up turns empty bumps into notes editors can act on.
  • Logging opt-outs the same day keeps teammates from contacting someone who already asked to stop.

7 ready-to-use variants

Copy all

Outreach Follow-Up Tracker (fill-in)

When to use: One row per prospect, with the relevant reason, previous contact, next date, stop condition and owner, plus a completion check.

Outreach follow-up tracker

One row per prospect and campaign. Update the row the same day anything happens: a send, a reply, a bounce or an opt-out.

Campaign: [campaign name] - Tracker owner: [name] - Max follow-ups: [number]

ProspectRelevant reasonPrevious contactNext dateStop conditionOwner
[site, page URL, contact name][why this page and person, in one line][date + touch number + channel][YYYY-MM-DD or none][what ends this thread][name]
[prospect][reason][date + touch][date][stop condition][name]
[prospect][reason][date + touch][date][stop condition][name]

Per-row detail (fill for every prospect)

  • Contact route: [email / contact form / social], where you found it
  • Touches sent: [1 / 2 / 3] of [max]
  • Last reply: [none / quote of the reply, with date]
  • Status: [queued / waiting / follow-up due / replied / hold / won / stopped]
  • New reason for the next touch: [what the follow-up adds that the last one did not]
  • Stop reason (if stopped): [no / opt-out / bounce / wrong person / max touches / won] on [date]
  • Suppressed: [yes, date added to the do-not-contact list / not needed]

Next action

  • Outreach owner: [name] - task: send follow-ups due today and log each one by [date]
  • Tracker owner: [name] - task: review overdue rows and stop reasons by [weekday]
  • Content owner: [name] - task: supply the new reason or asset for touch 2 by [date]

Completion check

  • Every open row has a next date. Every closed row has a stop reason and date.
  • No row has more touches than the campaign maximum.
  • Every follow-up note names a new reason, not just "bumping this up".
  • Opt-outs are on the do-not-contact list, with the date they arrived.
  • Each row has one owner. Won rows are copied to your backlink tracker.

Follow-Up Timing Rules

When to use: Set the next date from the row's status, so follow-ups go out on time and never stack up.

Follow-up timing rules

Pick your rules once per campaign and write them at the top of the sheet. Then the next date comes from the status, not from memory.

Status after the last touchNext dateNext action
Sent, no reply, touches left[N] working days after the last touchFollow up with a new reason
Sent, no reply, last touch usedNoneStop: max touches
Replied: interestedNext working dayAnswer the question, then wait for the link
Replied: not now, try laterThe date they namedOne check-in, then close
Out-of-office replyTwo working days after their return dateSame touch number, resend
Agreed, link not live yetThe date they promised, plus a few daysOne polite check

Rules that keep the tracker honest

  • Set a maximum, such as two follow-ups after the first email, and write it in the header.
  • Leave more days between later touches than between early ones.
  • An out-of-office is not a touch. Do not count it.
  • Before a follow-up, open the prospect page. If it moved or died, check it in the Redirect Checker and update the row.
  • Send each follow-up in the same thread, so the editor sees the history.

The email copy for each touch lives in the Cold Email Outreach Sequence Template. This tracker decides when it goes, and when it stops.

Stop Condition Picker

When to use: Choose the stop condition for each row, and handle opt-outs, bounces and noes the same way every time.

Stop condition picker

Write the stop condition before the first send. When it happens, the row stops that day, whoever owns it.

Stop conditionWhat you doRow status
Asks to be removed or not contactedStop all touches. Add to the do-not-contact list todayStopped: opt-out
Clear noThank them once, or not at all. No more touchesStopped: no
Hard bounceStop. Look for a published contact route onceStopped: bounce
Wrong person, no referralStop. Do not guess other addressesStopped: wrong person
Max touches used, no replyStop. Note the date in case a later campaign fitsStopped: max touches
Link live or deal agreedThank them. Copy the row to the backlink trackerWon

Opt-out facts to know (US)

  • The FTC says CAN-SPAM makes no exception for business-to-business email.
  • A commercial email must tell people how to opt out, and the opt-out must work for at least 30 days after you send.
  • Opt-out requests must be honored within 10 business days. You can't charge a fee or ask for more than an email address.
  • After an opt-out, you can't sell or transfer that address.

Source: the FTC's CAN-SPAM Act compliance guide for business, checked 12 November 2026. Other countries have their own rules. Check them for your list.

Simplest habit: stop the row the same day the opt-out arrives. Don't wait for the deadline.

New Reason Check (before each follow-up)

When to use: Make sure every follow-up adds something new and still fits the prospect, or stop the row instead.

New reason check

A follow-up that only says "just checking in" asks the editor to reread your first email. Give them a new reason, or let the row stop.

Answer before you send touch 2 or 3

  • Is the reason in the row still true? The page, author and topic are the same.
  • What is new since the last touch: [an update to your page, a fresh example, a dead link you spotted, a short answer to their likely question]
  • Can the editor check it in one minute?
  • Is the ask the same size as before, or smaller?
  • Has anyone else on your team contacted this site since? Check the tracker first.

Good new reasons

  • You updated the page you offered. Say what changed.
  • You found a broken link on their page. Report it, with the URL.
  • You can offer a short quote or data point they can use, with the source.

Stop instead when

  • The page you referenced is gone or rewritten without the section.
  • You have nothing new to say.
  • The prospect posted that they don't accept suggestions or links.

No asset fits the gap you found? Plan one with the Content Brief generator, then come back to the row.

Weekly Tracker Review

When to use: A short weekly routine for the tracker owner: overdue rows, stale rows, stop reasons and won links.

Weekly tracker review

Pick one day a week. The tracker owner runs these checks and fixes rows on the spot.

Checks

  • Overdue: filter next date earlier than today and status open. Send or stop each one.
  • No next date: any open row without one gets a date or a stop reason.
  • Over the limit: any row with more touches than the max is stopped and noted.
  • Opt-outs: every opt-out row is on the do-not-contact list, with a date.
  • Duplicates: one site, one active row. Merge rows from different teammates.
  • Won: check each promised link is live, then copy it to your backlink tracker.

Review fields

  • Review date: [YYYY-MM-DD] - Reviewer: [name]
  • Rows fixed: [list of IDs]
  • Rows stopped this week, by reason: [opt-out / no / bounce / max touches]
  • Pattern noticed: [e.g. one prospect type never replies]

To confirm a promised link, open the page. To see your strongest links, run your domain in the Backlink Analyzer.

Outgrowing the sheet? A CRM such as crmsoftware.pro keeps contacts, follow-up tasks and history in one place.

Spreadsheet Header (CSV)

When to use: A paste-ready header row and allowed values to run the tracker in Google Sheets or Excel.

Paste-ready spreadsheet header

Paste this row into cell A1 of Google Sheets or Excel, then split text to columns by comma. One row per prospect and campaign.

prospect_id,campaign,site,page_url,contact_name,contact_role,contact_route,relevant_reason,first_contact_date,previous_contact_date,touches_sent,max_touches,last_reply,status,next_date,next_reason,stop_condition,stop_reason,stop_date,do_not_contact,owner,won_link_url,won_date,notes

Allowed values

  • contact_route: email, contact_form, social
  • status: queued, waiting, follow_up_due, replied, hold, won, stopped
  • stop_reason: opt_out, no, bounce, wrong_person, max_touches, won
  • do_not_contact: yes, no

Sheet tips

  • Highlight rows where next_date is before today and status is waiting or follow_up_due.
  • Highlight rows where touches_sent is more than max_touches.
  • Keep a separate do-not-contact tab. Check it before you add any new prospect.
  • Never delete stopped rows. They stop a teammate from pitching the same person again.

Build the prospect list first with the Link Prospect Qualification Sheet. Only qualified rows go in here.

Worked Example (fictional sea kayak shop)

When to use: Four filled rows for an invented sea kayak gear shop: one won, one on hold, one bounce and one opt-out.

Worked example: Drovemere sea kayak gear

Example only. Drovemere is an invented sea kayak gear shop. The sites, URLs, names and dates are made up to show a filled-in tracker.

Campaign: cold-water layering guide - Tracker owner: outreach lead - Max follow-ups: 2

ProspectRelevant reasonPrevious contactNext dateStop conditionOwner
tideway-paddlers.example/blog/winter-kit-list/ - Ines, editorWinter kit list has no layering section. Our guide has a layering chart27 Oct 2026, touch 2, emailNoneLink live on 6 Nov 2026Outreach lead
wickentarn-paddle.example/capsize-drills/ - Tomas, authorPost mentions cold shock but links nowhere on clothing22 Oct 2026, touch 1. Reply: "Revisit in spring"2 Mar 2027One check-in, then closeOutreach lead
coastclub-north.example/resources/ - club secretaryResource list for new members, no cold-water section21 Oct 2026, touch 1, hard bounceNoneStopped: bounce. No other route publishedOutreach assistant
harbourkit-reviews.example/drysuits/ - site ownerDrysuit review page, layering question in comments23 Oct 2026, touch 1. Reply: "Please remove me"NoneStopped: opt-out, suppressed 23 OctOutreach assistant

How the rows were filled

  • Row 1: touch 2 added a new reason: the guide now had a printable chart. Ines replied and added the link.
  • Row 2: "not now" became a dated hold, not a nudge next week.
  • Row 3: the team did not guess other addresses at the club.
  • Row 4: the opt-out went on the do-not-contact tab the day it arrived, well inside the deadline.

Why this works

  • Every row ends with a date or a reason, so nothing is left hanging.
  • Nobody got a third follow-up, because the max was in the header.
  • The won link moved to the backlink tracker the same day.

Want help planning a follow-up process for your link campaigns? Book a free consultation with Anatolii Ulitovskyi.

How to use this template

  1. Add only qualified prospects, one row each, with the reason they fit.
  2. Write the max follow-ups and the timing rules in the sheet header.
  3. Set a stop condition for every row before the first email goes out.
  4. After each send or reply, update previous contact, status and next date.
  5. Before each follow-up, write the new reason. No new reason means stop.
  6. Stop opt-outs, bounces and clear noes the same day, and add opt-outs to the do-not-contact list.
  7. Review the tracker weekly and copy won links to your backlink tracker.

Pro tips

  • Put the max number of follow-ups in the header. It ends arguments about one more nudge.
  • Treat "not now" as a dated hold, with one check-in on the date they named.
  • An out-of-office is not a touch. Resend the same touch after their return date.
  • Keep stopped rows forever. They are your memory of who said no.
  • One site, one active row. Check the tracker before any teammate sends.

Frequently asked questions

What is an outreach follow-up tracker?

A sheet with one row per prospect. It records why they fit, the last contact, the next follow-up date, the stop condition and an owner.

How is it different from a cold email sequence?

The sequence is the emails. The tracker decides when each one goes and when to stop. Use both: copy from the Cold Email Outreach Sequence Template, timing from here.

How many follow-ups should I send?

Pick a small maximum, such as two after the first email, and write it in the header. Each follow-up should add a new reason, or the row stops.

How fast do I have to honor an opt-out?

For US commercial email, the FTC's CAN-SPAM guide says within 10 business days, with no B2B exception. Stopping the row the same day is simpler.

When should I move the tracker into a CRM?

When several people send outreach, or you lose track of who owns which contact. A CRM keeps history, tasks and owners in one place.