At Senko GTM, we spend a lot of time inside Clay - building, breaking, and improving the workflows that power outbound for GTM teams. This one surprised even us.


Let me paint you a picture.

You've set up Jordan Crawford's People Search Prompt in Clay. It's running. The agent is busy - you can see it in the step count, racking up actions, crawling sources, doing its thing. And then... the output lands. A decent list. You move it to verification, enrich it, and call it a win.

But here's the thing nobody talks about: the agent already found more people than it gave you.

They were in the steps. In the traces. Mentioned, identified, qualified - and then just... left behind. Never surfaced to output. Never handed to verification. Gone.

That's not a Clay problem. That's how AI agents work. They're meticulous during the search and somewhat amnesiac about it.


The Gap Nobody Sees

When you run an AI-powered people search, what you're really watching is a multi-step reasoning process. The agent searches, clicks, reads, cross-references, and decides who makes the cut.

The problem is that the decision layer is imperfect. Qualified people get identified in the middle of a step - a mention here, a result there - but they don't always make it into the structured output at the end.

And if they don't make it to output, they don't go to verification. And if they don't go to verification, they don't go to your pipeline.

You've already paid for the search. The lead was right there. You just never got it.

This is the gap. It's invisible, quiet, and consistent.


The Fix: A Recovery Step

What I built is simple: a forensic middle layer that sits between Search and Verification.

Not a new search. Not a re-run. A pure audit.

Its job is to go back through every step the search agent took, trace every person that was identified, and pull forward anyone who met the criteria but was left out of the output.

Think of it like a bloodhound working a trail the first dog already ran - same path, sharper nose.

The result? 4-5 additional qualified contacts per run. Cost: $0.003-$0.006 using GPT-4o-mini.

That's essentially a rounding error in your Clay credits - for leads you'd already technically found and then lost.


What the Recovery Prompt Looks Like

Here's the genericised version of the prompt. The actual implementation is tuned to specific ICP criteria, but the architecture is what matters:

Variables:
[company_name]
[company_domain]
[previous_agent_result]
[search_agent_steps]

Objective:
You are a forensic lead auditor. Your job is to track and reconstruct every
step taken in a past search operation and recover any valid leads who were
overlooked in [previous_agent_result] for the company [company_name].

Task:
- Carefully audit each trace in [search_agent_steps]
- Revisit every platform, search result, data extract, and decision made
- Recover any qualified individuals who meet the lead criteria but were
  missed or not recorded in [previous_agent_result]
- You are not conducting new searches - your job is to audit, not to search

Inclusion Criteria:
Include individuals with clearly senior roles in [your target function].

Example titles (adapt to your ICP):
- Decision Maker / Head of [Department]
- Director / VP of [Function]
- C-Suite roles relevant to your offer
- Team Leads with budget authority

All titles may be in the local language of your target market.

Exclusion Criteria:
Exclude any person if:
- Title indicates non-decision-making roles (e.g. Intern, Coordinator, Assistant)
- Role is unrelated to your ICP function
- Not currently employed at [company_name]
- Already present in [previous_agent_result]

Output Format:

audited_leads = [
  {
    first_name: "Jane",
    last_name: "Smith",
    title: "Head of Engineering",
    profile_url: "",
    city: "Berlin",
    country: "Germany",
    source: "Recovered from audit"
  }
]

If no leads meet the criteria, return:
audited_leads = []

Final Instructions:
- Only use [search_agent_steps] - no new searches allowed
- Leads without a profile URL are acceptable if other fields are verified
- Do not include any lead already in [previous_agent_result]

The prompt slots cleanly between your Search and Verification steps in Clay. You feed it the previous agent's output and the raw step trace - and it hands back the contacts that slipped through.


Why This Works

Most people optimise the top of the funnel. Better search prompts, smarter sourcing, cleaner ICP definitions. All valid.

But there's a compounding return on not losing what you already have. When your search agent runs 40 steps and surfaces 8 people - and you add a recovery layer that pulls out 4 more - you've just increased yield by 50% for fractions of a cent.

That math scales fast.

The other thing worth understanding: this isn't patching a flaw in the original prompt. Jordan Crawford's People Search is genuinely excellent. This is an extension - a recovery net cast behind the main event.

The original finds. The recovery catches what falls.


Who This Is Built For

If you're running high-volume outbound in Clay, targeting specific personas across large company lists, and using AI agents to source contacts - this step is table stakes.

You're already paying for the search. The leads are already being found. The only question is whether you're capturing them.

If you're not running a recovery step, the answer is no.


This is the kind of workflow we build and refine every day at Senko GTM - finding the small, high-leverage moves that compound across your entire outbound engine. If you want to see how this is implemented for your specific ICP, reach out.