Hiring Velocity Signal API — PredictLeads Alternative avatar

Hiring Velocity Signal API — PredictLeads Alternative

Pricing

from $200.00 / 1,000 company hiring signal aggregateds

Go to Apify Store
Hiring Velocity Signal API — PredictLeads Alternative

Hiring Velocity Signal API — PredictLeads Alternative

Company hiring intent signals from LinkedIn + Indeed in one API call. Per-company counts, week-over-week velocity, role breakdown, seniority mix, and composite hiring score (0-100). $0.20/company, no contract — the self-serve alternative to PredictLeads and Cognism Elevate.

Pricing

from $200.00 / 1,000 company hiring signal aggregateds

Rating

0.0

(0)

Developer

Sami

Sami

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Hiring Velocity Signal API — PredictLeads & Cognism Alternative

Hiring-intent signals for any company — $0.20 per company, no contract, no minimum. Pay-per-signal access to per-company hiring velocity, role breakdown, seniority mix, and week-over-week delta — aggregated from LinkedIn + Indeed in one API call. The self-serve alternative to PredictLeads ($40/mo credit minimum) and Cognism Elevate ($37,498/year for 5 seats) for SDR / RevOps teams who want hiring triggers without an annual contract.

Enterprise hiring-intent platforms charge $22K–$37K/year per 5 seats (Cognism Elevate, PredictLeads Enterprise, LeadIQ Pro). This Actor delivers the same company-level signal — total active jobs, new postings in window, week-over-week velocity delta, role breakdown, seniority mix, and a composite hiring-signal score (0-100) — at $0.20 per company, pay only for what you pull. No subscription. No setup fee. No annual contract. Built for B2B SDR Managers, RevOps Leads, VC analysts tracking portcos, M&A scouts, and sales-trigger newsletter operators.

How to get hiring-intent signals in 3 easy steps

  1. Go to the Hiring Velocity Signal API page on Apify and click "Try for free"
  2. Paste your list of company domains (e.g. ["stripe.com", "ramp.com", "linear.app"]) — pick the lookback window (7 / 14 / 30 / 60 / 90 days) and the platforms you want to query (LinkedIn / Indeed / both)
  3. Click "Run", wait for the aggregator to finish, then download your data as JSON, CSV, or Excel — or wire it into a daily / weekly Apify Schedule for continuous account-list monitoring

No coding required. No API key for LinkedIn or Indeed. No login bypass. Works with Apify's free plan.

🏢 Running a production hiring-trigger pipeline?

If you're tracking 100+ accounts, polling weekly, or pulling >5K company signals/month, I offer custom output schemas matched to your CRM (Salesforce / HubSpot / Attio), dedicated proxy infrastructure for sustained throughput, schema stability SLA (no breaking changes without 30-day notice), and volume pricing above 25K signals/month.

DM me on Apify, open an Issue with subject "Enterprise inquiry", or email samimassis2002@gmail.com with subject "Hiring Velocity enterprise".

Table of contents

What this Actor does

  • Single list of company domains → company-level hiring signals in one call
  • Aggregates LinkedIn Jobs + Indeed Jobs and deduplicates cross-platform listings (so a job posted to both platforms counts as one — no inflated counts)
  • Computes totalActiveJobs, newJobsInPeriod, and weekOverWeekDeltaPct per company
  • Classifies every posting into a role bucket (engineering / sales / marketing / product / ops / other) using a calibrated keyword/regex matcher, then surfaces the per-role counts as roleBreakdown
  • Classifies every posting into a seniority bucket (junior / mid / senior / executive) and surfaces percentage mix as seniorityMix
  • Computes a composite hiringSignalScore (0-100) weighted across velocity × delta × seniority × breadth — sort your account list by this score to surface high-intent accounts in seconds
  • Surfaces top 5 most-frequent job titles per company as a one-glance "what kind of hiring" indicator
  • Normalized output (one shape per company regardless of which platforms returned data — your downstream pipeline never has to branch on missing fields)
  • Per-platform 60s wall-clock timeout (one slow platform never drags down the batch)

Who buys this Actor

