Use job data for investment research
Add job posting data to your equity research stack as a complementary signal. Anticipate layoffs and hiring freezes, infer product-stage from hiring mix, and read cost-per-hire pressure from repost cadence weeks before any of it shows up in earnings.
Why job postings are a leading indicator
Companies hire ahead of revenue, and they stop hiring ahead of layoffs. Both moves show up in the public job posting feed weeks to months before they appear in earnings releases, guidance updates, or press announcements.
For equity analysts and quantitative researchers, that makes public hiring activity a high-frequency, complementary signal alongside fundamentals, transcripts, and consensus estimates. The signal is in the changes: which functions a company is adding, which it is freezing, how long roles stay open, and how aggressively they are pushed across distribution channels.
What to look for
There are three families of signals that tend to be the most actionable for investment research.
1. Layoff and hiring-freeze anticipation
Hiring freezes typically begin weeks to months before announced layoffs. The cleanest indicator is not raw posting count, it is how old the open postings are. When a company is genuinely hiring, postings clear quickly. When a freeze starts, postings stay live but the funnel slows.
Patterns to track per company:
- A rising share of postings older than 30 days
- A slowdown in postings concentrated in core-function roles, while support and admin postings linger
- Average posting age trending up across the watchlist
This is computable directly from posted_at, and even cleaner once job_expire_date is available, since you can compute true time-to-fill as the gap between posted_at and disappearance from the feed.
2. Function mix and seniority shift as a stage signal
The composition of who a company is hiring is a forward-looking indicator of where it sees itself in its lifecycle.
- Companies that keep velocity in forward-looking roles (AI, analytics, GTM strategy) behave very differently from those that slow overall and concentrate remaining hiring in support and admin
- A freeze in sales hiring leads pipeline softening and revenue downgrades
- A pause in engineering hiring signals roadmap pivots or product-line cuts
- A shift toward junior hires usually means cost containment; a shift toward senior hires suggests capability build or premium-talent positioning
Function classification and tech-stack tags are present on every job in TheirStack, so factor construction is a single query rather than an NLP project.
3. Hiring friction and cost-per-hire pressure
When a company keeps reposting the same role above normal cadence, or pushes the same role onto many platforms at once, candidates are not coming in fast enough. That has a direct cost-per-hire interpretation, and at scale it is a leading indicator of margin pressure for talent-heavy businesses.
Patterns to track:
- Repost cadence above the normal two-week baseline for the same role at the same company
- The number of distinct platforms a single role is listed on simultaneously
- Time-to-fill rising across a sector, signalling tightening labor markets
In TheirStack, the multi-platform footprint per role is a by-product of how we deduplicate, and reposted_at is exposed for sources that publish it (LinkedIn being the largest).
Steps
Define your universe.
Start with a list of company domains, names, or LinkedIn URLs covering your investable universe (for example, S&P 500, Russell 3000, or a sector slice). You will join postings to this list to build a clean per-company panel.
Choose your access method.
For full historical and ongoing coverage, use the Datasets delivery. For ad-hoc research queries, use the Jobs API. For real-time scoring, use Webhooks. See Choosing the best access method.
Build the per-company time series.
Aggregate weekly posting counts per company, broken down by function (sales, marketing, engineering, operations, support) and by seniority (junior, mid, senior, executive). Function and seniority tags are already present on every record.
Layer in the freshness signals.
For each open posting, compute its age (days since posted_at). Track the share of postings older than 30 days per company, week over week. This is the freeze indicator.
Layer in the friction signals.
Per role, compute the count of distinct sources the same role appears on, and use reposted_at from LinkedIn to capture repost cadence. Both feed a per-company hiring-friction index.
Backtest against your factors.
Combine the freeze, function-mix, and friction signals into a panel and backtest against earnings surprises, guidance revisions, layoff announcements, and price returns. Iterate on the most predictive sub-factors before deploying capital.
How is this guide?
Last updated on
How Marketing Teams Can Use Hiring Data to Improve Targeting and Find Better Leads
Discover how to leverage job posting data as a marketing signal — identify companies with active budget, tailor campaigns by role and tech stack, and build higher-intent lead lists.
Monitoring open jobs from current and past customers
How to know which companies from a given list are actively hiring. This can help SaaS companies detect new needs of their current customers for potential upsells, and also recruitment companies to find old customers that are hiring again and could be easier to sell to than if they were completely new customers.
