DeskFerry Logo

The best candidate for this role is already in your database

You met them fourteen months ago, they weren't ready, and neither of you has spoken since. This surfaces the people you already know when a relevant role comes in, with a note drafted from what you actually discussed — not a mailshot.

Known to you · Platform Engineer, Wexley

4 worth a message

  • Met Mar 2025

    Joseph Adeyemi

    Said revisit in 12 months — now 17

    17 mo
  • Interviewed 2024

    Fiona Crane

    Final stage, other candidate took it

    14 mo
  • Referred by N. Osei

    Danny Whitfield

    Never placed, stayed in touch until 2025

    11 mo
  • Applied 2025

    Aisha Rahman

    Withdrew — counter-offered by employer

    9 mo

Joseph asked you to come back to him in a year. That was seventeen months ago. He is not in anyone's follow-up list because there isn't one.

Works with

  • Google Sheets
  • Gmail
  • Outlook
  • Ashby
  • Breezy HR
  • Google Drive

It searches the records you already hold — your spreadsheet, your notes, your old correspondence, and where you run one, your ATS. Ashby and Breezy HR both publish candidate search, so the retrieval can run against the database itself rather than a copy.

The chore

How this goes right now

  1. Every agency database is mostly a graveyard. Thousands of people you have met, interviewed, submitted or nearly placed, and the overwhelming majority of them have not heard from you since whatever process brought them in ended. Not because they were unsuitable — usually the opposite. They were good, the timing was wrong, and there was no mechanism for a conversation that resumes in fourteen months.

  2. So when a role comes in, the reflex is to go outward. Post it, source it, buy it. Which means paying to find strangers while sitting on a list of people who already know your name, have already told you what they want, and in some cases explicitly asked you to come back to them. The person who said "call me in a year" is the single warmest lead a recruiter can have, and a year later there is nothing anywhere that surfaces them.

  3. The half-solution most desks reach for makes it worse. Somebody exports a segment and sends a mailshot: "Hi, are you looking?" — no reference to the conversation you had, no acknowledgement that you interviewed them and put someone else forward. It performs badly, it costs you the goodwill of people who remembered you fondly, and it produces the conclusion that the database is dead when what's actually dead is that way of contacting it.

The difference

Same database, actually usable

The difference between a reconnect and a mailshot is whether the message shows you remember. That context exists in your own notes — it just isn't attached to anything that surfaces at the right moment.

The database as a graveyard
The database as a first port of call
Good people who've heard nothing since their process ended
People you already know surfaced against each new role
"Come back to me in a year" with nothing tracking the year
Follow-up dates honoured, even fourteen months later
Paying to source strangers for roles warm contacts would take
Messages that reference the actual last conversation
Generic mailshots that burn goodwill and confirm the list is dead
Contact preferences and opt-outs respected before anything drafts
Context living in notes nobody opens when a role comes in
A first look that costs nothing before you spend on sourcing

Try it

Walk through it yourself

This is the actual shape of the workflow — the same trigger, the same steps, the same draft waiting for your say-so. Click through it.

Re-engage dormant candidates

Scheduled checkGoogle Sheets

New role added — daily sweep

Runs when new roles appear on your list, or on a schedule you pick. It also checks follow-up dates you set months ago, which is the half that otherwise never happens.

What it does

  1. Read what the new role actually calls for

    Platform Engineer at Wexley. Go and Kubernetes, Bristol or remote, £75–85k. Same team Nadia Osei joined in July.

    Google Sheets
  2. Search the database for people whose recorded history matches

    31 records mention Go and Kubernetes. 12 within commuting distance or remote-willing. 4 with a recorded salary expectation inside the band.

    Ashby
  3. Apply your contact rules before anything is written

    2 removed — one opted out in 2025, one is currently placed by you and off-limits. 1 has a follow-up date of Mar 2026 that has passed. 4 remain.

    Google Sheets
  4. Draft a note per person, from your own history with them

    4 drafts, each referencing the actual last conversation. Joseph's opens on the twelve-month revisit he asked for. Fiona's acknowledges she reached final stage.

    Gmail

Draft comparison — nothing has been sent

