# The Adjacent-Pool Substitution Score: Tap, Pilot, or Rule Out a Source

*You can take one scarce skill, map its adjacent pools from public data, and grade each to a defensible tap, pilot, or rule-out verdict.*

- Canonical URL: https://www.refolk.ai/guides/adjacent-pool-substitution-score
- Pillar: Market and talent intelligence
- Format: Framework
- Published: 2026-10-09
- Last reviewed: 2026-10-09
- Reading time: 16 min
- Keywords: skill adjacency sourcing, adjacent talent pool, where to source a scarce skill, skill adjacency matrix, substitute talent pool scoring

## Key takeaways

- In Refolk's index, 232 US machine-learning engineers already list NLP as a skill versus 77 people holding an NLP-engineer title, so 3.0x more usable capability sits under the adjacent title than under the target one.
- Adjacency is cheap and depth is the real constraint: the US ML pool is 133.6x the US NLP target pool, but only 2.26% of it already demonstrates NLP, so tap verdicts live or die on transition effort, not overlap score.
- The 70% overlap rule is a vendor heuristic; peer-reviewed work defends a 50% floor and warns that 61% coverage at 36% transfer is career reinvention, not a transition.
- Geography multiplies depth, not just competition: the same title is 8.1x deeper in the US than Germany, so a pool that is rule-out in one market can be tap in another at identical transferability.
- Competition erodes a deep pool faster than scarcity does: at 3:1 demand and 70% counter-offers, a nominally deep pool converts like a thin one and AI/ML roles run to 89 days to fill.
- Never cite one time-to-fill figure as fact; published numbers for AI roles range from roughly 60 to 142 days, so report a range and name the sources.

You cannot staff a scarce skill from the obvious pool, and you need to decide which adjacent pools are worth sourcing from instead. This guide is for talent-intelligence analysts, strategy and research teams, and operators sizing a market. It gives you a repeatable way to take one scarce skill, map its adjacent pools from public data, and grade each on four dimensions to a defensible tap, pilot, or rule-out verdict.

Most published skill-adjacency content is written for internal learning and development: who already inside the company could reskill into a role. That is a different job. Here the question is external sourcing. You are not asking who can be retrained; you are asking which outside pool is worth spending sourcer hours on. That shifts the scoring from "which skills are related" to sourceability: how deep the pool is after filtering, how hard the transition is, and how badly everyone else is already raiding it.

## What the Adjacent-Pool Substitution Score decides

The score answers one question: for a named scarce skill, is a given adjacent pool worth sourcing from now, worth a small pilot, or not worth the sourcer's time. It grades four dimensions - transferability, depth, transition effort, and competition - and resolves them into one of three verdicts.

An adjacent talent pool is a group of people under a different job title or occupation who hold most of the competencies your scarce role needs. The substitution score treats "most" as measurable and ranks pools instead of just naming them. The reason this matters is simple arithmetic: the pool you want by title is often tiny, while the pool that can do the work is large but hidden under other titles.

**3.0x - More target-skill capability under the adjacent title than the target title**

In Refolk's index, 232 US ML engineers list NLP as a skill versus 77 who hold an NLP-engineer title.

That ratio is the whole case for adjacency sourcing. If you only search the target title, you miss three quarters of the people who can already do the job. The dimensions below exist to keep you from the opposite error: treating every nominally related pool as a real source.

The four dimensions are not equal. Transferability tells you whether the pool can do the work in principle. Depth and competition tell you whether you can actually reach and close anyone. Transition effort tells you how long and how expensive the bridge is. A pool can score well on one and still be a rule-out.

| Dimension | What it measures | What a low score means |
|---|---|---|
| Transferability | Shared skills at similar proficiency | The pool cannot do the work without real retraining |
| Depth | Hireable supply after filters | You will run out of people before you fill the role |
| Transition effort | Weeks versus quarters to productive | The bridge is too long or too costly to build |
| Competition | Demand, crowding, counter-offers | Everyone already raids this pool; you lose on close |

## Which public data makes adjacency defensible

Three families of public data support adjacency, and each measures something different. Use them together, because any one alone produces a known class of error.

