← all playbooks

Run one candidate search across every people database at once

One de-duplicated candidate pool drawn from several people databases, each person marked with the databases that found them, qualified on dated work history and profile text, with contact details found only for the people who passed.

use when
one database keeps handing you the same names and you suspect the rest of the market is sitting in the others
starts from
A job spec

The prompt

Paste it into Claude Code or the Claude desktop app with Hyreflow connected. The first line tells your agent to use Hyreflow, so it reads the play, asks before it spends anything, and hands the work back to you.

paste this into Claude
Use hyreflow and run one candidate search for <ROLE_TITLE> in <LOCATION>
across every people database I have access to, merged into one list.

<PASTE THE SPEC, OR GIVE THE TITLES AND MUST-HAVE SKILLS>

How I want it run:
- Write the title set once, with the real variants, then shape it for each
  database. Tell me where a database needs the full words and where a word
  stem is enough.
- Treat location the same way: a wide list of place names where a database
  matches exact strings, one area value where it understands a metro.
- Read the match count from each database and show me the counts side by
  side before you pull anything.
- Merge on the LinkedIn profile and keep a column showing which databases
  found each person.
- Pull dated work history before you score anyone against <MUST_HAVES>.
- Contact details last, survivors only: personal email and LinkedIn, never
  work email.

Run five people end to end first and tell me what the full run costs before
you do the rest. Do not contact anyone.

Replace every <PLACEHOLDER> with your own detail. Everything else can stay as written.

What you need first

  • The job spec or a short brief: titles, must-have skills and location
  • A Hyreflow workspace with credits, which covers two of the databases
  • Optional: your own lemlist or Apollo account connected, to add those databases to the search

Tools it can reach for

The agent picks per step from what your workspace has. Nothing here is required by name.

What happens when you run it

Free steps are marked free. Anything that spends credits is marked, and the agent asks before the first paid run of any size.

  1. 1

    Write the search once

    free

    Titles with their real variants, the must-have skills and the location come out of the spec. Where the language has masculine and feminine job titles, both are written out in full, because only one of the databases matches a word stem.

  2. 2

    Shape it for each database

    free

    Two of the databases match a location as an exact string, so they get a wide list: the city, the metro label, both language spellings and the commuter towns. The third takes one area value that covers the whole metro.

  3. 3

    Read the counts side by side

    credits

    Each database reports how many people match. Reading that number costs one result or one page, depending on the database. You see the counts next to each other and agree how deep to pull from each.

  4. 4

    Pull each database to the agreed depth

    credits

    Search rows are billed by the database that returns them, some per person and some per page, so depth is set per database and the agent logs where it stopped early.

  5. 5

    Merge and de-duplicate on the LinkedIn profile

    free

    The profile link is the key. A person found three times becomes one row that names all three sources. Rows with no profile link fall back to a normalised name and are flagged, because a name can fold two people together.

  6. 6

    Pull the dated work history

    credits

    A search row is a snapshot: current title, employer and location. Dated career history is pulled once for the merged pool, skipping rows whose source already carried it, so nobody is scored on a title alone.

  7. 7

    Qualify on history and profile text

    credits

    Each person is scored against the must-haves on work history, skills, headline and role descriptions. Evidence is combined across sources: one skill confirmed in one database and a second in another count together. A missing keyword is recorded as unknown.

  8. 8

    Find contact details for the survivors only

    credits

    Personal email and LinkedIn for the people who passed, through the personal-email providers in a set order that stops at the first hit. A miss usually costs nothing.

What a run costs

Credits are spent per candidate the play actually works, and a lookup that finds nothing usually costs nothing. The two figures are the run where the first provider answers and the run where every lookup walks its full chain.

candidatesif the first provider answersif every lookup walks the chain
25$3.535 credits$15150 credits
100$14140 credits$59590 credits
500$70700 credits$2952950 credits
1,000$1401400 credits$5905900 credits

Free before anything is charged

  • Write the search once
  • Shape it for each database
  • Merge and de-duplicate on the LinkedIn profile

