Firmographic filters will tell you a company has 200 employees and is in the right industry. They won’t tell you that company is currently hiring five SDRs and a VP of Sales at the same time. Job openings data is what separates a static account list from one that reflects what your targets are doing right now, and this post breaks down how that data is structured, how to read it without misreading it, and how B2B teams are building it into their workflows.
TLDR:
- Job openings data is company-level hiring records, not macro labor stats like JOLTS, which only covers national trends.
- A cluster of open roles in one department is a budget signal: headcount was already approved, spend is coming.
- Read hiring velocity and seniority together: five IC roles mean capacity growth, one VP role means org change.
- Pair job openings data with Financing Events and Technology Detections to build a fit-plus-timing account score.
- PredictLeads delivers Job Openings via API, webhooks, and flat files, linking each posting to a company domain across all datasets.
What Job Openings Data Is (and What It Is Not)
Job openings data is structured information pulled from public job postings: company career pages, job boards, applicant tracking systems (ATS), and professional networks like LinkedIn. At the company level, it captures the title, location, seniority, and timing of every role a specific organization is trying to fill, turning a scattered set of postings into something you can query, filter, and act on.
That is different from what most people picture when they hear “job openings data.” The Bureau of Labor Statistics publishes the Job Openings and Labor Turnover Survey (JOLTS), a monthly report on aggregate hiring, quits, and layoffs across the entire United States economy. JOLTS tells you whether the national labor market is loosening or tightening. It will not tell you that a specific mid-market SaaS company just opened three sales engineering roles in Austin.
Company-level job openings data works at the opposite end of the zoom lens. Instead of a macro trend line, you get a live record tied to a named company: which roles, how many, where, and since when. JOLTS informs economists, policymakers, and analysts writing about the labor market as a whole. Company-level data informs a sales rep deciding who to call this week, an investor tracking a portfolio company’s growth, or a market intelligence team watching job postings as alternative data across a sector.
Neither replaces the other. A B2B team studying labor market analytics might reference the Job Openings and Labor Turnover Survey for context on broader economic conditions, then turn to company-level job openings data to find and act on the specific accounts showing hiring intent. One tells you the weather. The other tells you which building has its lights on right now.
Where Job Openings Data Comes From
Job openings data comes from four main collection points, and each one has a different relationship with speed and coverage.
- Direct crawls of employer career pages catch a role at the moment a company posts it, before that listing gets pushed anywhere else.
- Job board scraping and aggregation pulls from sites like Indeed or Glassdoor, giving broad reach across employers that post there, but those boards sit downstream of the original posting.
- Applicant tracking system (ATS) integrations pull directly from the software companies use to manage hiring, such as Greenhouse or Lever, and can offer clean structured data straight from the source.
- Professional networks such as LinkedIn add another layer, especially useful for roles that never make it to a public career page at all.
Sourcing method changes what you get. A provider working only from job boards will lag behind one that also crawls employer sites directly, since career pages often list a role days before it shows up on an aggregator. A comparison of job postings data providers found that tracking listings straight from company websites and career subpages, and not relying only on third-party boards, tends to produce faster detection of newly posted roles.
Single-source providers are simpler to build but leave gaps. A company that only lists roles on its own career page will be invisible to a provider that only scrapes job boards, and vice versa. Multi-source approaches, combining career pages, ATS feeds, and professional networks, close those gaps but introduce a new problem: the same job opening can show up three or four times under slightly different titles or formats.
That is where deduplication and normalization become the unglamorous but important part of the pipeline. Without them, a sales team querying “companies hiring SDRs” gets duplicate records inflating the count, and a data team building a scoring model gets noisy inputs that misrepresent hiring velocity. Normalizing job titles into a shared taxonomy, such as O*NET occupation codes, and collapsing duplicate postings into a single record with clean first seen and last seen timestamps, is what makes the data usable at scale – not just voluminous.
What Fields Job Openings Data Typically Contains
A raw job posting is text on a webpage. A structured job openings dataset breaks that same posting into fields you can filter, sort, and score against. Here is what a typical record contains:
- Job title, plus a normalized version that maps variations like “Account Executive” and “AE” to the same underlying role
- Full job description text, useful for keyword searches and skill extraction
- Location, often broken into city, state, country, and continent
- Seniority level, from founder or c-level down through manager, mid-senior, and junior
- Salary range, when the employer discloses it, sometimes normalized into a common currency
- Posting date, along with first seen and last seen timestamps that show how long a role has been open
- Job category, such as sales, engineering, marketing, or human resources
- Contract type, distinguishing full-time roles from contract or internship postings
- Company domain or identifier, the anchor that ties the job opening back to a specific organization
That base layer answers who is hiring and for what. Enrichment turns those fields into something you can act on.
Occupation codes from the O*NET taxonomy classify each job into a standardized occupation family, which matters when you compare hiring across companies that use different internal titles for the same function. Department classification groups roles by function, not by title, so “Growth Marketing Manager” and “Demand Gen Lead” both land in marketing. Recruiter details, when available, surface a name or contact tied to the posting, useful for outreach. Tags extracted from the job description itself can flag mentions of specific tools or technologies a company lists as required skills, a different kind of signal than a title or category alone.
Put together, these fields let a GTM team filter for companies hiring mid-senior sales roles in a specific region, let an investor track hiring velocity across a portfolio without reading every posting by hand, and let a market intelligence analyst break down hiring trends by occupation family instead of loose keyword guesses. The raw posting told you a company has an opening. The structured fields tell you whether that opening matters to what you are trying to do.
How B2B Sales and GTM Teams Use Job Openings Data
A hiring signal acts as a proxy for budget and intent. When a company posts a job opening, someone has already cleared headcount through finance, which means that department is about to get bigger and better funded. For GTM teams selling into other B2B companies, hiring and tech B2B sales signals often outperform most firmographic filters.
The clearest use case is department level expansion tracking. If you sell sales enablement software, a company posting five SDR roles in one quarter is not a coincidence, it is a build-out. That team will need tools to onboard, ramp, and manage those new reps within a few months. The same logic applies to engineering roles for a dev tools vendor, or finance roles for a company selling accounting software. You are not guessing who might need your product, you are watching who just admitted they will.
Hiring velocity also works as an account scoring input. A company with 3 open roles in a target department is a weaker signal than one with 10, and a team that has been posting roles in the same function for three consecutive months is signaling sustained growth, not a one-time backfill. The change in hiring rate over time matters more than any single month’s count. An account that went from two open sales roles in Q1 to eight in Q3 is showing acceleration worth acting on, while one that has held steady at three openings for six months may simply be running a permanent requisition. Building that velocity calculation into an account score, rather than using a raw headcount number, is what keeps the model useful as a prioritization tool rather than just a list filter.
How Job Openings Data Powers Account-Based Marketing
Static firmographic lists tell you who fits your ideal customer profile. They say nothing about who is ready to buy right now. Job openings data closes that gap by turning account selection into a continuous process: instead of scoring accounts once and letting the list go stale, you re-score continuously as hiring activity changes.
Segmentation gets more specific once you filter by role instead of industry or company size alone.
- Companies posting sales leadership roles (VP of Sales, Head of Revenue) are often rebuilding go-to-market motion, which makes them receptive to new sales tooling.
- Companies expanding data or engineering teams are usually scaling infrastructure, a good fit for developer-facing or data-tier vendors.
- Companies opening roles in a new geography signal market expansion, and identifying companies expanding into new markets using structured news events can confirm whether that expansion is real. This often precedes new vendor relationships in that region, from payroll to compliance to local marketing support.
None of these segments show up in a static firmographic filter. A company with 500 employees today looks the same on a spreadsheet whether it is flat or growing across three departments at once. Job openings data is what separates the two.
The stronger play is combining hiring activity with other intent signals, not treating it in isolation. Technology Detections provide evidence of what a company already uses, which helps you flag competitor displacement or integration opportunities. News Events surface leadership changes, office expansions, and partnerships that often line up with a hiring push in the same quarter. Financing Events show which companies just closed a round and have fresh budget to deploy, and pairing them creates a foundation for sales trigger events outbound outreach.
Together, these signals build a fit-plus-timing model. Fit comes from firmographics and tech stack. Timing comes from hiring, funding, and news activity happening at the same time. An account-based marketing team scoring this way is not asking whether a company matches its ideal customer profile. It is asking whether that match comes with a reason to reach out now, and job openings data, paired with news and financing signals, is what answers the second question.
How Investors and Market Intelligence Teams Use Job Openings Data
Private companies do not file quarterly earnings. That is the problem investors have always had to work around, and hiring data gives them a way to do it without waiting for a press release.
A burst of engineering hiring at a private company can indicate a product build-out months before any funding announcement makes it public. A burst of sales hiring often means a company has found a repeatable motion and is staffing up to scale it, making job openings data a company growth signal worth tracking. Neither shows up in a financial filing, because there is no filing to check. What does show up is a company’s own career page, quietly listing eight open engineering roles it did not have three months ago.
That is why job postings function as a leading indicator instead of a lagging one. Revenue reports and funding announcements describe what already happened. A hiring burst describes what a company is doing right now, in anticipation of growth it expects to need to support. By the time a Series B gets announced, the engineering team built to support that round has often been hiring for two quarters already. That is how investors find fast-growing private companies before the market hears about it.
Point-in-time data is what makes this usable rather than anecdotal. A single snapshot of open roles tells you a company is hiring today. A history of first seen and last seen timestamps across every posting since 2018 tells you whether that hiring is accelerating, flat, or slowing compared to the same company six months ago. That trendline is the actual signal, since a headcount number with no baseline tells you very little on its own.
Market intelligence teams use the same underlying data at a different zoom level. Instead of tracking one company, they aggregate postings across a sector to see which functions are getting investment industry-wide, and monitoring competitor hiring spikes can reveal whether rivals are staffing up support versus engineering, and which regions are seeing hiring concentrate. Research on hiring signals in B2B sales notes that hiring reflects a company’s internal priorities before those priorities show up anywhere else. That framing applies just as well to an analyst mapping a sector as it does to a rep prospecting one account.
How to Read Hiring Signals Without Misreading Them
A single job posting does not mean much on its own. A company backfills roles constantly, and one open role in a department that already has 40 people is often just an employee who left. Treating that posting the same as a genuine expansion signal is the most common way teams misread hiring data.
Cluster size is the first check worth running. One opening is noise. Five openings in the same department within a few weeks starts to look like a build-out. The pattern matters more than any single record, which is why hiring velocity, not headcount, is the more reliable input for scoring accounts.
Seniority level changes what the cluster actually means:
- A single VP or director-level opening often signals organizational change: a new leader coming in to restructure a function, set new strategy, or replace someone who left under different circumstances.
- Five individual contributor roles opening in the same department usually points to straightforward capacity growth: more work, more headcount, same structure.
Reading both as generic hiring activity flattens two different stories into one.
|
Signal dimension |
What to look for |
What it likely means |
How to act on it |
|---|---|---|---|
|
Cluster size |
5+ openings in the same department within a few weeks |
Planned build-out; headcount already approved by finance |
Prioritize for outreach: budget is committed |
|
Cluster size |
1 opening in a department of 40+ |
Likely backfill, not expansion |
Low priority; monitor for follow-on postings |
|
Seniority |
VP or director-level opening (single role) |
Organizational change: new leader incoming, strategy reset likely |
Time outreach around onboarding window; new leaders re-evaluate vendors |
|
Seniority |
5+ individual contributor roles in same function |
Capacity growth; same structure, more headcount |
Pitch tools that scale with team size (enablement, onboarding, productivity) |
|
Timing |
Role first seen within the last 30 days, still active |
Live signal: requisition is open and unfilled |
Act now; signal is fresh |
|
Timing |
Listing last seen 90+ days ago, still visible on career page |
Stale posting: role may be filled or req closed |
Filter out; avoid acting on leftover data |
Timing matters just as much as volume. A posting still marked active on a career page from four months ago may no longer be an open role at all. Career pages get updated on their own schedule, and a listing can sit stale long after the position is filled or the requisition is closed. Filtering by first seen and last seen timestamps, rather than treating every visible listing as current, is what separates a live signal from a leftover one.
None of this means hiring data is unreliable. It works best as one input read in context rather than a single number acted on in isolation. A cluster of mid-senior engineering roles, posted within the same month and still showing as active, tells you something real about where a company is investing. A single stale listing for a role that could mean almost anything tells you very little. The difference is in how carefully you read the pattern, not in the data itself.
How to Get Notified When a Target Account Posts a New Job Opening
Checking every target account’s career page by hand does not scale past a handful of accounts, so most B2B teams choose from three monitoring approaches: job board alerts, API-based monitoring, or a workflow integration that acts on the signal automatically.
Job board alert tools are the simplest starting point. LinkedIn and Indeed let you set alerts for a specific company and get an email when a new role appears. That works for tracking one or two accounts, but it breaks down at scale, and it only surfaces roles that made it onto that specific board, leaving out postings that live only on a company’s own career page.
A job openings data API solves both problems. Instead of checking a board by hand, you query a job openings API for a list of accounts and get structured data back: title, department, seniority, location, and timestamps. Pair that with webhooks, which push a notification the moment a job opening is found or closed for a followed company, and you get near-real-time alerts without polling anything yourself. PredictLeads structures this exactly that way: follow a company through the API, and a JobOpeningsDataset webhook fires when a new role appears or an existing one closes.
The last piece is routing that signal into the workflow where your team acts on it. A webhook firing into a Slack channel is useful, but a webhook writing directly into a CRM record or triggering a sequence in a sales automation tool turns a hiring signal into a rep reaching out that week. Native integrations with Clay, Make, and n8n let you build that path without custom infrastructure, so a new job opening for a followed account can trigger an enrichment step or a task assignment automatically.
When you assess a monitoring setup, three things matter more than the rest:
- Detection speed: a provider crawling career pages directly surfaces a new posting faster than one relying only on aggregators, since career pages often list a role days before it reaches a job board. PredictLeads crawls company websites and career subpages directly, which means a new role can appear in the Job Openings dataset before it shows up on Indeed or LinkedIn. For time-sensitive workflows, that lag matters.
- Coverage depth: check whether a provider pulls from company websites, applicant tracking system integrations, and professional networks, or whether it relies on a single source. A provider with strong job board reach but no direct career page crawling will miss roles that companies post only on their own site and never syndicate. Multi-source collection closes that gap but requires you to confirm how the provider handles duplicates that arise when the same role appears across several sources.
- Deduplication and normalization: without them, a single role posted across three boards shows up as three separate openings, inflating hiring velocity counts and degrading any scoring model built on top. Look for standardized job title taxonomies, such as O*NET occupation codes, and confirm that the provider collapses duplicate postings into a single record with reliable first seen and last seen timestamps so your counts reflect actual requisitions, not listing copies.
Key Quality Factors to Check in a Job Openings Data Provider
Detection speed matters most for time-sensitive workflows. A provider that crawls company career pages directly will surface a new role days before one that waits for job boards to index it. If your outreach strategy depends on reaching a company while the signal is fresh, that lag is the difference between a timely conversation and a cold one.
Coverage depth is the second dimension worth pressing on. A provider with strong job board reach but no direct career page crawling will miss roles that companies post only on their own site and never syndicate. Ask specifically whether a provider pulls from company websites, applicant tracking system integrations, and professional networks, or whether it relies on a single source class.
Deduplication and normalization determine whether the data is usable at scale. Without them, a company posting the same role across three boards shows up as three separate openings, inflating hiring velocity counts and degrading any scoring model built on top. Look for standardized job title taxonomies, such as O*NET occupation codes, and confirm that the provider collapses duplicate postings into a single record with reliable first seen and last seen timestamps.
Historical depth and point-in-time access separate providers that show you today’s snapshot from ones that let you measure trend. A provider with records since 2018 and consistent timestamps lets you calculate whether a company’s hiring velocity is accelerating or flattening, which is a more actionable input than a raw count of current openings. Without a trendline baseline, a headcount number tells you very little on its own.
Finally, confirm whether job openings data is delivered in isolation or linked to other company signals through a shared identifier. A domain-linked record that connects to technology detections, financing events, and news events in the same API call is a different product than a standalone job postings list. For teams building fit-plus-timing account scores, the linkage is as important as the job data itself.
How PredictLeads Structures Job Openings Data for B2B Workflows
PredictLeads treats job openings as one dataset inside a larger company intelligence layer, not a standalone list of postings. The Job Openings dataset covers more than 279.2M+ historical records since 2018, with 9.9 million active openings at any given time spanning more than 710,600+ companies currently hiring. Every record is sorted into one of 26 job categories and mapped to a standardized O*NET occupation code, so “Growth Marketing Manager” and “Demand Gen Lead” land in the same searchable bucket regardless of what a company calls the role internally.
Each posting carries the fields a scoring model or outreach workflow actually needs: seniority level from founder down through junior, location, salary data when disclosed, recruiter details where available, and tags pulled from the job description itself. Every job opening links to a company domain, the same anchor used across Technology Detections, News Events, Financing Events, and Connections. A query for companies hiring sales engineers can be filtered further by what CRM they run, whether they closed a funding round last quarter, or whether they recently signed a new client, all from the same API rather than four separate tools.
PredictLeads is a data provider, not a prospecting UI. There is no dashboard for browsing job listings by hand. Instead, teams pull the data through whichever delivery method fits their workflow:
- API access for real time lookups, such as checking whether a specific account is hiring before a call, or enriching a CRM record at the moment a lead comes in
- Webhooks for push notifications, firing a
JobOpeningsDatasetevent when a followed company posts or closes a role, without polling anything - Flat files for bulk delivery into a warehouse like Snowflake or BigQuery, useful for teams building their own scoring models across large account sets
A hiring signal on its own tells you a company is growing somewhere. A hiring signal linked to the same company’s tech stack, funding history, and recent news tells you where it is growing, whether it can afford what you sell, and whether now is a reasonable time to reach out.
Ready to see this in your own data?
A job posting is a company telling you, in public, where it is investing before the press release confirms it. Read the pattern across a cluster of roles and pair it with what you already know about that account’s tech stack and funding history, and you have a much clearer picture of whether now is the right time to reach out.
Get 100 free API requests when you create an account – no credit card, no sales call. Create your free account.
FAQ
What’s the best way to get notified when a target account posts a new job opening?
The most scalable approach is API-based monitoring paired with webhooks: follow target companies through a job openings API, and a push notification fires the moment a new role appears or closes, without polling anything yourself. PredictLeads structures this through a JobOpeningsDataset webhook that triggers on followed accounts, and native integrations with Clay, Make, and n8n let you route that signal directly into a CRM record or sales sequence. Job board alerts on LinkedIn or Indeed work for one or two accounts, but they miss roles that only appear on a company’s own career page.
What are the best data sources for ABM signals beyond firmographics?
For account-based marketing, the highest-signal sources combine hiring data, technographic detections, financing events, and news events into a single fit-plus-timing model. Job openings data tells you which departments are expanding right now; Technology Detections show what a company already runs, flagging competitor displacement or integration opportunities; Financing Events confirm fresh budget; and News Events surface leadership changes or expansions that often precede new vendor relationships. Firmographics alone score fit but tell you nothing about timing – layering these signals on top is what separates a static list from a continuously re-scored account set.
How do I use a job openings API to find companies hiring for a specific role across thousands of accounts?
Query the /discover/job_openings endpoint with the relevant O*NET occupation codes and an optional location filter to pull matching postings across the full dataset, rather than looping through company-by-company lookups. O*NET codes normalize titles across companies, so “SDR,” “Business Development Representative,” and “Outbound Sales Rep” all return under the same code. Filter by active_only, seniority, and first_seen_at_from to keep results current and scoped to the roles that actually signal buying intent for your product.
Should I use job openings data or BLS JOLTS data for B2B market intelligence?
They answer different questions, so the choice depends on the zoom level you need. JOLTS reports aggregate national hiring, quit, and layoff rates across the whole U.S. economy – useful for macroeconomic context but it will not identify a specific company expanding its sales team in Austin. Company-level job openings data works at the account level: named companies, specific roles, locations, and timestamps you can act on. A market intelligence team might reference JOLTS for sector-wide labor conditions, then use company-level data to track hiring patterns across a defined set of competitors or target accounts.
Can I combine job openings data with funding and technographic signals in a single API call?
Not in a single request, since each dataset has its own endpoint, but PredictLeads ties every dataset to the same company domain as the anchor record. That means a company hiring sales engineers, detected using a specific CRM, and having closed a Series B last quarter is queryable across Job Openings, Technology Detections, and Financing Events through the same API without joining records from separate providers. Teams building lead-scoring models typically pull each signal type in separate calls and join on domain, or use flat file delivery into a warehouse like Snowflake or BigQuery for bulk cross-dataset analysis.