LinkedIn Talent Insights on a Budget: Spot Hiring Sprees & Poach Windows
Enterprise tools like LinkedIn Talent Insights and Recruiter are excellent and expensive — easily five figures a year. But a surprising amount of what makes them valuable for recruiting is readable from public company data: how fast a company is growing, where, and — the recruiter's favorite signal — when it's shrinking. Hiring tells you who's investing; contraction tells you whose people might be open to a call.
This guide builds a lightweight talent watchlist that tracks competitor headcount over time and flags two moments that matter to recruiters: aggressive hiring (a company scaling a function) and headcount drops (a poaching window). Code in JavaScript.
This is the recruiting-focused cousin of two related guides: tracking competitor growth as strategy and enriching B2B leads. Same endpoint, different lens.
Why headcount is a recruiting signal
- A function scaling fast (say, engineering doubling) means a company is building — and competing with you for the same talent pool, so you'll want to move quickly and sharpen your pitch.
- A headcount drop — layoffs or attrition — is the clearest poaching window there is. People who were happy last quarter are suddenly open to conversations.
- Steady state tells you to deprioritize; nothing's moving.
The honest limit: LinkedIn's public company page gives an employee count (often a range or an approximate number) and the count of profiles listing the company as employer. It's a reliable trend, not a precise headcount, and department-level splits aren't guaranteed. Track direction and rate of change, not exact bodies.
Step 1: Capture company vitals
const API_KEY = process.env.SOCIAVAULT_API_KEY;
const BASE = "https://api.sociavault.com/v1/scrape/linkedin";
async function getVitals(companyUrl) {
const res = await fetch(
`${BASE}/company?url=${encodeURIComponent(companyUrl)}`,
{
headers: { "x-api-key": API_KEY },
},
);
const json = await res.json();
if (!json.success) return null;
const c = json.data;
return {
name: c.name,
headcount: c.employee_count ?? c.employeeCount ?? c.staff_count ?? null,
followers: c.follower_count ?? c.followerCount ?? null,
capturedAt: new Date().toISOString().split("T")[0],
};
}
Note the defensive reads on the headcount field — log a real response once and confirm the exact key before you rely on it.
Step 2: Store snapshots and compute the delta
A single reading isn't a signal; the change is. Persist snapshots (a JSON file to start) and compare.
import fs from "fs";
const STORE = "talent-watchlist.json";
async function track(companyUrl) {
const v = await getVitals(companyUrl);
if (!v) return;
const db = JSON.parse(
fs.existsSync(STORE) ? fs.readFileSync(STORE, "utf8") : "{}",
);
const prev = (db[v.name] || []).at(-1);
(db[v.name] ||= []).push(v);
fs.writeFileSync(STORE, JSON.stringify(db, null, 2));
if (prev && prev.headcount && v.headcount) {
const pct = ((v.headcount - prev.headcount) / prev.headcount) * 100;
if (pct >= 8)
console.log(
`🚨 ${v.name}: +${pct.toFixed(0)}% headcount — hiring spree, expect talent competition`,
);
else if (pct <= -8)
console.log(
`🎯 ${v.name}: ${pct.toFixed(0)}% headcount — possible layoffs, POACH WINDOW`,
);
else console.log(`➡️ ${v.name}: steady (${pct.toFixed(1)}%)`);
} else {
console.log(`📋 ${v.name}: baseline captured`);
}
}
Step 3: Run it on a schedule
Point it at your competitor set and run monthly (headcount moves slowly, so daily adds cost without signal):
const watchlist = [
"https://www.linkedin.com/company/openai",
"https://www.linkedin.com/company/anthropic",
];
for (const url of watchlist) await track(url);
The first run sets baselines; from the second run on, you get hiring-spree and poach-window alerts automatically. Wire those to Slack and your recruiting team gets a heads-up the moment a competitor's headcount moves — long before any press release.
Frequently Asked Questions
Can I get LinkedIn talent insights without a Recruiter license?
You can get the core hiring signals — whether a company is growing, holding steady, or shrinking — from public company-page data by tracking headcount over time. It won't replace everything Recruiter does, but for spotting hiring sprees and poaching windows, snapshotting the public count on a schedule is enough and far cheaper.
How do I know when to poach a competitor's employees?
Watch for headcount drops. A decline often signals layoffs or rising attrition, which is exactly when employees become open to new opportunities. Tracking the trend lets you time outreach to that window rather than cold-calling a stable, happy team.
Is the employee count exact?
No — it's a public estimate, frequently shown as a range, plus the number of profiles listing the company as employer. It's a dependable indicator of direction and rate of change over time, not a precise payroll figure. Track the trend, not the exact number.
Can I see which departments a company is hiring for?
The public company page centers on total headcount, so department-level breakdowns aren't guaranteed from it alone. You can approximate function-level growth by also watching the roles a company posts publicly, but treat any department split as an estimate.
How often should I capture snapshots?
Monthly is ideal — headcount changes slowly, so more frequent checks mostly add cost without new signal. Monthly snapshots give clean quarter-over-quarter trends and reliable spike detection.
Is tracking competitor headcount allowed?
Reading publicly visible company-page data is standard competitive and recruiting research. Stay on public information, respect rate limits, avoid anything behind a login, and handle any personal data responsibly under applicable privacy laws.
The bottom line
Hiring is strategy you can see early, and shrinking headcount is a recruiter's open door. Snapshot competitor headcount monthly, alert on the swings, and you'll know when to compete harder for talent — and when to go poach it — without an enterprise license.
Want to build your talent watchlist? Start free with SociaVault with 50 credits.
Found this helpful?
Share it with others who might benefit
Ready to Try SociaVault?
Start extracting social media data with our powerful API. No credit card required.