Buyer profileUse caseTypical monthly spend
B2B SaaS SDR Manager (Series A–B, 10–80 employees)Weekly account-list refresh on 200–500 target accounts; surface hiring spikes as outreach triggers$200–$2,000/mo
RevOps Lead at growth-stage SaaSScore 5K-account TAM monthly by hiring intent; enrich Salesforce/HubSpot with the score field$1,000–$6,000/mo
VC analyst tracking portfolio companiesQuarterly hiring-velocity report for each portco; flag underhiring (concerning) and overhiring (raise about to be announced)$120–$800/mo per fund
M&A / corporate development scoutWeekly pull on 100–1,000 acquisition-candidate domains; sort by velocity score + seniority mix to surface companies in growth mode$400–$3,200/mo
Sales-trigger newsletter operator (e.g. The Signal, Hampton, RB2B newsletters)Daily refresh on 5K-domain list to surface hiring-spike companies as newsletter editorial; bill subscribers $50–500/mo$1,000–$10,000/mo
Recruiter / staffing agency BDIdentify companies in active hiring expansion before competitors; lead the cold-outbound conversation with the signal$200–$1,200/mo

If you're in any of these buckets and you're currently doing manual LinkedIn Jobs page checks weekly, this Actor pays for itself in the time you save in week 1.

Example use cases

1. Weekly SDR account-list refresh

Cron weekly on Monday at 7am local time, 200 target accounts, 7-day lookback, all four optional signals enabled (includeRoleBreakdown, includeSeniorityMix, includeWeekOverWeekDelta × default platforms: ["linkedin", "indeed"]). Push to your CRM (Salesforce / HubSpot / Attio) as a hiring-intent score field; SDRs sort their week's outreach queue by score descending. Typical volume: 200 signals/wk × 4 weeks = 800/mo. Cost: ~$160/mo. Compared to Cognism Elevate at $37,498/year for 5 seats, you save ~$36K/year per seat-equivalent.

2. Daily hiring-spike alert (real sales trigger)

Cron daily, 50 highest-priority accounts, 7-day lookback, filter the output for weekOverWeekDeltaPct > 100 AND hiringSignalScore > 70. Pipe matching records to a Slack webhook that pings #sdr-triggers. Typical volume: 50 signals/day × 30 days = 1,500/mo. Cost: ~$300/mo. A single closed deal from a well-timed trigger pays for years of this.

3. RevOps TAM scoring (one-off + quarterly refresh)

Score your entire 5K-account TAM by hiring velocity once per quarter. Sort by hiringSignalScore descending and feed the top 500 to your SDR team as "first-priority outbound this quarter." Typical volume: 5,000 signals one-time. Cost: ~$1,000 per quarter. Compared to PredictLeads Enterprise at $40/mo credit floor + ~$0.04/credit = $200+/mo recurring just to maintain account scoring, this is a one-shot $1,000 spend with no contract.

4. VC portfolio hiring tracker

Monthly run on every portco domain (e.g. 30 portcos for a typical seed/A-stage VC). Pull hiringSignalScore, roleBreakdown.engineering, roleBreakdown.sales, weekOverWeekDeltaPct. Track the trend month-over-month: portcos with declining velocity for 2 consecutive months get flagged in the quarterly LP letter. Typical volume: 30 signals/mo. Cost: ~$6/mo per fund. Compared to a Crunchbase Pro seat at $749/mo, this is a rounding-error spend.

5. M&A acquisition-candidate scout

Weekly pull on 500-domain acquisition-candidate list. Sort by seniorityMix.executivePct (companies building out leadership = pre-fundraise or pre-exit) and roleBreakdown.sales (companies building out GTM = ready to scale revenue). Typical volume: 2,000 signals/mo. Cost: ~$400/mo. Compared to building this internally with a custom LinkedIn scraper, multiple-engineer build-out + ongoing maintenance.

6. Sales-trigger newsletter editorial pipeline

Weekly refresh on 5K-domain list. Filter for new entrants to the top-100-by-score cohort week-over-week. The new entrants = your newsletter's "5 companies that started hiring fast this week" segment — sold to 200 paying subscribers at $99/mo. Typical volume: 5,000 × 4 weeks = 20,000/mo. Cost: ~$4,000/mo. Newsletter revenue: $19,800/mo gross. Net margin: ~80% on a single signal source.