People you already know — Platform Engineer, Wexley
PersonLast contactWhat you recordedWhy now
Joseph AdeyemiMar 2025Go/K8s, wanted more scale, asked for a revisit in 12 monthsThe revisit is 5 months overdue
Fiona CraneJun 2025Reached final stage, client picked the other candidateSame stack, same city, band matches
Danny WhitfieldSep 2025Referred by Nadia Osei, never submitted anywhereNow working with Nadia's new team
Aisha RahmanNov 2025Withdrew after a counter-offer from her employerCounter-offers commonly unwind within a year

This is retrieval from your own notes, not an evaluation. It has not judged whether any of these four should get the job — it has found people whose recorded history is relevant and shown you why each one surfaced, so you can decide who's worth a message.

Send these 4 reconnects?

Worth reading these — the opening line is doing all the work, and you may remember something the notes don't capture. If one of them left on bad terms and nobody wrote it down, this is where you catch it.

Once you approveGmail

Sent as a conversation resuming, not a mailshot

Each message goes individually from your mailbox, referencing the real history. Replies come back to you. Anyone who asks not to be contacted again is recorded as opted out and never appears in a future run — that suppression is permanent and applies across every role.

You already know these people.

It finds them and remembers the context. Whether they're right for the role is still your read.

Start free

How it works

What it's actually doing

Retrieval and drafting against records you already hold. It finds people and remembers context; every judgement about suitability stays with you.

  1. 1
    • Google Sheets
    • AsAshby
    • BrBreezy HR

    Searches the records you already have

    Your notes, old correspondence, and the ATS where you run one. It looks for recorded history relevant to the role — stack, location, stated expectations — not for a verdict about anybody.

  2. 2
    • Google Sheets
    • Google Drive

    Honours the promises you made

    "Come back to me in a year" is a commitment with a date on it. Those get tracked and surfaced when they mature, which is the single highest-value thing here.

  3. 3
    • Google Sheets

    Applies your contact rules first

    Opt-outs, people currently placed, anyone marked do-not-contact, and your own frequency cap. All applied before a single draft is written.

  4. 4
    • Gmail
    • OuOutlook

    Writes from history, individually

    Each message references the actual last conversation and goes as an individual email. Nothing is sent as a bulk campaign, because that's the thing that kills a database.

You stay in control

It finds people and remembers context. It never judges anybody.

The line matters more here than anywhere else on this desk. Retrieval — finding people whose recorded history is relevant — is a search problem. Deciding who is suitable is a judgement about a person's career, and it stays with the consultant who will have to look them in the eye.

  1. Step one

    It drafts

  2. Step two — you

    You read it and approve

  3. Step three

    Only then does it send

It doesn't screen, rank or score anybody

There is no fit score, no ordering by quality, no assessment of any person. The output is a list with the reason each name surfaced, and the reasons are facts from your own records.

It won't exclude people on inferred grounds

Filtering happens only on explicit recorded facts — a stated salary expectation, a location, an opt-out. It never infers that somebody is unlikely to be interested and quietly drops them.

Nothing is sent as a campaign

Individual messages, approved individually or as a batch you've read. The moment this becomes a bulk send it becomes the mailshot it exists to replace.

An opt-out is permanent and total

Anyone who asks not to be contacted is suppressed across every role and every future run, immediately. That's both the legal position and the only way this stays usable.

Setup

What setting this up involves

  1. 1

    Connect

    • Google Sheets or Excel, or whatever holds your candidate records
    • Ashby or Breezy HR, if your database lives in an ATS with search
    • Gmail or Outlook, so reconnects come from the consultant who knows them
    • Google Drive, if notes and CVs live in folders
  2. 2

    Tell it how you work

    • Where your records live, and which fields hold notes and preferences
    • Your suppression rules — opt-outs, current placements, do-not-contact flags
    • A frequency cap, so nobody hears from you twice in a quarter
    • How far back to look, and whether very old records should be excluded
    • Your lawful basis and retention policy, so ageing records are surfaced for review
  3. 3

    Then it runs

    About 50 minutes, once

    Longer than most, because the suppression rules deserve care and because it's worth reviewing your retention position while you're in there. The frequency cap is the setting people most often wish they'd set tighter.

Edge cases

Where it's careful, and what it won't do

