AI Candidate Finder - Find Candidates from a Job Description
Pricing
from $500.00 / 1,000 ai-evaluated candidates
AI Candidate Finder - Find Candidates from a Job Description
Find relevant LinkedIn candidates from any job description. AI searches, evaluates, scores, and ranks profiles by skills, experience, seniority, and location.
Pricing
from $500.00 / 1,000 ai-evaluated candidates
Rating
4.0
(1)
Developer
YKA
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
3 days ago
Last modified
Categories
Share
LinkedIn Candidate Matcher — AI Candidate Search & Ranking
Find and rank relevant LinkedIn candidates directly from a Job Description.
LinkedIn Candidate Matcher analyzes your hiring requirement, searches for potentially relevant LinkedIn profiles, evaluates each candidate against the Job Description, and returns a ranked shortlist with an AI-generated match score from 0–100.
Instead of manually searching through dozens of profiles, provide the role requirements and let the Actor handle the initial candidate discovery and prioritization.
What this Actor does
Given a Job Description, this Actor:
-
Analyzes the Job Description (JD) using AI.
-
Generates an optimized candidate-search query.
-
Searches for potentially relevant LinkedIn profiles.
-
Validates and deduplicates discovered profiles.
-
Evaluates each candidate against the JD.
-
Scores each candidate from 0–100.
-
Explains why the candidate matched or did not strongly match.
-
Categorizes candidates into:
above_7050_to_70below_50
-
Ranks candidates from strongest to weakest.
-
Writes one structured record per candidate to the Apify Dataset.
-
Makes results available for export or API consumption.
Example
Suppose you're hiring a:
Junior Data Scientist — London, United Kingdom
with requirements including:
- 1–2 years of Data Science / ML / AI experience
- Strong Python
- Machine Learning fundamentals
- Pandas / NumPy / Scikit-learn
- PyTorch, TensorFlow, or similar
- Exposure to NLP
- Exposure to LLMs / Generative AI
- Embeddings and retrieval
- London-based / hybrid availability
Provide those requirements to the Actor.
The Actor searches for potentially relevant profiles and evaluates them against the role.
A real test run returned candidates across multiple match levels:
Rank Match Band────────────────────────────#1 85 above_70#2 85 above_70#3 65 50_to_70#4 65 50_to_70#5 65 50_to_70#6 65 50_to_70#7 65 50_to_70#8 45 below_50#9 45 below_50#10 45 below_50#11 45 below_50#12 35 below_50#13 35 below_50#14 35 below_50#15 25 below_50
The goal is not simply to find profiles.
The goal is to help recruiters identify which discovered profiles deserve attention first.
Input
The Actor accepts the following hiring information.
Job title
The target role.
Example:
Junior Data Scientist - London
Job description
Paste the complete Job Description.
Example:
Junior Data Scientist | London | £50k + BonusWe are looking for a Junior Data Scientist to join a growingtechnology team.The role involves:- Machine Learning, NLP and Generative AI- LLMs, embeddings and retrieval- Classification, regression and clustering- Semantic search and recommendations- Python-based ML pipelinesRequirements:- 1-2 years of Data Science / ML / AI experience- Strong Python- Solid Machine Learning fundamentals- Pandas, NumPy and Scikit-learn- PyTorch/TensorFlow or similar- Exposure to LLMs / Generative AI
Location
Example:
London, United Kingdom
Experience level
Example:
1-2 years
Candidate limit
Choose how many candidate profiles should be processed.
For example:
15
For testing, using a smaller candidate limit can reduce processing time and usage cost.
How it works
Job Description↓AI Requirement Analysis↓Search Query Generation↓LinkedIn Candidate Discovery↓Profile Validation↓Deduplication↓Candidate Evaluation↓AI Match Score↓Match Explanation↓Candidate Ranking↓Apify Dataset
Candidate evaluation
Each candidate is compared against the supplied Job Description.
Depending on the information available in the discovered profile, the evaluation may consider signals such as:
- Current job title
- Previous roles
- Relevant professional experience
- Career stage
- Seniority
- Skills
- Machine Learning / AI experience
- Industry relevance
- Location
- Role alignment
- Required technologies
- Other requirements identified from the JD
The Actor then assigns a match score between 0 and 100.
Match bands
Candidates are grouped into three bands.
| Score | Band | Meaning |
|---|---|---|
| 71–100 | above_70 | Strong potential match |
| 50–70 | 50_to_70 | Moderate potential match |
| 0–49 | below_50 | Lower potential match |
Candidates are automatically ranked from highest to lowest match score.
Why the candidate matched
Every candidate includes a why_matched field.
This provides short AI-generated explanations showing which available profile signals influenced the candidate's score.
For example:
{"rank": 1,"match_score": 85,"match_band": "above_70","why_matched": ["Candidate is currently based in London, matching the job location requirement.","Current Machine Learning role provides hands-on experience with ML pipelines and production models.","Career stage appears consistent with the early-career requirement."]}
The explanation can also identify apparent gaps.
For example:
{"match_score": 45,"match_band": "below_50","why_matched": ["Relevant academic or internship experience is present.","Professional experience appears below the requested 1-2 years.","Current seniority does not strongly align with the requirement."]}
This makes it easier to understand why one candidate was ranked above another.
Output
Each candidate is stored as an individual record in the Apify Dataset.
Example:
{"rank": 1,"candidate_name": "Candidate Name","match_score": 85,"match_band": "above_70","profile_title": "Candidate Name","linkedin_url": "https://linkedin.com/in/example","why_matched": ["Candidate location matches the job requirement.","Current role provides relevant Machine Learning experience.","Career stage aligns with the Junior role."],"job_id": "01","evaluated_at": "2026-08-23T17:47:06.986Z"}
Output fields
| Field | Description |
|---|---|
rank | Candidate's final ranking |
candidate_name | Candidate name |
linkedin_url | Discovered LinkedIn profile URL |
match_score | AI-generated match score from 0–100 |
match_band | Candidate match category |
why_matched | Reasons supporting the score |
job_id | Identifier associated with the search |
evaluated_at | Candidate evaluation timestamp |
profile_title | Profile title/name returned by the search |
Example: strong candidate
A candidate may receive a high score when multiple important requirements align.
Match Score: 85/100Band: above_70✓ London location✓ Relevant Machine Learning role✓ ML pipeline experience✓ Appropriate early-career profile✓ Relevant technical background
Example: moderate candidate
A candidate may have relevant experience while missing some requirements.
Match Score: 65/100Band: 50_to_70✓ London location✓ AI/ML-related role✓ Relevant technical exposure△ Limited professional experience△ Some required skills not visible in available profile data
Example: weak candidate
The Actor can also identify profiles that should receive lower priority.
Match Score: 35/100Band: below_50✓ Data Science experience✗ Location mismatch✗ Experience requirement mismatch✗ Limited evidence for some required technologies
This prevents candidate discovery from becoming a simple collection of LinkedIn URLs.
Use cases
Recruiters
Turn a Job Description into an initial candidate shortlist.
Job Requirement↓Candidate Matcher↓Ranked Candidates↓Recruiter Review
HR teams
Use the Actor to reduce manual effort during the first stage of candidate sourcing.
Instead of reviewing every discovered profile equally, start with candidates that appear most aligned with the requirement.
Recruitment agencies
Process requirements from multiple clients.
Client JD↓Run Actor↓Ranked Candidate Dataset↓Recruiter Review↓Candidate Outreach
Recruiting automation developers
Use the Actor as a candidate discovery and ranking component.
New Job Requirement↓Run Actor through API↓Candidate Dataset↓ATS / CRM / Google Sheets↓Recruiter Review
Exporting results
Candidate results are stored in the Apify Dataset.
They can be consumed through supported Dataset exports and APIs for downstream workflows.
Possible destinations include:
- Google Sheets
- ATS platforms
- CRM systems
- Internal HR tools
- Recruiting dashboards
- n8n
- Make
- Zapier
- AI agents
- Custom applications
API & automation
The Actor can also be run programmatically through Apify.
This makes it possible to build workflows such as:
ATS receives new job↓Trigger Actor↓Discover candidates↓Score candidates↓Return top candidates↓Store results↓Recruiter reviews shortlist
Important limitations
Candidate scores and explanations are AI-generated estimates based on the information available during candidate discovery.
A high score does not guarantee that a candidate:
- Meets every requirement
- Possesses every inferred skill
- Is currently looking for employment
- Is interested in the position
- Is available for the role
- Is eligible to work in the required location
- Will pass an interview
- Is ultimately suitable for employment
Some professional information may be incomplete, outdated, ambiguous, or unavailable.
The Actor should therefore be used for:
Candidate discovery → prioritization → human review
and not as an automated final hiring or rejection system.
Responsible use
Users are responsible for ensuring their use of the Actor and its output complies with applicable laws, privacy requirements, employment regulations, platform terms, and anti-discrimination requirements.
Do not use protected or sensitive personal characteristics to make employment decisions.
Human review is recommended before contacting, interviewing, rejecting, or making employment decisions involving candidates.
FAQ
What do I need to provide?
Provide:
- Job title
- Job description
- Location
- Experience level
- Candidate limit
The Actor handles candidate discovery, evaluation, scoring, and ranking.
Do I need to create LinkedIn search queries myself?
No.
The Actor generates candidate-search queries based on the supplied hiring requirement.
Does the Actor return LinkedIn profiles?
When a valid LinkedIn profile is discovered, its URL is returned in the candidate record.
How are candidates scored?
Candidate information available during discovery is evaluated against requirements extracted from the Job Description.
The Actor assigns a score between 0 and 100.
What does above_70 mean?
It indicates that the candidate appears to have relatively strong alignment with the supplied requirement based on available information.
It does not guarantee suitability.
Why did a candidate receive a low score?
Potential reasons can include:
- Location mismatch
- Insufficient experience
- Excessive seniority
- Job-title mismatch
- Missing technical skills
- Limited evidence of relevant experience
- Industry mismatch
Can the Actor detect overqualified candidates?
The evaluation can consider seniority and experience alignment.
For example, a Senior Data Scientist may receive a lower score when the requirement specifically calls for a Junior Data Scientist with 1–2 years of experience.
Can I export the results?
Yes.
Candidate records are stored in the Apify Dataset and can be exported or accessed programmatically.
Can I connect this Actor to my ATS?
The structured output and Apify API make it possible to incorporate the Actor into external recruiting workflows. The exact integration depends on the target ATS.
Should I automatically reject candidates with low scores?
No.
Scores should be treated as prioritization signals.
Human review should be used for hiring and rejection decisions.
Who is this for?
This Actor is designed for:
- Recruiters
- HR professionals
- Talent acquisition teams
- Recruitment agencies
- Staffing companies
- Sourcing specialists
- HR technology developers
- Recruiting automation builders
LinkedIn Candidate Matcher
Job Description → Candidate Discovery → AI Evaluation → Ranked Shortlist
Spend less time searching through profiles and more time reviewing the candidates most relevant to your requirement.