Pricing

  • company-hiring-signal event: $0.20 per company-signal record (aggregated across LinkedIn + Indeed, with role breakdown, seniority mix, week-over-week delta, and composite score). Billed only on successful signal records — error records (e.g. domain didn't resolve) are not charged.
  • No subscription. No setup fee. No minimum spend. No annual contract.
  • Pricing justification: each company-signal event runs ~30 underlying scrapes (LinkedIn jobs search + Indeed company-jobs page + cross-platform deduplication). The buyer would pay $0.003–$0.01 per raw job × 30 = $0.09–$0.30 to do this manually. $0.20 sits inside that range AND saves the aggregation logic, the regex maintenance, and the cross-platform dedup.

Realistic costs

WorkflowVolumeCost
Weekly SDR refresh, 200 accounts800 signals/mo~$160/mo
Daily hiring-spike alert, 50 accounts1,500 signals/mo~$300/mo
Quarterly TAM scoring, 5K accounts5,000 signals/quarter~$1,000/quarter
Monthly VC portfolio tracker, 30 portcos30 signals/mo~$6/mo
Weekly newsletter, 5K-domain list20,000 signals/mo~$4,000/mo

Compared to PredictLeads Pro at $40/mo credit minimum + $0.04/credit (so 1,500/mo = $60/mo + a $40 sunk minimum every month), or Cognism Elevate at $37,498/year for 5 seats (so $625/seat/month just to reach the API), the weekly SDR workflow above is ~74% cheaper than the cheapest Cognism Elevate seat — without an annual contract, per-seat licensing, or walled-garden dashboard. You own the raw data.

Apify platform compute (RAM-seconds) is charged separately and is negligible — typically <$0.10 per company-signal record at default config.

Scrape company hiring signals with Python, JavaScript, or no code

You can run Hiring Velocity Signal API directly from the Apify Console (no code), or integrate it into your scripts.

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("zhorex/hiring-velocity-signal-api").call(run_input={
"companyDomains": ["stripe.com", "ramp.com", "linear.app"],
"lookbackDays": 30,
"includeRoleBreakdown": True,
"includeSeniorityMix": True,
"includeWeekOverWeekDelta": True,
"platforms": ["linkedin", "indeed"],
})
for signal in client.dataset(run["defaultDatasetId"]).iterate_items():
print(
f"{signal['companyDomain']:25s} "
f"score={signal['hiringSignalScore']:>5} "
f"new={signal['newJobsInPeriod']:>3} "
f"wow={signal['weekOverWeekDeltaPct']}% "
f"eng={signal['roleBreakdown']['engineering']} "
f"sales={signal['roleBreakdown']['sales']}"
)

JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });
const run = await client.actor('zhorex/hiring-velocity-signal-api').call({
companyDomains: ['stripe.com', 'ramp.com', 'linear.app'],
lookbackDays: 30,
includeRoleBreakdown: true,
includeSeniorityMix: true,
includeWeekOverWeekDelta: true,
platforms: ['linkedin', 'indeed'],
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((s) => {
console.log(
`${s.companyDomain} score=${s.hiringSignalScore} ` +
`new=${s.newJobsInPeriod} wow=${s.weekOverWeekDeltaPct}%`
);
});

Scheduled / recurring runs (where PPE compounds)

The real value of this Actor is in scheduled refreshes, not one-off pulls. Use Apify Schedules with a cron expression:

  • 0 7 * * 1 — Monday at 7am for weekly SDR account-list refresh
  • 0 7 * * * — daily at 7am for hiring-spike alerts
  • 0 7 1 */3 * — quarterly at 7am for RevOps TAM scoring

Each scheduled run hits the same Actor with your saved input config, pushes to the same dataset, and bills only on the new signals. Pair with a Zapier / Make / n8n webhook to push high-score records straight to Slack, Salesforce, HubSpot, Attio, or your data warehouse.

Example input

{
"companyDomains": ["stripe.com", "ramp.com", "linear.app"],
"lookbackDays": 30,
"includeRoleBreakdown": true,
"includeSeniorityMix": true,
"includeWeekOverWeekDelta": true,
"platforms": ["linkedin", "indeed"]
}

One list of domains, one call, signals back for every domain. Mix-and-match the four optional outputs to control cost — disabling the weekOverWeekDelta cuts each company's scrape time by ~40% (no second-window fetch) if you only need the snapshot.

Example output (one company-signal record)

{
"companyDomain": "stripe.com",
"companyName": "Stripe",
"linkedinCompanyUrl": "https://www.linkedin.com/company/stripe",
"indeedCompanyUrl": "https://www.indeed.com/cmp/Stripe",
"lookbackDays": 30,
"totalActiveJobs": 184,
"newJobsInPeriod": 47,
"weekOverWeekDeltaPct": 220.0,
"roleBreakdown": {
"engineering": 23,
"sales": 9,
"marketing": 4,
"product": 5,
"ops": 3,
"other": 3
},
"seniorityMix": {
"juniorPct": 4.3,
"midPct": 27.7,
"seniorPct": 53.2,
"executivePct": 14.8
},
"topJobTitles": [
"Senior Software Engineer",
"Account Executive",
"Senior Product Manager",
"Staff Engineer, Payments",
"Solutions Engineer"
],
"hiringSignalScore": 87.4,
"platformsQueried": ["linkedin", "indeed"],
"scrapedAt": "2026-05-17T10:00:00+00:00"
}

Reading: Stripe posted 47 new engineering-heavy senior-skewed jobs in the last 30 days, up 220% week-over-week. That's a sales trigger — they're in expansion mode, the average engineering-domain B2B SaaS sells well into companies in active expansion, and the seniority skew means decision-makers are getting hired right now.

Output schema reference

FieldTypeNotes
companyDomainstringEcho of input, normalized to bare hostname (stripe.com, not https://www.stripe.com)
companyNamestringBest-effort canonical company name from cross-platform mode
linkedinCompanyUrlstring | nullHeuristic company URL — null if the brandable label didn't resolve
indeedCompanyUrlstring | nullSame
lookbackDaysintEcho of input — useful when piping into a multi-window store
totalActiveJobsintDistinct currently-listed jobs across both platforms (deduplicated)
newJobsInPeriodintSubset of totalActiveJobs posted within lookbackDays
weekOverWeekDeltaPctfloat | null(current - previous) / previous × 100. null when previous-window count was 0 (delta undefined) or includeWeekOverWeekDelta=false
roleBreakdownobject{engineering, sales, marketing, product, ops, other} integer counts
seniorityMixobject{juniorPct, midPct, seniorPct, executivePct} percentages summing to ~100
topJobTitlesstring[]Top 5 most frequent job titles in the new-jobs window
hiringSignalScorefloat (0-100)Composite of velocity × delta × seniority × breadth
platformsQueriedstring[]Which platforms produced data on this run
scrapedAtISO 8601UTC timestamp when this record was aggregated
errorstring | absentOnly present on error records — values include invalid_domain, unresolved_label, no_jobs_found

What this Actor is NOT

  • Not a raw job scraper. This Actor returns a single aggregated record per company — counts, deltas, breakdowns. If you need the individual job postings (title, description, JD text, recruiter contact), use the dedicated LinkedIn Jobs + Recruiter Enrichment Actor instead.
  • Not a contact database. No employee names, no emails, no phone numbers. For company + employee + tech stack + validated phone enrichment, use B2B SDR Enrichment Chain.
  • Not a Cognism / PredictLeads replacement at enterprise scale. Cognism Elevate and PredictLeads Enterprise also bundle dialer integration, GDPR-cleansed contact data, SLAs, and dedicated success management. This Actor is the raw signal layer — bring your own CRM and alerting stack.
  • Not real-time streaming. Poll-based — LinkedIn and Indeed don't expose change feeds for company jobs. Daily / hourly cron is the right cadence.
  • Not a full ATS / Greenhouse / Lever export. Some companies surface roles only on their own ATS that never make it to LinkedIn / Indeed — this Actor will miss those. For full ATS coverage, contact us about a custom integration.
  • Not a Glassdoor signal source (yet). Glassdoor headcount-change signal is on the roadmap — currently this Actor only covers LinkedIn + Indeed.

FAQ

What is the best PredictLeads alternative in 2026?

The Hiring Velocity Signal API by Zhorex is the best PredictLeads alternative on Apify in 2026 for B2B SDR / RevOps teams that need company-level hiring intent signals without a $40/mo credit floor and without per-credit complexity. It aggregates LinkedIn + Indeed in one normalized output at $0.20 per company-signal. No subscription, no minimum spend, no annual contract. Pay only for the signals you actually pull.

What is the best Cognism alternative for hiring intent data?

For the hiring-intent slice of Cognism Elevate ($37,498/year for 5 seats per Vendr's published enterprise contract data), this Actor delivers the same company-level signal — new postings count, week-over-week velocity, role breakdown, seniority mix — at $0.20 per company. A typical 200-account weekly refresh costs ~$160/mo here vs ~$625/seat/month for the cheapest Cognism Elevate tier. You give up Cognism's dialer integration, GDPR-cleansed contact data, and managed-service layer — keep those if you need them, swap in this Actor for the signal layer.

How is this different from a raw LinkedIn / Indeed jobs scraper?

A raw scraper returns 1 record per job posting. This Actor returns 1 aggregated record per company — total active jobs, week-over-week delta, role breakdown, seniority mix, composite score. You skip the data-engineering job of pulling thousands of raw records, deduplicating across platforms, classifying titles into role buckets, computing window-over-window deltas, and rolling up to company-level. That's ~200 lines of Python + ongoing regex maintenance you don't have to write. The output is ready to join with your CRM on the companyDomain field.

How much does it cost to monitor hiring intent on 500 accounts weekly?

500 accounts × 4 weekly refreshes/mo = 2,000 signals/mo × $0.20 = $400/mo. Compared to PredictLeads Pro at ~$200+/mo (with a sunk $40/mo minimum) or Cognism Elevate at ~$625/seat/mo, you sit between the cheapest credit-based comparable and the enterprise tier — and you get the signal with no contract, no per-seat licensing, and no annual commit. Cancel by deleting the Apify schedule.

Is there an official LinkedIn or Indeed hiring-intent API?

No. LinkedIn's Talent Insights API is enterprise-only with five-figure-plus annual contracts. Indeed has no public hiring-intent API. PredictLeads, Cognism, LeadIQ Pro, and others run their own scrapers and resell the data with markup. This Actor is the direct alternative — same scraping approach, normalized output, pay-per-signal.

Can the Actor handle large account lists?

Yes. The Actor batches companies with bounded concurrency (3 parallel by default) and a per-platform 60-second wall-clock budget so one slow platform never drags the whole batch. For 1,000+ account lists, split into multiple scheduled runs of ~200 accounts each, or contact us about an enterprise tier with higher per-batch concurrency and dedicated proxy infrastructure.

What does the hiringSignalScore actually measure?

It's a 0-100 composite of four sub-signals: velocity (log-scaled new-jobs count, 0-40 pts), delta (week-over-week growth, 0-30 pts), seniority (share of senior + executive postings, 0-20 pts), and breadth (number of non-zero role buckets, 0-10 pts). Calibration: a flat-velocity 10-job company scores ~50; a 50-job +150% WoW senior-heavy 5-bucket company scores ~95. Sort your account list by this single field to surface the highest-intent accounts to your SDR team in seconds.

What does weekOverWeekDeltaPct mean exactly?

It compares the current lookback window (default 30 days) to the immediately preceding equivalent window (the prior 30 days). A value of +200 means the company posted 3x more jobs in the current window than in the previous one. A value of -50 means they posted half as many. null means the previous-period count was zero (delta undefined — the company has no baseline). For most use cases, anything above +100 is a strong hiring-spike trigger.

Can I scrape company hiring signals in Python?

Yes. Install the Apify Python client (pip install apify-client), then call zhorex/hiring-velocity-signal-api from any Python script — see the Python example above. Works identically in JavaScript / Node, Go, Ruby, or any language with HTTP — Apify exposes a REST API for every Actor.

Does this need LinkedIn or Indeed login credentials?

No. The Actor reads only the publicly accessible job-discovery surfaces on both platforms — the same content any anonymous browser visitor can see. Optional cookieStrings are user-supplied and used only to raise recall and reduce rate-limit risk on large batches, never to bypass authentication or surface gated content. The field is encrypted at rest by Apify.

What if a domain doesn't resolve to a LinkedIn / Indeed company page?

The Actor logs the resolution failure and emits a record with error: "unresolved_label" (or "no_jobs_found" if the page resolved but contained no current postings). These records are not PPE-charged. Most-common cause: the company's brandable label doesn't match the heuristic — e.g. a company at acme.com whose LinkedIn page lives at linkedin.com/company/acme-international instead of linkedin.com/company/acme. For these edge cases, pre-resolve the LinkedIn slug manually and contact us about a v0.2 input mode that accepts explicit per-domain slug overrides.

The Actor accesses only publicly available content — the same content any anonymous browser visitor can see on LinkedIn's public job-search surface and Indeed's public company-jobs pages. No login bypass, no gated content, no scraping of private profiles or applicant data. Always review your local laws and each platform's terms of service for your specific use case. The seminal hiQ Labs v. LinkedIn Ninth Circuit ruling established that scraping public LinkedIn data does not violate the CFAA — but your jurisdiction and use case may differ.

Compliance posture

  • Only public job postings. No login bypass, no scraping of private content, no harvesting of applicant data, no recruiter PII enrichment, no personal email collection.
  • User-supplied cookies only. The optional cookieStrings field is encrypted at rest by Apify; values are never logged. Cookies are used to raise recall and rate-limit comfort on large batches — never to bypass authentication or access gated content.
  • No PII in output. The signal records contain only company-level aggregates. No individual employee names, no applicant data, no recruiter contact info.
  • Residential proxy support for compliance with platform fair-use norms; datacenter proxies trip rate limits and we recommend against them for production.
  • Buyers running this commercially are responsible for downstream compliance with their own jurisdiction's data laws.

Integrations & data export

The Actor integrates with your existing workflow tools:

  • Salesforce / HubSpot / Attio / Pipedrive — Map companyDomain and push hiringSignalScore as a custom field
  • Slack — Webhook on completed runs, or filter for hiringSignalScore > 80 records to alert the SDR team
  • Zapier / Make / n8n — Trigger downstream workflows on new high-score records
  • Snowflake / BigQuery / Postgres — Push to your data warehouse via the Apify dataset API or CSV export
  • REST API — Call the Actor programmatically from any language
  • Webhooks — Get notified when a scheduled run finishes
  • Data formats — Download as JSON, CSV, Excel, XML, or RSS

Roadmap

  • Glassdoor headcount-trend join — surface Glassdoor employee growth as a corroborating signal alongside hiring velocity
  • BuiltWith tech-stack join — combine hiring signal with tech-stack adoption for tighter SDR targeting (e.g. "companies hiring Salesforce admins right now")
  • Per-domain explicit LinkedIn / Indeed slug overrides — for the ~15% of company domains where the heuristic slug doesn't match
  • Wellfound / AngelList Talent integration — full coverage of early-stage / startup hiring (currently underrepresented by LinkedIn + Indeed)
  • Ashby / Greenhouse / Lever ATS direct API integrations — full coverage of companies that don't cross-post to LinkedIn / Indeed
  • Per-month historical trend output — surface the last 6 months of newJobsInPeriod as a time series for trend dashboards
  • Per-engineer-level seniority sub-classification — split senior into senior IC vs staff vs principal

Built on zhorex's B2B suite

This Actor complements the other B2B intelligence tools in the same suite:

If you need raw job listings (titles + descriptions + recruiter contact for direct outreach), use the LinkedIn Jobs + Recruiter Actor directly. This aggregator is for company-level hiring intent signals — the sales trigger layer, not the recruiter tool.

Support

Found a bug? Want a new field? Open an issue on the Actor page — typical turnaround within 48 hours.


💡 Found this Actor useful? Please leave a star rating — it helps other SDR / RevOps teams discover this tool instead of paying $37K/year for a Cognism Elevate seat. 30 seconds, one click.


Last updated: May 2026 · Actively maintained · Built for B2B SDR Managers, RevOps Leads, VC analysts, M&A scouts, and sales-trigger newsletter operators who need hiring-intent signals without an annual contract.