Building the Source-Company Universe for a Live Search
You will convert one role brief into a ranked, pool-sized, clearance-flagged list of source companies that feeds candidate search with no rework.
At search kickoff you have a brief and nothing else, and the temptation is to jump straight to a Boolean string. Resist it. Before you search for a single person, you need to decide which companies to pull them from, and that decision deserves its own ordered procedure. This guide is for in-house recruiters, sourcers, talent leaders, and founders running their own hiring, and it delivers one thing: a method that converts a role brief into a ranked, pool-sized, clearance-flagged list of source companies that feeds candidate search without rework. It stops exactly where the talent-map and candidate-search playbooks pick up.
What a source-company universe is, and why it is not a longlist
A source-company universe is the finite, scoped set of employers you will pull candidates from, built and sized before any names are gathered. It is a different object from the people longlist, and conflating the two is the first way searches get mis-scoped.
The sizes diverge sharply. Company lists cluster near 40 organizations. People longlists run much larger and scale with seniority. If you build one list in your head and treat it as both, you will either research 300 companies you cannot cover or size the search from 40 names when the role needs 200.
The math that connects them is the step most practitioners skip. A C-suite or VP map of 100 to 300 names can come from only 20 to 50 companies, which means each company must yield roughly 5 to 6 names. That ratio is exactly what the pool-sizing step later in this guide makes visible. Without it, you have a company list and a name target that do not reconcile.
The universe is not a brainstorm and it is not a wish list. A useful target list begins with clear criteria, not company names, and every row ends with a pool estimate and a clearance status. Those two disciplines, criteria-first and sized-before-committed, are what separate a universe from a list of logos.
How large the universe should be
A managed company list sits near 40 organizations, and talent-mapping guidance targets the 20 to 50 companies most likely to employ each high-impact capability today. Those two ranges are the spine of your sizing decision. Everything else adjusts around them.
One practitioner floor and ceiling is worth memorizing: fewer than 10 companies leaves you too exposed if a few stop hiring, while more than 30 makes it hard to research each one deeply. That is a research-capacity ceiling, not a quality ceiling. If you can genuinely cover 50, size up; most solo recruiters cannot.
The companion numbers are for the people side, so you know what the universe must feed.
| Object | Range | Source |
|---|---|---|
| Company list (managed) | ~40 | Duke 2-hour method |
| Company list (talent map) | 20-50 | Pin |
| People longlist (general) | 50-100 | Pin |
| People longlist (retained) | 50-80 | Recruiterflow |
| People map (C-suite/VP) | 100-300 | Work Insiders |
Read this table as two blocks. The top two rows are what you are building here. The bottom three are what the universe hands off to. When you pick a company count, check it against the longlist the role actually needs, divided by a realistic per-company yield of 5 to 6 names.
The criteria that define scope at kickoff
Scope is set by a fixed set of dimensions, written down before any company name appears. The documented retained-search dimension set is industry including both direct and adjacent, company size matched to the role, growth stage, geography, culture, and reputation. Lock these first.
These dimensions flow directly from the intake conversation, where the recruiter and hiring manager align on the business goal of the hire, the technical skills and domain expertise, leadership style and cultural fit, and career stage. Get the intake wrong and every downstream filter inherits the error.
Brief to committed universe
- IntakeAlign on goal, skills, seniority, career stage
- CriteriaFix industry, size, stage, geography, tier
- SeedList 8 to 15 direct competitors
- ExpandCAVAC, adjacent layers, feeder tracing to 25 to 50
- SizeFiltered pool count per employer
- Rank and flagTier, then clear or block each row
The single dimension that moves the universe most before any other lever is geography. The same role returns 472 profiles in the US and 159 in Germany in Refolk's index, a 2.97 to 1 ratio. That gap is member density and market size, not candidate quality. A recruiter who skips the geography decision over-weights whichever market they happen to sit in.
The build procedure, in order
Run these eight steps in sequence. Each has an owner, a rough duration, and a done condition. The procedure front-loads criteria and defers sizing and clearance, which is the ordering that keeps you from committing companies you cannot reach.
Seed, expand, size, rank, flag
- Run intake and define the roleAlign with the hiring manager on the hire's business goal, must-have skills, seniority, and target career stage in 30 to 60 minutes. Done = a one-paragraph ideal-candidate profile that drives targeting.
- Set sourcing criteria before any namesFix industry including adjacent, size band, growth stage, geography, and tier in writing, in 20 to 30 minutes. Done = a written filter set produced before a single company name is listed.
- Seed with direct competitorsList the 8 to 15 obvious employers with similar products or technologies and strong talent in that function, in about 30 minutes. This is the center of the hub, not the finished list.
- Expand beyond direct competitorsRun CAVAC on each seed, layer adjacent industries, and trace feeder and destination companies, over one to two hours. Done = 25 to 50 companies.
- Size each company's poolRun a filtered pool count per employer and record the estimate plus a mobility signal, over one to two hours. Done = every row carries a number, treated as an estimate.
- Rank and tierSort by reachable yield and criteria fit, assigning tiers with roughly a 70 percent known-ground and 30 percent wildcard mix, in 30 to 45 minutes. Done = an ordered list defensible against the brief.
- Apply off-limits and clearance flagsWalk the list past the client to flag conflicts and non-compete sensitivities, marking each row clear, flagged, or blocked, in about 30 minutes. Done = no un-vetted company remains.
- Finalize the handoff schemaConfirm each row carries company, tier, criteria-fit, pool estimate, mobility signal, and off-limits status, in about 20 minutes. Done = a list that feeds candidate search without rework.
One honest caveat on ordering. Public sources disagree about where sizing and clearance belong. Retained methodology front-loads client conflict input at intake, while list-build guides treat sizing and vetting as a later qualification pass. I place both after expansion because you cannot size or clear companies you have not yet named, but if your client relationship surfaces conflicts naturally at intake, capture them early and confirm at step seven.
Expanding beyond direct competitors
Direct competitors are the seed, never the finished list, because a list of pure competitors ignores transferable and feeder sources. Four documented methods widen the universe, and a complete expansion uses all of them rather than just one.
- CAVAC hub-and-spoke. Put a seed company at the center and radiate out to its clients, competitors, and vendors. Then take one of those outer companies, drop it into the center of a fresh template, and iterate. This is the most systematic of the four.
- Adjacent-industry layering. List your direct competitors, then add adjacent industries where the needed experience transfers easily. A common talent-mapping ratio is ten direct competitors and five adjacent industries.
- Feeder and destination tracing. Use talent-flow to find where your top performers came from, which are feeder organizations, and where they go when they leave, which are destinations. Both tiers are legitimate sources.
- Alumni-network tracing. Follow the diaspora from a known strong employer to the companies its ex-staff now cluster in.
Why expand at all, beyond covering your bases? Because rare skills force it. Skills-based matching rather than title matching expands the reachable pool roughly 6 times, and about 8.2 times for AI positions. The rarer the specialization, the wider the company universe has to be to contain enough people.
Expansion is the stage where Refolk removes the most friction, because tracing feeders and destinations by hand across public profiles is slow and error-prone. Asking for the role plus the adjacent startups its alumni move to collapses steps three and four of the procedure into one query, and it does so across public LinkedIn and GitHub records rather than a single platform's view.
Direct competitors are the center of the hub, never the finished circle you hand off.
Sizing each company's reachable pool
Every company row must carry a pool-size estimate before it is committed. A list of 40 companies with no sizing column is a wish list, not a universe. The countable signal is a filtered pool count per employer, run in a talent-analytics tool.
A good pool read records three things per company: pool size, meaning how many members match the criteria; a mobility signal, meaning members who changed companies in the past 12 months; and, where available, a hiring-difficulty score. That difficulty score matters more than raw headcount, because it is derived from InMail volume over a rolling 12-month window, making it a demand-adjusted figure. A company with a large pool but saturated outreach is a worse source than its raw count suggests. Rank by reachable yield, not gross pool.
Two cautions govern how you read every count. First, counts are estimates, not exact figures, so a precise-looking number is false precision and worth cross-checking against a second source. Second, filters collapse counts fast, and the collapse is non-linear.
| Query | Matching profiles |
|---|---|
| Platform Engineer + Kubernetes, US | 472 |
| Platform Engineer + Rust, US | 1 |
| Platform Engineer + Kubernetes + Director, US | 0 |
| Derived: Kubernetes-to-Rust drop | 99.8% |
That table, from Refolk's index, is the Q3 caution quantified. Swapping one common skill for one rare skill drops the US pool from 472 to 1. Adding a seniority filter on top of a title takes it to zero. The mechanism is that rare skills are power-law distributed, which is exactly why skills-based matching expands pools so dramatically and why specialization forces you to widen the company universe rather than tighten the filter.
Geography stacks on top of this. The same role across two countries shows how much the universe moves before any skill or seniority filter is even applied.
| Query | Matching profiles | Top employer |
|---|---|---|
| Platform Engineer + Kubernetes, US | 472 | Apple |
| Platform Engineer + Kubernetes, Germany | 159 | SAP |
| Derived: US:Germany ratio | 2.97 : 1 | - |
Ranking, tiering, and clearance
Rank by reachable yield and criteria fit, then tier, then clear each row with the client before anything is committed. These three passes turn a sized list into a handoff-ready universe.
One documented tiering mix is roughly 70 percent companies where you have a real connection or genuine expertise, and 30 percent wildcards worth monitoring. That ratio keeps the list defensible without making it timid. Tier one is where you start outreach; the wildcards are where you watch for movement.
Clearance is the pass most in-house teams under-weight because it originates in retained search. An off-limits clause is a feature of retained search where a firm under contract agrees not to approach a client's employees for a set period, conventionally at least one year after a C-level assignment, and it is not usually applied to contingent work. In the build, client input is where conflicts surface: the client flags competitors or companies with non-compete sensitivities and vets the list for conflicts of interest.
Off-limits scales with firm size in a way that matters even if you never sign a retained contract. The two largest search firms each carry about 36,000 hands-off restrictions over any given two-year period, which locks them out of exactly the competitor talent pools clients most want. An in-house team building its own universe carries none of that drag, which is a structural advantage worth naming. But the lesson transfers: apply your conflict pass before handoff, not after outreach has begun, or you burn work when competitor talent goes off-limits mid-search.
Ranking source companies by yield and reachability
The handoff schema
The universe is finished when every row carries a fixed set of fields and a reader can run candidate search against it without asking a question. No single public schema exists for this, so the one below is built from what talent-map outputs record plus the build steps above.
Each row carries: company, tier, criteria-fit, pool estimate, mobility signal, and off-limits status. Those six fields are the minimum that lets the next stage proceed without rework.
company | tier (1/2/watch) | criteria-fit (direct/adjacent/feeder) | pool_estimate (number, source, date) | mobility_signal (% changed co. in 12mo) | off_limits (clear/flagged/blocked) Acme Cloud | 1 | direct | 472, Refolk index, pulled Mar | 14% | clear Beacon SaaS | 2 | adjacent | 210, Refolk index, pulled Mar | 9% | flagged (client non-compete) Northwind Infra | watch | feeder | 61, second-source est, pulled Mar | 22% | clear
One row per company. Keep cells short; the pool estimate is an estimate, so note the source and date you pulled it.
Before you call the universe done
- Every row names one of direct, adjacent, or feeder, and the list contains at least one of each
- Every row carries a pool estimate with its source and pull date
- Every row carries a mobility signal, not just a gross headcount
- Geography is fixed in the criteria and consistent across all pool counts
- No filter in any pool count stacks nice-to-haves on top of must-haves
- The client has flagged every row clear, flagged, or blocked
- The company count reconciles with the people longlist target at 5 to 6 names per company
- No title-only filter is doing work that a skill filter should do
How this goes wrong
Most broken universes fail in one of seven predictable ways. Each has a tell and a check. Learn to recognize the false positive, because the dangerous failures look like facts about the market rather than mistakes in your filter.
| Failure mode | What the false positive looks like | How to check |
|---|---|---|
| Title-locking the universe | "No talent exists" from a zero count | Search skills, not titles; expands ~6x (Fact 10) |
| Over-filtering the pool count | A tiny count read as market scarcity | Relax to must-haves only and re-count |
| Treating tool counts as exact | A precise number trusted as truth | Cross-check against a second source |
| Direct-competitors-only | A tidy competitor list that misses sources | Confirm each row has an adjacent and a feeder tier |
| Applying off-limits too late | Competitor talent going off-limits mid-search | Run the client conflict pass before handoff |
| A list without a sizing column | 40 logos that feel like progress | Confirm every row carries a number |
| Big-firm list under restrictions | A huge network that cannot touch your targets | Check the off-limits roster against your seed |
Two of these deserve extra weight. Title-locking is seductive because a zero result reads as hard evidence. In Refolk's index, Platform Engineer plus Director seniority returns zero, not because no such leaders exist but because directors are simply not titled that way. The title-level and seniority filters are mutually exclusive. The fix is to source on skills and scope, not on the exact string in the job title.
Over-filtering produces the same lie at a larger scale. Stacking every nice-to-have shrank one documented pool from 62,921 to 8. If you read that 8 as scarcity, you will widen the company universe to chase people who were always there behind an overbuilt filter. Strip to must-haves, re-count, and only then decide whether the universe is genuinely too thin.
Keeping the universe current
A source-company universe is accurate on the day you build it and decays from there, so treat it as a living document rather than a one-time deliverable. Two things move underneath it: pool counts and clearance status.
Pool counts drift as people change jobs, which is why the mobility signal belongs in every row. A company with 22 percent annual mobility is a different source six months from now than one at 9 percent. Re-pull counts when a search runs long, and always record the pull date so a stale number is obvious on sight. Because counts are estimates anyway, a re-pull is cheap insurance against building outreach on a figure that has moved.
Clearance status changes even faster, because every new client engagement can add a roster to the no-touch list. If you work alongside colleagues running retained searches, check the off-limits roster against your seed before you rely on any shared list. When a company flips from clear to flagged mid-search, move it to tier two and redirect effort to a cleared source rather than pushing on and burning goodwill.
When the universe is sized, ranked, and cleared, you are done here. The next move is the talent-map and candidate-search work, which takes this schema as its input and turns reachable companies into named, qualified people. The discipline that makes the handoff clean is the one this guide has repeated: criteria before names, a number on every row, and clearance before commitment.
Questions practitioners ask
How many companies should be on a sourcing list?
Managed company lists cluster around 40 organizations, and talent-mapping guidance targets the 20 to 50 companies most likely to employ each capability. One practitioner floor and ceiling is useful: fewer than 10 leaves you exposed if a few stop hiring, and more than 30 makes it hard to research each one deeply. Size up for rare skills, since one specialization filter can collapse a pool by over 99 percent.
What is the difference between the company list and the people longlist?
They are different objects with different sizes, and conflating them mis-scopes the search. Company lists sit near 40 organizations, while people longlists run 50 to 100 names for general searches, 50 to 80 for retained work, and 100 to 300 for a single C-suite or VP map. A 100 to 300 name executive map drawn from 20 to 50 companies implies each company must yield roughly 5 to 6 names, which is the pool-sizing math most lists skip.
How do I expand beyond direct competitors?
Four documented methods: the CAVAC hub-and-spoke model that pulls each seed's clients and vendors into the center of a fresh template, adjacent-industry layering where skills transfer, feeder and destination tracing through talent-flow analysis, and alumni-network tracing. A quick test is whether every row names at least one adjacent-industry source and one feeder tier. Skills-based matching rather than titles expands the reachable pool roughly 6 times, and about 8.2 times for AI positions.
Are tool-based pool counts exact?
No. Talent-analytics tools return estimates of pool size rather than exact figures, so a precise-looking number is false precision. Cross-check a surprising count against a second source before you commit it. Also remember that over-filtering collapses counts fast: one documented Boston pool fell from about 62,921 Java professionals to 8 once half the requirements in the req were applied.
When should off-limits and clearance flags be applied?
Off-limits is a retained-search feature where a firm under contract agrees not to approach a client's employees, conventionally for at least one year after a C-level search. Public sources disagree on exact sequencing, but the defensible reading is a client-input vetting pass applied before the list is committed. Applying it after candidate outreach burns work, so run the conflict pass before handoff.
Why does the same role return such different counts across countries?
Geography roughly triples the universe before any other lever. In Refolk's index the same Platform Engineer plus Kubernetes query returns 472 profiles in the US versus 159 in Germany, a 2.97 to 1 ratio driven by member density and market size, not candidate quality. A geo-blind list over-weights whichever market the recruiter happens to live in, so fix geography in your criteria step.
Try it on the search you came here for
Stop building boolean strings. Just describe the person.
Type one sentence. I plan the search, read GitHub, public LinkedIn and Crunchbase records, and the open web as it is right now, and hand back a ranked list with the reason next to every name.
01Describe them
One plain sentence. Role, city, stack, stage, whatever matters to you.
02I read the web live
GitHub, public LinkedIn and Crunchbase records, the open web. Not a database that went stale last quarter.
03You read the shortlist
Ranked, with the reasoning under every name. Open a profile, ask a follow-up, narrow it down.
- Staff backend engineers in NYC who shipped Rust in production
- Series A fintechs in SF under 50 people, growing headcount this year
- Maintainers of fast-growing Rust web frameworks on GitHub
- No boolean, no filters, no seat to buy. One box.
- Read at search time, so a profile updated yesterday counts today.
- Every step visible as it runs, every name with its reason.
500 free credits on sign-up. No card, no demo call. See real searches.