Candidate Sourcing: A Recruitment Agency Playbook

Turn a brief into a search plan, choose candidate channels and qualify a shortlist with a clear reason for each person.

In this guide
  1. The sourcing workflow at a glance
  2. Work the search, step by step
    Show 13 topics
    1. 1. Turn the brief into a search plan
    2. 2. Start with the database you already own
    3. 3. Ask for referrals on every call
    4. Referral ask (end of a screening call)
    5. 4. LinkedIn: pick the right seat and use it properly
    6. 5. Boolean search and X-ray
    7. 6. GitHub, Stack Overflow and niche communities
    8. 7. Job boards, CV databases and your careers page
    9. 8. Find and verify contact details
    10. 9. Compliance: legitimate interest, notices and objections
    11. First approach with the source stated (email)
    12. 10. Reach out, follow up, then qualify
    13. 11. Shortlist, submit and measure
  3. Sourcing tools: what you actually need
  4. Frequently asked questions
Key points
  • Write the must-haves and title variants before opening a search tool.
  • Search existing records and referrals before paying for more profiles.
  • Record source, contact history and the next action so research turns into a shortlist.

Turn the brief into a search plan before opening LinkedIn. Search candidates your agency already knows, ask for referrals, then widen to external networks and job boards. The aim is a shortlist of people you have spoken to and can recommend against the client’s requirements. The worked search and funnel examples here are fictional.

The sourcing workflow at a glance

  1. Take a brief you can search. Must-haves, nice-to-haves, title variants, target companies, pay and the deal-breakers.
  2. Rediscover your database. Previous applicants, silver medallists, placed candidates and contractors coming off assignment.
  3. Ask for referrals. Placed candidates and strong candidates you did not place may know others who fit.
  4. Search external networks. LinkedIn, Boolean and X-ray, GitHub and niche communities, CV databases.
  5. Find and verify contact details. Lookup tools, then a check before you send anything.
  6. Reach out and follow up. Personal first message, two or three follow-ups, calls for the warmest.
  7. Qualify. Motivation, pay, notice, location, and the must-haves tested on a call.
  8. Shortlist and submit. Three to five people the client should meet, with your reasons.

Work the search, step by step

1. Turn the brief into a search plan

Most sourcing problems start at the intake call. A brief that says “senior .NET developer, hybrid, competitive” is impossible to search well. Before you search anything, write a one-page plan.

Take a fictional example: a three-desk IT contract agency in Leeds gets a brief for a six-month .NET contractor to help a payments company migrate services to Azure.

Scroll the table to see all columns →

