← all playbooks

Find out who is behind an email address or a phone number

Your list back with a name, current employer, title and LinkedIn profile against every address or number that could be matched. Each match is graded confirmed, probable or ambiguous and names the provider it came from, and rows that matched nobody say so.

use when
an enquiry came from a personal address, a call was missed, or a CRM record holds nothing but an email, and you need to know who it is and where they work
starts from
A list

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 tell me who is behind these email addresses and phone
numbers, and where they work.

The list is <FILE_PATH, PASTED_ROWS OR CRM_VIEW>. These are
<INBOUND_ENQUIRIES / MISSED_CALLS / BARE_CRM_RECORDS>. Anything else I know
about them is in <COLUMNS_WITH_A_NAME_OR_MESSAGE_TEXT>.

How I want it run:
- Sort the list first. A work address already names the company, so tell
  me which rows only need the person. Set aside shared mailboxes.
- Try the lookups that cost nothing on a miss first. Use the one that
  bills on every request for phone numbers, and for <WHICH_ROWS_MATTER>.
- For each match, confirm where the person works today.
- Grade every row: confirmed, probable, ambiguous or no match. If two
  people fit, show me both. Do not pick one.

Run five first and tell me what the full run costs before you do the
rest. Show me the changes before you write anything to the CRM. Do not
contact anyone.

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

What you need first

  • The email addresses or phone numbers: pasted, in a file, or in a connected recruiting CRM
  • A reason to hold them. This is for people who contacted you or who are already in your database
  • A Hyreflow workspace with credits

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

    Sort what you have

    free

    Rows are split into work addresses, personal addresses and phone numbers, and numbers are put into international format. A work domain already names the employer, so those rows only need the person. Shared mailboxes such as info@ and duplicates are set aside before anything is spent.

  2. 2

    Pilot five rows and price the rest

    credits

    Five rows run end to end so you see real matches, real grades and what each row was charged. The agent then states the most the full list could cost and waits for your go-ahead.

  3. 3

    Reverse the email addresses

    credits

    Two providers take an email address and return the person behind it: one as a batch job that takes many addresses at once, one as an email-to-profile lookup. Both bill only when they return someone, so they run first.

  4. 4

    Reverse the phone numbers

    credits

    One provider looks a person up from a phone number or an email address. It bills for every request, match or no match, so it runs on the numbers you chose and on the email rows that matter and are still unmatched.

  5. 5

    Confirm where they work today

    credits

    A reverse record can be years old. For each match with a LinkedIn profile, the dated work history is pulled through a fixed chain of providers that stops at the first hit, and the current employer and title come from that.

  6. 6

    Grade every match

    free

    Confirmed means the returned person agrees with something you already held: the first name in the message, the company behind a work domain, or a second provider. Probable means one source and no conflict. Ambiguous rows list every person who fits.

  7. 7

    Hand it back, and write only what you approve

    free

    You get a copy of the list with the added columns, the grade, the provider and the cost per row. If the rows came from your CRM, the proposed changes are shown first. Only empty fields are filled, and nothing is overwritten, merged or deleted.

What a run costs

Credits are spent per record 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.

recordsif the first provider answersif every lookup walks the chain
25$21210 credits$23230 credits
100$83830 credits$89890 credits
500$4134130 credits$4434430 credits
1,000$8268260 credits$8868860 credits

Free before anything is charged

  • Sort what you have
  • Grade every match
  • Hand it back, and write only what you approve

What moves the number

  • Coverage on work history. The chain stops at the first provider that answers, and only that provider bills.
  • How many records survive the free filters. Everything dropped before the paid steps costs nothing.
  • 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.

Most enrichment runs from a name to a contact. This runs the other way

An enquiry arrives from a personal address with a first name and no signature. A mobile number sits in the missed calls. A CRM import left a few hundred records holding an email and nothing else. In each case you have the contact detail and are missing the person.

Fewer providers can do this than can find an email from a name, and they bill differently. Two take an email address and charge only when they return someone. One takes an email or a phone number and charges for every request, found or not. So the order matters, and so does being choosy about which phone numbers deserve a lookup.

The match is also less certain than ordinary enrichment. An address can be shared, a number can be recycled, and a provider's record can be years old. That is why every row is graded, and why two possible people are shown as two possible people.

This is for identifying business contacts who got in touch with you or who are already in your database. It is not a way to trace private individuals. The providers hold professional profiles, so a purely private address or number usually returns nothing, and that is the right result.

What you get back

Your rows, in your order, with name, current employer, title and LinkedIn profile added where a match was found. Each match carries a grade, the provider that supplied it and what the row cost. Confirmed means the returned person agrees with something you already held, such as the first name in the message or the company behind a work domain. Ambiguous rows list every person who fits. Unmatched rows say which lookups were tried.

Nothing is written to your CRM until you have seen the proposed changes and approved them.

Variations worth knowing

Emails only. Leave the phone numbers out and the reverse lookups bill only when they return someone.

Then fill the rest. Once a record has a name and an employer, fill the missing emails and mobiles in your CRM can complete it. If a match came back without a profile link, add the LinkedIn profile URL to a list of names and companies.

Where this goes wrong

Shared mailboxes. An address such as info@ or jobs@ belongs to a company, not a person. These are set aside before anything is spent.

Switchboards and recycled numbers. A number can lead to a reception desk or to whoever held it before. A phone match with nothing else to support it is graded probable at best.

Stale employers. Reverse records lag job moves, which is why the current employer is checked separately.

Personal addresses are thin. They resolve only where a provider has tied that address to a professional profile. Expect gaps.

Overwriting good data. The write-back fills empty fields only, and you approve it first.

Questions

Do I pay when nobody is found?

It depends on the lookup, which is why the order matters. The two email lookups bill only when they return a person. The lookup that also takes phone numbers bills for every request, found or not, so it is kept for the numbers you chose and the email rows you care most about. Confirming the current employer runs only on rows that matched. The five-row pilot shows what each row was really charged, and the figure you approve is a worst case.

What does ambiguous mean, and why not pick the best match?

It means more than one person fits and nothing you hold separates them. A shared family address, a recycled number or an old record can each produce that. Picking one would put a confident wrong name into your CRM, which is worse than a blank, because somebody will ring that person and open with the wrong company. Ambiguous rows list every candidate match so you can settle it with one reply to the sender.

Can it identify anyone from a phone number?

No, and it is not meant to. The providers hold professional profiles, so a number resolves only where one of them has tied it to a business identity. A private mobile with no professional footprint returns nothing, which is the right result. The play is for working out which business contact rang you, not for tracing private individuals.

Is this all right under data protection rules?

That is your decision and your responsibility. The intended use is narrow: people who contacted you, or records already in your database. You still need a lawful basis for holding what comes back and you need to honour opt-outs. The output records which provider supplied each value, which helps if anyone asks. It is not a tool for building profiles of people you have no relationship with.

Will it update my CRM for me?

Only after you have seen the changes and said yes. The agent shows each record with the fields it proposes to fill, and writes only to empty fields on confirmed matches unless you tell it otherwise. It does not overwrite what is there and it never merges or deletes records. Recruit CRM is shown here, and the same write-back works on other recruiting CRMs that support updating a person.