What moves the number

  • The channel. This play buys personal email, because these are candidates, and a work inbox is the wrong place to approach one. A personal address costs more to find than a work one.
  • Coverage on people search, work history and personal email. The chain stops at the first provider that answers, and only that provider bills.
  • How many candidates survive the free filters. Everything dropped before the paid steps costs nothing.
  • The scoring and drafting steps run on the metered agent, charged on what they read and write rather than per candidate, so they sit outside this table.
  • Providers you connect with your own key. Those calls bill your account, not your credits.

An estimate, not a quote, priced at the volume credit rate. Your agent sizes the run against your own workspace and tells you what it will cost before it spends anything.

No single database holds the whole market

Every people database is compiled in its own way, from its own sources. Each one misses a share of any market, and they do not miss the same share. Most recruiters assume the big databases are near copies of one another. Run one search across three of them and the overlap turns out smaller than that assumption. The people found by only one source are a real part of the pool, and if you search a single database you never learn they exist.

This play is the plain version of coverage: one title set, one location and one set of must-haves, run across the databases and merged into one list. It does not look for people who describe the job in other words, and it does not map competitors. Map a whole talent pool does that. This one asks a narrower question: has everyone who carries this title in this place been seen?

Most of the work is translation, because the databases do not read a query the same way. One matches a word stem anywhere in a title. The others need the full words and return nothing on a stem. Two match a location as an exact string. One takes a single area value that covers a metro. Get that wrong and a database reports zero, which looks like an empty market and is a query fault.

What you get back

One CSV, one row per person, de-duplicated on the LinkedIn profile. Each row keeps a source column naming every database that returned the person, the dated work history used for scoring, the tier and the reason, and a personal email where one was found for the people who passed.

Beside it, the count per database and how far they overlapped, which tells you which database carries your niche. Nothing is sent and nothing is written to your ATS.

Variations worth knowing

Bring your own accounts. The lemlist people database and Apollo join the search only on your own connected accounts, billed by those vendors. Apollo's search rows hide the surname and the profile link until they are revealed, so they merge on less.

Stop at the pool. Skip contact details, and later load the shortlist into your ATS or a sequence.

Where this goes wrong

Reading a zero as an empty market. A zero from one database beside hundreds from another is a title or location format fault. The agent checks the query before it believes the count.

A narrow location list. Most people list the metro, not their suburb. A towns-only list drops the bulk of them. Wide beats narrow.

A radius that measures the employer. One database's radius filter runs from the employer's head office, not from where the person lives, so it is not used.

Strict keyword scoring. A missing skill keyword is not a missing skill. Plenty of thin profiles are real fits, so they are marked unknown and kept.

Questions

Why not pick the best database and search it properly?

Because there is no best one, only a best one for a given niche, and you do not know which it is until you have compared them. Each database is compiled from its own sources, so each misses a different share of the market. The source column in the output tells you which database carried your kind of role. That is worth knowing for every search after this one.

Do I pay several times for the same person?

For the search row, yes. Someone who sits in three databases is returned three times, and each database bills what it returns. That is why the counts are read first and the depth is agreed per database. The costly per-person steps, work history and contact details, run once on the merged pool, after the duplicates are gone.

Which databases run on Hyreflow credits and which need my own account?

AI Ark and Prospeo run on Hyreflow credits, or on your own keys if you have them. The lemlist people database is searched only through your own connected lemlist account, and Apollo only on your own Apollo key. Those two bill you through your account with that vendor, not in Hyreflow credits. A database that is not connected is skipped, and the report says so.

How is this different from a full talent map?

A talent map attacks one role from five different angles: meaning-based search, competitor mapping, lookalikes and intent signals among them. This play is one structured search repeated across databases. It answers a narrower question, which is whether you have seen everyone who carries this title in this place. It costs less and it is the right first move on most roles.

What if two databases disagree about the same person?

The merged row keeps what each source said, with the source named. The dated work history pulled afterwards is what the scoring reads, so a stale title in one database does not decide anything.