Plan item What to write down Example
Must-haves (max 3) Things the client will reject without .NET (C#) services in production; Azure; financial services or payments
Nice-to-haves Things that tip a close call Service Bus; Kubernetes; previous migration project
Title variants What people in this job call themselves Software engineer, .NET developer, C# developer, backend engineer, contractor
Target companies Where people like this work now Payment processors, challenger banks, fintechs with Azure stacks
Off-limits Clients, recent placements, competitors the client won’t hire from Any current client; anyone placed in the last 12 months
Practicals Rate or salary, location, start date, IR35 status (UK contract) £500–£575/day, inside IR35, Leeds one day a week, start within four weeks
Calibration profiles Two real profiles the client says “yes” to Ask the hiring manager to point at two people they’d hire tomorrow

The calibration profiles are the most underused item on that list. Send two contrasting profiles after the intake call and ask “which is closer, and why?” You’ll learn more from the answer than from the job description.

2. Start with the database you already own

Ranked list of five sourcing channels from your own database and referrals to LinkedIn, X-ray and niche communities, with warmth and effort bars
Work from warm to cold. The bars are a rule of thumb, not measured data.

Every agency’s database is full of people who’ve already told you what they earn, why they’d move, and what they thought of the last client. They also already know your name. That’s why rediscovery should come before any external search.

Who to look for first:

  • Silver medallists. Candidates who reached final interview for a similar role in the last 12–18 months. They were good enough then; their circumstances may have changed.
  • Placed candidates, 18–36 months on. Many people look again two or three years into a job. Check your terms before approaching anyone you placed with a current client.
  • Contractors coming off assignment. For contract desks, the people finishing in the next four weeks are your warmest pool. Tag them before their end date, not after.
  • Recent applicants to other jobs. Someone who applied for a similar role last month and wasn’t right for that client may be perfect for this one.

How to search it well:

  1. Run the title block and the main must-have as keywords over parsed CVs.
  2. Add structured filters: location radius, tags, salary or rate band, last contact date.
  3. Read the activity history before calling. “Turned down a counter-offer in March, wants fully remote” changes your opener.
Candidate activity timeline in Longlist with emails, calls and stage changes on one record
The history is the advantage. Read the last conversation before you pick up the phone.

A database is only searchable if it’s clean. Parse every CV into fields, merge duplicates, keep one set of tags (not “Java”, “java dev” and “JAVA” as three), and update availability after every real conversation. If your CVs live in folders or an old system, the CRM migration checklist covers moving them across without losing the history, and the resume parsing guide explains what parsing should extract.

3. Ask for referrals on every call

Referrals from candidates are the most underused channel in agency recruitment, mostly because recruiters forget to ask. Build the question into every screening and every placement check-in.

Referral ask (end of a screening call)

"One last thing. Who's the best [job title] you've worked with,
someone you'd hire again if you were building a team? They don't
need to be looking. I'll mention you only if you're happy for me to."

Two rules make this work. First, ask about a specific person, not “anyone looking”. Second, always ask whether you can mention who referred them. “Priya suggested I call you” gets a very different reception from a cold approach. If your agency pays referral fees, make the terms simple and pay quickly.

4. LinkedIn: pick the right seat and use it properly

LinkedIn is still the biggest searchable pool of professional profiles. It’s also where every other recruiter is looking, so it pays to know what each plan gives you.

Scroll the table to see all columns →

Plan InMails per month Search reach Notes
Free / Premium None on free accounts; varies by Premium plan Your network; monthly commercial use limit on free accounts Fine for occasional searches; Boolean works in the main search bar
Recruiter Lite 30 per seat Up to third-degree connections 20 filters; self-serve sign-up
Recruiter Professional Services (RPS) 100 per seat Third-degree plus 30 out-of-network profiles a month 40+ filters, base AI features
RPS+ 140 per seat Third-degree plus 50 out-of-network profiles a month Advanced AI features; Hiring Assistant as an add-on
Recruiter (Corporate) 150 per seat Full network Advanced AI features; Hiring Assistant as an add-on

Source: LinkedIn’s Recruiter plan comparison, checked October 2026. Only Recruiter Lite is sold self-serve; the others are priced by LinkedIn sales.

Sales Navigator is built for selling, not recruiting. It’s useful for agency business development (finding hiring managers), but it lacks recruiter features like candidate projects and pipelines. The recruitment lead generation guide covers how agencies use it for BD.

LinkedIn’s AI features are now part of Recruiter. AI-assisted search turns a plain-English request into filters, and Hiring Assistant, an agent that can source and review candidates for a role, became generally available in English in September 2025 as a paid add-on. They’re good at producing a first draft of a search. They’re not good at knowing that your client won’t hire from its biggest competitor, or that “Head of” means a team of two at one company and fifty at another. Check the titles and companies the AI picked before trusting the results.

Practical habits that improve LinkedIn results:

  • Put titles in the Job titles field, not Keywords. Keywords also matches people who mention the title in passing.
  • Filter on “current” title and company unless past experience is genuinely what matters.
  • Use projects to save searches and shortlists, then move interested people into your own CRM. LinkedIn is not your database; you lose access to everything if a seat is cancelled.
  • Write InMails that could only go to that person. One specific line about their work beats three paragraphs about your client.

5. Boolean search and X-ray

Boolean is how you tell LinkedIn, Google, job boards and your ATS exactly what you want. A typical string:

("software engineer" OR ".NET developer" OR "C# developer") AND (Azure) AND (payments OR fintech OR "financial services")

And the Google X-ray equivalent for public LinkedIn profiles:

site:linkedin.com/in (".NET developer" OR "C# developer") Azure (payments OR fintech) Leeds

Each platform handles operators differently. LinkedIn doesn’t support wildcards, Google ignores the word NOT (use a minus sign), and CV databases vary. The full Boolean search guide covers the rules per platform, common mistakes and 12 strings by role you can copy.

6. GitHub, Stack Overflow and niche communities

For technical roles, and for any market where everyone’s LinkedIn inbox is full, go where people show their work.

GitHub. The user search supports qualifiers like location:, language:, followers: and repos:. For example, location:Leeds language:C# followers:>5 finds active C# developers who list Leeds. Read their pinned repositories and contribution history before contacting them; mention something specific. Many developers list a personal site or email on their profile. If they don’t, don’t go digging.

Stack Overflow. It closed its jobs board and developer profiles product in 2022, so it’s no longer a sourcing platform in its own right. Top answerers in a niche tag are still worth noting as experts, but expect to find their contact route through GitHub or a personal site.

Other communities worth checking by market:

Scroll the table to see all columns →

Market Where people show their work
Data and machine learning Kaggle profiles, Hugging Face, conference talk lists
Design Dribbble, Behance, personal portfolios
Finance and accounting Professional body member directories where public, regional finance networks
Engineering and construction Professional institution events, trade association member lists, project case studies
Healthcare Specialty associations, conference speaker lists
Any niche Slack and Discord communities, meetup organizers, podcast guests, award shortlists

Communities have their own norms. Join and contribute before you post jobs, read the rules on recruiter messages, and never scrape member lists.

7. Job boards, CV databases and your careers page

Inbound still matters, especially for volume, contract and regional roles. Two separate tools:

  • Job ads bring active applicants to you. Post where your candidates look, write the ad around what’s in it for them, and screen fast. The best job boards, UK job boards and free job boards roundups cover where to post.
  • CV databases (Indeed Smart Sourcing, Reed, Totaljobs, Monster and others) let you search CVs people have uploaded. They’re paid per seat, per period or per contact. Their Boolean rules differ, so test a string on a role you know well before relying on one.

Your own careers page is the cheapest channel of all. Every role you publish there is a chance to collect applicants who become part of your database for the next role. Longlist’s careers page publishes jobs with Google for Jobs markup and parses each application straight into the job’s Review stage.

8. Find and verify contact details

InMail response rates are limited, and many good candidates rarely check LinkedIn. A direct email or phone number usually gets a faster answer. Contact-finding tools (mostly Chrome extensions) look up work and personal emails and phone numbers from a profile page.

Treat any lookup as a lead, not a fact:

  1. Choose a suitable contact route. Personal email is usually better for a job conversation if you have it. Use a work address cautiously, with a short, relevant message; some candidates do not want recruiter email at work.
  2. Check before you send. Bounces hurt your mailbox’s reputation. If a tool marks an email as “guessed” or “risky”, verify it or use another route.
  3. Record the source on the candidate record (“email from contact lookup, 14 Oct”). You’ll need it if the person asks where you got their data.
  4. Don’t buy bulk lists. You have no idea how the data was collected, and you’ll inherit the problem.

The Chrome extensions for recruiters roundup compares the current contact-finding tools. Longlist’s own browser extension checks whether the person is already in your CRM, looks up available emails and phone numbers through third-party providers (Apollo and Prospeo), and saves them to a job or campaign.

Longlist Chrome extension showing an existing CRM match and revealed contact details on a profile page
Check for an existing record first, then reveal available contact details and save the person to a job.

9. Compliance: legitimate interest, notices and objections

Sourcing means processing personal data about people who never applied to you. In the UK and EU, that’s allowed under GDPR, but only if you do it properly. This is a general summary, not legal advice.

  • Lawful basis. Most agencies rely on legitimate interests (Article 6(1)(f)) to source and contact candidates. The ICO describes three tests you must pass before you start: a legitimate purpose, processing that’s necessary for it, and a balance that doesn’t override the person’s interests. Write that down as a short legitimate interests assessment. Contacting a .NET developer about a .NET role passes; storing everyone you’ve ever viewed “just in case” doesn’t.
  • Tell people where you got their data. When you collect data from somewhere other than the person, the ICO says you must give them privacy information within a reasonable period and at the latest within one month, or when you first communicate with them if that’s sooner. In practice: a line in your first message saying where you found them, plus a link to your privacy notice.
  • Honor objections immediately. If someone says “don’t contact me”, mark it on the record so nobody else on the team emails them next week. The right to object is absolute for direct marketing, and arguing a “compelling reason” to keep messaging a candidate is not a fight worth having.
  • Collect only what you need, and set a retention period. Delete or refresh records you haven’t touched in years.
  • Don’t scrape. Automated scraping tools breach LinkedIn’s User Agreement, and bulk-collected data is hard to justify under legitimate interests.

In the US there’s no single federal equivalent, but California’s CCPA has covered job applicants’ personal information since 1 January 2023, and other state privacy laws are following. Keep your privacy notice current and be ready to say what you hold and where it came from. Longlist’s own approach is set out on its GDPR page.

First approach with the source stated (email)

Subject: [Specific thing from their profile] + a [contract/perm] role in [city]

Hi [First name],

I found your profile on [GitHub / LinkedIn] while looking for [title]s
who've [specific experience, e.g. "moved .NET services to Azure"].
Your [project/role] stood out.

I'm working with a [type of company] in [location] on [one-line role
summary, with rate or salary range]. Worth a 10-minute call this week?