The first is O*NET, the US Department of Labor database describing about 900 occupations and rating 35 skills on a 1 to 5 importance scale from trained-analyst data. Researchers build adjacency from it by co-occurrence: the similarity of two occupations is derived from the number of skills they share, keeping an occupation-skill association only when both importance and level scores exceed the cross-occupation average. O*NET measures expert-rated importance, so it is stable but coarse and slow to reflect new roles.

The second is profile and posting co-occurrence. A co-occurrence score measures how often two skills appear together in member profiles, computed with cosine similarity or the Jaccard index. Researchers have built validated skill networks from 65 million UK job postings. Profiles measure revealed co-holding - what people actually list together - while postings measure what employers demand together. These are current and granular but noisy.

The third is curated taxonomies. ESCO, the EU skills and occupations framework, lists 13,485 unique skills across 2,942 job profiles, and the WEF Global Skills Taxonomy covers the same ground at a higher level. Taxonomies give you clean, comparable skill labels to reconcile the first two sources against.

> **Rule:** Triangulate the source, never trust one
>
> Use O*NET for stable occupation structure, profile and posting co-occurrence for current reality, and a taxonomy to reconcile labels. A single source produces a predictable error: O*NET misses new roles, co-occurrence inflates popular skills, taxonomies lag demand.

The documented anchor case comes from Gartner TalentNeuron. Analysis of billions of job postings shows NLP skills are closely related to Python, topic modeling, and machine learning, so an employee proficient in machine learning, Python, or TensorFlow is more likely to learn NLP quickly even without prior NLP role experience. That is adjacency sourcing stated as a measurable claim, and it is why the mapping below starts from the ML pool rather than the NLP pool.

## Scoring transferability without fooling yourself

Transferability is the share of the target role's competencies the pool already holds at similar proficiency. Compute it as shared skills at similar proficiency divided by total unique skills across both roles. The output is a percentage, and the percentage has an honest cut line and a dishonest one.

The dishonest cut line is the vendor "70% rule": have 70% of the required skills and close the remaining 30%. Vendors anchor on this, where an adjacency score above 0.6 signals a strong candidate within 2 to 3 months and 0.4 to 0.6 suggests 4 to 6 months. The honest correction comes from peer-reviewed work, which defends a 50% majority-transfer floor and warns that permissive thresholds create an illusion of mobility: 61% coverage with only 35.7% skill transfer is functionally career reinvention, not transition.

> Adjacency is cheap. Depth is the real constraint, and transition effort decides the verdict.

The practical rule: treat 50% as a floor and 60 to 70% as tap territory, but always check whether the overlap is driven by the role's defining skills or by general-purpose ones. Two pools can both score 70% because both list Python and Excel. That is not adjacency; it is ubiquity.

#### Transferability versus transition effort

Horizontal axis runs from Low overlap to High overlap. Vertical axis runs from High effort to Low effort.

| Quadrant | What it means |
| --- | --- |
| Low overlap, low effort | Narrow retrain for a specific gap; pilot if depth holds |
| High overlap, low effort | Tap now; this is the pool you source first |
| Low overlap, high effort | Rule out; this is reinvention, not transition |
| High overlap, high effort | Pilot; overlap is real but the hard sub-skills remain |

*Overlap alone never decides; cross it with how hard the bridge is to build.*

Grade effort by counting sub-skills already demonstrated against those that must be built from scratch, because built-from-scratch skills are the most expensive to train. The documented case: a data-visualization specialist who had never touched MLOps still had a shorter path, because her reporting-pipeline experience gave her scheduling, orchestration, and monitoring - three of six MLOps sub-skills - that transferred directly. Three transferred sub-skills changed a rule-out into a pilot.

## Sizing pool depth so it survives contact

Depth is the number of people you can actually reach, screen, and hire, not the number of titles the index returns. Raw count minus filters equals real supply, and the filters are brutal.

Start with the index count. Apply a seniority filter. Then apply an employability and willingness haircut. Indian IT-ITeS supply modeling used an employability rate of roughly 20 to 24% after screening for academics, aptitude, and soft skills. Report the result as a low-high band, never a point estimate. The reality check: public-domain candidate sourcing yields fewer than 15 viable profiles per metro at the senior level. A pool of ten thousand titles can collapse to a handful of reachable, willing seniors in your city.

