Skip to Content
CoursesHiring Signals03 Openings and growth

Openings and Headcount Growth as a Qualifier

Outcome: two numeric columns that separate companies genuinely building out a function from those backfilling, applied as a cheap gate before anything expensive runs.

Surface
App and MCP server
Level
Intermediate
Uses
job_openings_growth_rate · head_count_growth_rate
Credits
~2 per company
Prerequisite
Lesson 02's company set

The distinction that matters

A company with one open role may be replacing someone who left. A company whose openings have doubled in a quarter is building something.

Only the second is a buying signal, and telling them apart costs about two credits per company — far less than the person-level work it gates.


The two rates

Job openings growth rate

How the number of open roles has changed over a period. Fast-moving, and it responds within weeks of a decision to expand.

Reference: job_openings_growth_rate.

Headcount growth rate

How the total employee count has changed. Slower, and it confirms that past hiring actually landed.

Reference: head_count_growth_rate, Headcount growth.

They answer different questions: openings growth says what they intend, headcount growth says what they have done.


Reading them together

Openings growthHeadcount growthReading
HighHighScaling. Best target — intent and execution both present.
HighFlatJust started. Decision made, hires not landed. Excellent timing — the tooling decision is ahead of them.
FlatHighAbsorbing. Hired recently, now integrating. Pain is arriving; timing is decent.
FlatFlatSteady state. No signal.
NegativeNegativeContracting. Usually a poor target, occasionally a cost-saving angle.

The second row is the most under-used cell in this table. High openings with flat headcount means the team is about to grow and the systems decisions have not been made yet — which is the cheapest possible moment to be in the conversation. Most vendors arrive after the hires land.


Thresholds

Set numeric thresholds rather than looking for “growth”.

MetricSensible floor
Openings in your function, last 30 days2
Openings growth, quarter over quarter+25%
Headcount growth, 6 months+10%
Department headcountAbove your minimum viable team size (lesson 04)

Calibrate against your own customers rather than accepting these: run the metrics over 20 closed-won accounts as they were before they bought, and see where they actually fell.


Normalize by size

Raw counts mislead across company sizes. Three open roles at a 30-person company is transformative; three at a 3,000-person company is Tuesday.

Compute a ratio:

hiring_intensity = openings_in_function / current_department_headcount

A ratio above roughly 0.2 — one new hire for every five existing people in that function — is a genuine build-out at any company size.


Where this sits in the pipeline

This is a cheap gate. It runs on every company from lesson 02, and its whole purpose is to shrink the set before lesson 05’s person-level work.

Expect it to remove half to two thirds. That removal is where the course’s cost control lives.


Do this now

Run both rates across the company set

All of them — this is the cheap layer.

Build the four-cell reading

As a classification column: scaling, just started, absorbing, steady.

Compute hiring intensity

Openings ÷ department headcount.

Calibrate thresholds against your own customers

20 closed-won accounts, as they were pre-purchase.

Apply the gate

Record how many survive.

Check the removed rows

Read 20. If obvious good accounts were dropped, a threshold is too high.


Check your work

  • Both growth rates are populated
  • The four-cell reading is a classification column, not a mental note
  • Hiring intensity normalizes for company size
  • Thresholds are calibrated against your own closed-won data
  • You know the survival rate through the gate

Where this breaks

Growth rates over very small numbers are noise. A company going from one open role to three shows 200% growth and means almost nothing. Set an absolute floor alongside the percentage — at least two or three openings in your function — or the top of your list fills with tiny companies whose percentages are arithmetic artefacts.


Further automation

Store the rates each run and watch the change. A company crossing from flat to growing is a fresher signal than one that has been growing for a year, and the crossing is exactly the moment worth acting on. That requires a stored history, which is one extra column.


Next lesson

04 — Department-level headcount, sizing the team you are actually selling into.

Reference for this lesson: job_openings_growth_rate, head_count_growth_rate, Headcount growth, Company total employees.