If not, no problem, and if you'd rather I didn't contact you again,
just say so. Our privacy notice explains how we handle your details:
[link]

[Your name], [Agency]

10. Reach out, follow up, then qualify

A single message gets a fraction of the replies that a short sequence gets. A practical cadence for passive candidates is a personal first email, a short follow-up three working days later, a final note a week after that, and a call or LinkedIn message for anyone who opened but didn’t reply. The recruitment email sequence templates have copyable versions, and Longlist’s email sequences send them from your own mailbox and stop when the person replies.

When someone replies, qualify on a call before anything else. Use the same structure every time so candidates are comparable:

  • Why would they move? (Their words, written down)
  • What would make them stay? (Counter-offer risk)
  • Current pay and expectations, with the basis (salary, bonus, day rate)
  • Notice period or contract end date
  • Location, commute and working pattern they’ll accept
  • Each must-have from the brief tested with a specific question
  • Other processes they’re in, and how far along
  • Right to work, if relevant to the role
  • Permission to represent them for this specific client

Record answers on the candidate record, not in your notebook. When the next role comes up in six months, that conversation is what makes your database worth searching.

11. Shortlist, submit and measure

For the shortlist, choose three to five people you can recommend against the brief and explain why each belongs there. For the cover page, client email and pre-send checks, use the candidate submission template.