What it handles

  • A follow-up date set a year ago

    "Revisit in 12 months" is tracked from the date it was recorded and surfaces when it matures. This is the highest-value case and the one no desk currently catches reliably.

  • Someone you placed and shouldn't approach

    Candidates currently in a placement you made are suppressed automatically. Approaching your own placed candidate is the fastest way to lose the client who paid for them.

  • A record too stale to use

    Someone last contacted four years ago with no interaction since is flagged for review rather than messaged. Old records raise retention questions as well as relevance ones.

  • The same person relevant to three roles

    The frequency cap applies per person, not per role. Three messages in a week from the same agency reads as a list, not a relationship.

What it does not do

  • Rank or score the people it finds

    No fit score, no ordering by quality. It shows why each name surfaced from your own records and leaves every judgement to you.

  • Send bulk campaigns

    Individual messages only. Bulk sending is precisely the behaviour that made your database feel dead in the first place.

  • Contact anyone who opted out

    Suppression is permanent, immediate and applies everywhere. There is no per-role override, because there shouldn't be.

  • Decide anything about a person's career

    Whether somebody is right for a role, ready to move, or worth approaching at all — all yours. It only tells you they exist and what you last recorded.

Time back

One placement a quarter from people you already knew

Time back
1 placement a quarter
Spent on
Roles filled without sourcing spend
What it costs
$49 / monthGrowthplan — see what’s included

How that’s worked out: Based on desks with a database of several thousand records where fewer than one in twenty has been contacted in the past year. The saving isn't hours — it's that a role filled from an existing relationship costs nothing to source and closes faster, because the person already knows who you are and you already know what they want.

Fair questions

The questions agency owners ask first

Isn't contacting old candidates a GDPR problem?

It's a question you have to have an answer to regardless of whether you automate it, and this makes the answer easier to hold rather than harder. Everything runs on records you already hold under whatever lawful basis you already rely on; nothing new is collected and no data is enriched from outside. Opt-outs are absolute and permanent, and ageing records are surfaced for a retention decision instead of being quietly messaged. What it can't do is give you a lawful basis you don't have — if your retention position is unclear, that's worth fixing first, and this will show you exactly how old your data is.

We tried a re-engagement campaign and it flopped.

Most do, and usually for the same reason: a segment export and a message that opens "Hi, are you looking?" — which tells the recipient immediately that you don't remember them. What changes the response rate is the first line referencing the actual conversation, and the fact that it goes when a genuinely relevant role exists rather than when somebody decided to run a campaign. That's the whole difference between this and a mailshot, and it's why nothing here sends in bulk.

Doesn't this just automate spamming people we couldn't place?

It would if it went to everybody, which is why the suppression rules and the frequency cap are set before anything runs. A person hears from you when a role genuinely matches what they told you they wanted, at most once in whatever period you set, in a message you have read. If that's still too much for a particular contact, they opt out with one reply and never appear again anywhere.

FAQ

Questions worth answering properly

Does it decide who the best candidates are?

No. It doesn't screen, rank or score anyone — it retrieves people whose recorded history is relevant to a role and shows you why each one surfaced. Deciding who is genuinely suitable, and who is worth approaching, is a judgement about someone's career and it stays entirely with you.

How does it decide who's relevant, then?

On explicit facts already in your records: the technologies mentioned, location, a stated salary expectation, the stage a previous process reached. Nothing is inferred about a person, and nobody is excluded on a guess about whether they'd be interested.

What about people who asked us not to contact them?

Permanently suppressed, everywhere, immediately. There's no per-role exception and no way to override it. Anyone who opts out in response to a message is added to that suppression before the next run.

Will someone get messaged about every relevant role?

No — there's a frequency cap per person that you set, and it applies across all roles rather than per role. Three messages in a week from the same agency is how a warm contact decides you're running a list.

Does it work without an ATS?

Yes. A spreadsheet and a folder of notes work fine, and plenty of desks run it that way. Where you do have Ashby or Breezy HR, both publish candidate search, so retrieval can run against the live database instead of an exported copy.

What happens with really old records?

They're surfaced for review rather than messaged. A record four years untouched raises a retention question as much as a relevance one, and having that flagged is usually more valuable than a reconnect that would have landed badly anyway.

Your next placement is already in your database

Point it at the records you already hold and set your contact rules. The next role you take shows you who you already know.

Start free