Here is where the Refolk index figures make the abstract concrete. The US machine-learning engineer pool and the US NLP-engineer target pool differ by two orders of magnitude.

| Pool | Geography | Count |
|---|---|---|
| ML Engineer (adjacent source) | US | 10,284 |
| ML Engineer (adjacent source) | Germany | 1,265 |
| NLP Engineer (scarce target) | US | 77 |
| ML Engineer also listing NLP skill | US | 232 |

Two derived facts carry the lesson. The adjacent pool is 133.6x the target pool, but only 2.26% of it already demonstrates NLP. So the US ML pool is huge, yet the slice that can do NLP today is thin - which is exactly why tap verdicts live or die on the transition grade, not the overlap score. And the same title is 8.1x deeper in the US than in Germany, so geography multiplies depth. A pool that is rule-out in Germany can be tap in the US at identical transferability.

I ran this search: `Machine learning engineers in the US who list natural language processing, topic modeling, or Hugging Face on their profile.` - [see the full result list](https://www.refolk.ai/s/nbrfn660j0).

*Returns the exact 232-strong slice above - adjacent-title engineers already demonstrating the scarce target skill, ranked and contactable.*

[Refolk](/) lets you run that query in plain English instead of reverse-engineering a boolean string across profiles and the open web, which is the friction this whole step otherwise carries. The depth band you report should come from a count like this, filtered for seniority and then haircut, not from a headline title count.

## The scoring procedure, step by step

The procedure runs eight steps across roughly four to seven analyst days plus a two-to-six-week pilot. It produces one verdict per pool with a written rationale. Follow it in order; each step gates the next.

#### From one scarce skill to a ranked verdict per pool

1. **Decompose the scarce skill** - Break the target role into 8 to 20 weighted core competencies. Done when you have a ranked skill list; mid-size taxonomies run 80 to 200 skills.
2. **Generate candidate adjacent pools** - Pull related occupations from O*NET co-occurrence, profile and posting co-occurrence, and a published adjacency map. Done when you have 4 to 8 named pools.
3. **Score transferability** - Compute overlap as shared skills at similar proficiency over total unique skills. Done when each pool has an overlap percentage against the 50% floor and 60 to 70% tap band.
4. **Size depth** - Take index counts, apply a seniority filter then a 20 to 24% employability haircut, report a low-high band. Done when each pool has a defensible range.
5. **Grade transition effort and time** - Score learning time, proficiency recency, and count of prior cross-role moves into the target. Done when each pool has an effort grade in weeks versus quarters.
6. **Discount for competition** - Pull demand growth, supply-demand ratio, a range of time-to-fill figures, and named employers hiring. Done when each pool carries a competition discount.
7. **Assign the verdict** - Combine the four dimensions with the hiring lead into tap, pilot, or rule-out. Done when each pool has one verdict and its rationale.
8. **Pilot and validate** - Run outreach into the top pool and track sourced-to-screen and response against benchmarks of 30 to 50% and 15 to 30%. Done when conversion confirms or kills the verdict.

The pilot step is not optional ceremony. Benchmarks give you a line to beat: sourced-to-screen of 30 to 50% and outreach response of 15 to 30%. If your top-ranked pool converts below those, the verdict was wrong and the model needs a correction before you scale outreach.

## Discounting for competition

Competition is how hard it is to close anyone from the pool once you reach them, and it can erode a deep pool faster than scarcity ever does. Measure demand trajectory, the supply-demand ratio, time-to-fill, and named employers already hiring. A deep pool everyone raids converts like a thin one.

The demand signals are sharp. AI, ML, and data-science postings totaled 49,200 in one year, up 163% year over year, and AI/ML roles take an average of 89 days to fill, the longest of any tech category. Demand for AI talent outstrips supply by more than 3:1 - roughly 1.6 million open positions against about 518,000 qualified candidates. And senior AI/ML offers face heavy close friction: 70% of accepted offers draw a counter-offer. At 3:1 demand and 70% counter-offers, a nominally deep pool behaves like a scarce one.

Regional supply-demand varies enough to change a verdict, so pull it by geography rather than assuming a global figure.

| Region | Open positions | Available talent | Ratio | Time-to-fill (mo) |
|---|---|---|---|---|
| North America | 487,000 | 156,000 | 1:3.1 | 4.8 |
| Europe | 312,000 | 118,000 | 1:2.6 | 5.2 |
| Asia Pacific | 678,000 | 189,000 | 1:3.6 | 4.1 |
| Latin America | 89,000 | 34,000 | 1:2.6 | 3.9 |

> **Watch out:** Never cite one time-to-fill figure as fact
>
> Published figures for AI roles range from roughly 60 to 142 days across named sources, and the spread reflects methodology divergence, not a true central value. Report the range and name the sources. Averaging across incompatible definitions produces a precise-looking number that means nothing.

## How this goes wrong

The score fails in predictable ways, and every failure is a false positive - a pool that looks sourceable and is not. This section is the part to re-read before you commit a sourcer's time.

- **Ubiquitous-skill inflation.** Two pools look adjacent because both share Python or Excel. The median skill pair co-occurs in only about 108 profiles while top combinations exceed 300,000, so popularity must be distinguished from meaningful relatedness. Check against a null model and discount overlap driven by general-purpose skills.
- **Overlap without proficiency.** Shared skill names at the wrong depth: 70% overlap where every shared skill is beginner-level. The transferability formula requires similar proficiency, not mere presence. Check depth, not just the tag.
- **Coverage illusion.** A low threshold makes any pool look adjacent. Check the real transfer rate; 61% coverage at 36% transfer is reinvention, not a transition. This is why 50% is a floor and not a target.
- **Depth without employability.** A raw index count read as hireable supply. Ten thousand titles collapse to fewer than 15 viable seniors per metro after filters. Apply the 20 to 24% haircut and the per-metro reality check before you report depth.
- **Stale proficiency.** A skill listed years ago and never refreshed. Self-assessment misleads; check recency and recent project evidence, not the self-tag.
- **Ignoring competition.** A tap verdict on a pool with 3:1 demand and 70% counter-offers. A deep pool everyone already raids converts like a thin one. Discount by demand trajectory and time-to-fill.
- **Single-source numbers.** Time-to-fill cited as fact when sources range from 60 to 142 days. Pull multiple named sources and report a range.

The most expensive of these is depth without employability, because it passes every other check. The pool scores high on transferability, the title count is large, and only when the sourcer runs out of reachable, willing seniors does the error surface - weeks into the pilot.

## Turning the score into one verdict

The verdict combines the four dimensions into tap, pilot, or rule-out, and the combination is a judgement call the analyst makes with the hiring lead, not a formula. The rubric below gives the defensible defaults.

| Verdict | Transferability | Depth | Competition | Action |
|---|---|---|---|---|
| Tap | 60 to 70%+ at proficiency | Band survives filters | Manageable | Source now at volume |
| Pilot | 50 to 60%, hard sub-skills remain | Band thin but real | Moderate | Small outreach, validate conversion |
| Rule-out | Below 50% or ubiquity-driven | Collapses after haircut | 3:1 with heavy counters | Do not spend sourcer time |

Use this scoring template to record each pool so the verdict is auditable and the next analyst can rerun it.

**Adjacent-pool score sheet**

```
POOL: [adjacent title / occupation]
TARGET SKILL: [scarce skill being sourced]
TRANSFERABILITY: [overlap %] at [proficiency check: pass/fail] | ubiquity-driven? [y/n]
DEPTH: index [n] -> seniority filter [n] -> after 20-24% haircut [low]-[high]
TRANSITION EFFORT: [sub-skills held / needed] -> [weeks or quarters to productive]
COMPETITION: demand [ratio] | time-to-fill [range, sources] | named employers hiring [list]
VERDICT: [tap / pilot / rule-out]
RATIONALE: [one or two sentences, the dimension that decided it]
```

*One row per candidate pool; fill from the procedure steps, then assign the verdict.*

Before you call the scoring done, run this check. It catches the failure modes above while they are still cheap to fix.

#### Before you publish the verdict

- [ ] Transferability is computed at similar proficiency, not skill presence alone
- [ ] Overlap is not driven by ubiquitous skills like Python or Excel (null model checked)
- [ ] Depth is a low-high band after a seniority filter and a 20-24% employability haircut
- [ ] Depth survives the per-metro reality check (fewer than 15 viable seniors per metro at senior level)
- [ ] Transition effort counts sub-skills built from scratch, the most expensive to train
- [ ] Proficiency is recent, backed by project evidence, not a years-old self-tag
- [ ] Competition uses a range of named time-to-fill sources, not a single figure
- [ ] Each pool has one verdict with a written one-line rationale naming the deciding dimension

## Keeping the score current

The score is a snapshot, and the inputs move at different speeds, so re-run them on different clocks rather than all at once. Transferability and the adjacency structure are stable; recompute them when a role's required skills genuinely change, which is rarely more than once or twice a year. Depth and competition move fast and should be refreshed every sourcing cycle.

#### The re-check cadence

1. **Every cycle** - Re-pull depth bands and competition signals; they shift with the market
2. **On role change** - Recompute transferability and the adjacent-pool map
3. **After each pilot** - Feed conversion rates back to correct the verdict thresholds

*Refresh the fast-moving inputs every cycle and leave the structural ones until the role changes.*

The feedback loop is what turns this from a model into a standard. Every pilot produces conversion data - sourced-to-screen and response - that either confirms the verdict or exposes a miscalibrated threshold. A pool graded tap that converts below 30% sourced-to-screen is telling you the depth band was inflated or the competition discount was too soft. Over a few cycles, your thresholds stop being borrowed vendor heuristics and start being your own numbers, which is the only version of this score worth defending to a hiring lead.

One last discipline: when you report a verdict, report the band and the range, not the point. Depth is a low-high band. Time-to-fill is a range across named sources. Transferability sits against both a 50% floor and a 60 to 70% tap band. The honesty of the score lives in those ranges, and a standard that overclaims precision is worse than one that says plainly where the evidence is thin.

## Frequently asked questions

### What overlap percentage counts as an adjacent pool worth sourcing?

Treat 50% as a floor and 60 to 70% as tap territory. The 70% framing comes from reskilling vendors, where an adjacency score above 0.6 signals a strong candidate within 2 to 3 months and 0.4 to 0.6 suggests 4 to 6 months. Peer-reviewed work defends a 50% majority-transfer rule and warns that 61% coverage at only 36% actual skill transfer is career reinvention, not a transition. Report both numbers and check real transfer, not just name overlap.

### How do I turn a raw index count into real hireable depth?

Start with the index count, apply a seniority filter, then apply an employability and willingness haircut of roughly 20 to 24% drawn from supply modeling. Report a low-high band, never a point estimate. Sanity-check against the reality that public-domain sourcing often yields fewer than 15 viable senior profiles per metro, so a pool of 10,000 titles can collapse to a handful of reachable, willing people at the senior level.

### Why source from the adjacent title instead of the target title?

Because more usable target-skill capability often hides under the adjacent title. In Refolk's index, 232 US machine-learning engineers already list NLP as a skill, versus 77 people holding an NLP-engineer title. That is 3.0x more capability in the adjacent pool, and it is the mechanism behind Gartner's finding that an employee proficient in machine learning, Python, or TensorFlow learns NLP quickly even without prior NLP role experience.

### How do I avoid two pools looking adjacent just because they both use Python?

Run a null model. The median skill pair co-occurs in only about 108 profiles while top combinations exceed 300,000, so you must distinguish popularity from meaningful relatedness. If the overlap is driven by general-purpose skills like Python or Excel, discount it. Require that the shared skills are specific to the target role and held at similar proficiency, not just present as self-tags.

### Why not just average the published time-to-fill numbers?

Because they measure different things and the spread reflects methodology divergence, not a true central value. Published figures for AI roles range from roughly 60 days to 142 days across named sources. Averaging across incompatible definitions produces a number that looks precise and means nothing. Report the range, name each source, and let the hiring lead judge against your own funnel.

---

*From the Refolk guide library. I revise these guides rather than replacing them, so the current version is always at https://www.refolk.ai/guides/adjacent-pool-substitution-score*