Here’s how the numbers might look for the fictional .NET contract role:

  • Profiles reviewed 180
  • Approached 45
  • Replied 18
  • Qualified and interested 8
  • Submitted 4
  • Interviewed 3
  • Placed 1

The arithmetic: 45 approaches produced 18 replies (40%), 8 of those qualified (44% of replies), and 4 of the 8 went to the client. Notice that 135 of the 180 profiles reviewed were never approached. Reviewing profiles before approaching people keeps the outreach focused on candidates who fit the brief.

Now split the same funnel by channel. If the database produced 3 of the 8 qualified candidates from 10 approaches, while LinkedIn produced 4 from 30, your database converts more than twice as well, and that’s where next week’s first hour should go. The recruitment agency KPIs guide shows how to put sourcing metrics into a weekly scorecard without drowning in numbers.

Sourcing tools: what you actually need

You don’t need a dozen tools. A practical agency sourcing stack has four layers:

Scroll the table to see all columns →

Layer What it does Examples
Your CRM + ATS The searchable database, history, pipelines and outreach Longlist, or see the recruitment agency software roundup
External search Where you find people you don’t know yet LinkedIn Recruiter, CV databases, GitHub
Contact finding Emails and phone numbers from a profile Browser extensions; see the extensions roundup
Outreach Sequences, calls and texts that log back to the record Built into your CRM, or a separate tool

The common failure is the gap between layers: a great LinkedIn search whose results end up in a spreadsheet, or a contact lookup that never gets saved to the record. Whatever you use, make sure every person you find ends up in one database with the source, the job and the conversation attached. The recruitment tech stack guide goes into how the pieces connect.

Candidate sourcing in Longlist

Search your own candidate history, save new profiles from the browser with available contact details, and start a sequence that stops on reply. Sourcing, parsing and sequences are included on every plan.

See sourcing

Frequently asked questions

Which LinkedIn plan do agency recruiters need?

Most solo and small-agency recruiters start on Recruiter Lite (30 InMails a month, search up to your third-degree network). Agencies that need out-of-network reach, more InMails and shared projects use Recruiter Professional Services or Recruiter. LinkedIn's plan comparison lists the differences. Lite is self-serve; the other plans are sold through LinkedIn's sales team.

Is it legal to source candidates from LinkedIn under GDPR?

Generally yes, under legitimate interests, if you only process what you need for a relevant role, tell the person where you got their data within a month (or at first contact), and honor objections straight away. Avoid scraping tools, which also breach LinkedIn's User Agreement.

How many candidates should I source per role?

Work backwards from what the client needs. If you want three strong candidates on the shortlist and roughly one in four people you approach becomes interested and qualified, you need about 12 good conversations, which might mean 30 to 40 approaches. Track your own ratios by channel; they vary a lot by market.

LinkedInXEmail

Keep reading

All guides →

Product screenshot