Continuous lead intelligence system for a B2B SaaS sales team
Daily multi-source enrichment of 40k+ accounts, intent signals, decision-maker mapping. Hands-off since Q2 2024.
8-person headhunting agency, specialty: senior IT. Manual sourcing was killing 4-6h daily per recruiter. AI scoring + multi-source aggregation freed the team to work with candidates.
8-person headhunting agency, focus: senior backend / DevOps / ML engineers in EU. Annual revenue ~€1.4M, 100% contingency (payment only on placement, fee ~20-25% of annual salary).
Sourcing model in 2025: every recruiter spent 4-6h daily on LinkedIn Recruiter — boolean searches, manual profile review, copying to Notion talent pool. Rest of day: outreach, candidate calls, client presentations.
Bottleneck: a recruiter sourced ~30-50 profiles daily manually, of which ~5-8 were real quality matches. Quality bar = 90%+ match on hard skills + senior level + location/comp range. Agency growth pace limited by sourcing capacity, not lack of roles.
Setup in 5 weeks. Three-stage pipeline:
<strong>1. Multi-source ingestion</strong>: LinkedIn business pages (authorized recruiter accounts), GitHub (public profiles + commit activity per language), Stack Overflow (tag expertise + reputation), Twitter (tech engagement). Daily refresh, ~3000 profiles added/day.
<strong>2. ICP fit scoring</strong>: per open role the client defines ICP (tech stack required, seniority signals, location flexibility, comp range). AI scoring (Claude Sonnet) rates every sourced candidate vs ICP — gives 0-100 score + reasoning. Threshold 75+ → passes to recruiter review.
<strong>3. Deduplication + enrichment</strong>: profile match across sources (LinkedIn URL + GitHub username + email hash). Enrichment: tenure tracking (job changes last 2 years), tech stack evolution, public contributions.
Integration: direct push to Notion talent pool (custom view per role) + Slack alerts for recruiter on new high-fit candidates. Zero change to their existing workflow.
Stack: TypeScript, Playwright for LinkedIn with residential proxy, GitHub API, SO API, PostgreSQL, Claude Sonnet API (~€120/month tokens), Notion API, Slack bot. Hosting: 1 mid-tier VPS €60/month.
Per-recruiter capacity: 5-8 quality candidates/day → 20-30/day (4× growth). Of which ~12-18 daily are high-fit (75+ score) — recruiter does outreach, 3-5 reply rate per day (vs ~1-2 before).
Time reclaimed: 4-6h/day manual sourcing → 1-2h daily reviewing AI-flagged top scores. Freed 15-20h weekly per recruiter for active candidate work — fundamentally different use of time.
Revenue impact: agency increased hire rate from ~12 placements/quarter to ~22 in the first quarter post-deployment. Annual run-rate +60% YoY on same headcount.
AI scoring false positive rate: ~18% in month 1 (too liberal threshold), tuned to ~6% in month 3 (recruiters do not waste time on bad matches). Client tracks accuracy in a spreadsheet — system improves monthly.
System operating 7 months. Zero critical incidents, 2 LinkedIn account temporary blocks (typical frequency for active sourcing), both resolved <24h. Client negotiating extension scope to European talent pools (Germany, UK).
Daily multi-source enrichment of 40k+ accounts, intent signals, decision-maker mapping. Hands-off since Q2 2024.
Resilient scraping with anti-bot routing, SKU normalization and 5-minute price-change webhooks into the client's repricing engine.
Goal-driven agent crawling filings, press, social and internal sources — producing structured analyst briefings every morning before 7 AM ET.
If you recognise pieces of this case study in your own situation — write. We usually see in the first call whether it is hours-per-week scale or months of infrastructure.