Company Tech Stack & Hiring Intelligence
Pricing
from $0.25 / 1,000 results
Company Tech Stack & Hiring Intelligence
Detect technologies from company websites, extract tech requirements from job postings, discover competitors. 200+ technology signatures across 15 categories.
Pricing
from $0.25 / 1,000 results
Rating
0.0
(0)
Developer
Cynix Dev
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
21 hours ago
Last modified
Categories
Share
Detect a company's technology stack from its website, extract the technologies it's hiring for from live job postings, and discover companies in an industry. Over 200 technology signatures across 15 categories.
What it does
Three modes, aimed at three different questions:
techStack— what is this company running? Scans the websites you list for over 200 technology signatures in HTML patterns and HTTP headers.hiringSignals— what are they investing in? Reads live job postings from Greenhouse, Lever and Ashby and extracts the technologies the roles require, plus hiring velocity.competitorLandscape— who else is in this space? Discovers companies by industry from Y Combinator and BuiltIn, then profiles them.
The combination is what makes it useful: the website tells you what a company deployed in the past, and the job postings tell you what they're committing to next.
Features
- 200+ technology signatures across frontend, backend, cloud, database, analytics, marketing, devops, payment and security.
- Confidence scoring — every detection carries a 0–1 score plus the
evidencethat produced it. - Hiring-signal analysis — technologies pulled from live ATS job postings, not guesswork.
- Company discovery — find companies in an industry via Y Combinator and BuiltIn.
- Deep scan — optionally crawl
/about,/engineering,/blog,/careers,/api,/developersand inspect response headers. - Three output shapes — one row per company, per technology, or per job, so the dataset matches your analysis.
- Category filtering — only look for the technology classes you care about.
What people use it for
- Sales prospecting — find companies already running the stack your product integrates with.
- Competitive analysis — profile a market's technology choices in one run.
- Investment due diligence — verify a startup's claimed stack against reality.
- Partnership targeting — identify companies hiring for the technology you support.
- Market sizing — count adoption of a framework across an industry cohort.
Reading confidence and evidence
Detection is signal-based, not magic. A confidence of 0.33 with evidence: ["HTML: react"] means one signal matched; several matching signals across HTML and headers push the score higher. Treat confidence as a ranking tool, not proof. Low-confidence hits are worth spot-checking, because generic strings appear on pages for many reasons.
Two structural limits worth knowing:
- Server-side technology is partly invisible. A site behind a CDN may hide its origin stack entirely, so absence of evidence isn't evidence of absence.
deepScancosts more but sees more. Extra subpages and headers surface engineering-blog and developer-docs signals that the homepage never shows.
Choosing an output shape
outputFormat | Row means | Best for |
|---|---|---|
company | one company, all detected tech listed | company-level profiles and CRM enrichment |
technology | one company + one technology | pivot tables, adoption counts |
job | one job posting | hiring analysis, role-level requirements |
Input
mode is required and decides which other fields matter: companies for techStack/hiringSignals, industry and discoverySources for competitorLandscape.
| Field | Type | Default | What it does |
|---|---|---|---|
mode (required) | string | techStack | What to analyze. 'techStack' = scan the companies you list and detect their web tech stack. 'hiringSignals' = scan the same companies but shape the dataset around job postings and the tech those jobs require (best with 'Include hiring data' ON and 'Output format' = Per Job). 'competitorLandscape' = you do NOT supply companies — the actor discovers them by industry, then analyzes them. Options: techStack, hiringSignals, competitorLandscape. |
companies | array | ["stripe.com", "vercel.com"] | Company domains, names, or URLs to analyze (e.g. 'stripe.com', 'Stripe', 'https://stripe.com'). Used by 'techStack' and 'hiringSignals' modes. Ignored in 'competitorLandscape' mode. |
discoverySources | array | ["yc", "builtin"] | Where to find companies when in 'competitorLandscape' mode. Supported: 'yc' (Y Combinator), 'builtin' (BuiltIn), 'welcometothejungle' (Welcome to the Jungle). |
industry | string | — | Industry/category used to discover companies in 'competitorLandscape' mode (e.g. 'fintech', 'devtools', 'saas', 'ai', 'healthtech'). |
technologies | array | [] | Limit detection to specific technologies. Use exact names as they appear in the dataset (e.g. 'React', 'Next.js', 'Stripe', 'AWS', 'PostgreSQL'). Leave empty to detect all known technologies. |
techCategories | array | ["frontend", "backend", "cloud", "analytics", "devops", "payment", "security"] | Which categories of technology to look for. Available: frontend, backend, cloud, database, analytics, marketing, payment, devops, security, ai-ml. |
includeHiringData | boolean | true | Fetch live job postings from Greenhouse, Lever, and Ashby to extract required technologies and hiring velocity. Works in any mode; pair it with 'Output format' = Per Job to focus on jobs. |
jobSources | array | ["greenhouse", "lever", "ashby"] | Applicant-tracking systems to pull job postings from when 'Include hiring data' is ON. Supported: 'greenhouse', 'lever', 'ashby'. |
maxCompanies | integer | 50 | Maximum number of discovered companies to analyze in 'competitorLandscape' mode. Range 1–500. |
maxJobsPerCompany | integer | 20 | Limit on job postings analyzed per company when 'Include hiring data' is ON. Range 1–200. |
outputFormat | string | technology | How each dataset row is shaped. 'company' = one row per company (lists all detected tech). 'technology' = one row per company-technology pair (default). 'job' = one row per job posting (use with 'Include hiring data'). Options: company, technology, job. |
includeConfidence | boolean | true | Add a 0–1 confidence score to each detection, based on how many signals (HTML patterns + HTTP headers) matched. |
deepScan | boolean | false | Also crawl common subpages (/about, /engineering, /blog, /careers, /api, /developers) and read HTTP response headers, merging any extra technologies found. Slower but broader coverage. |
proxyConfiguration | object | see below | Use Apify Proxy for sites that block datacenter IPs. |
Input example
{"mode": "techStack","companies": ["stripe.com"],"includeHiringData": false,"deepScan": false,"maxCompanies": 1,"discoverySources": ["yc","builtin"],"techCategories": ["frontend","backend","cloud","analytics","devops","payment","security"],"jobSources": ["greenhouse","lever","ashby"],"maxJobsPerCompany": 20,"outputFormat": "technology","includeConfidence": true}
Output
Record shape follows outputFormat. In technology shape (the default) you get one row per detected technology per company, with confidence and evidence — the easiest form to pivot on.
Every dataset record contains: mode, company, domain, technology, category, confidence, evidence, version, firstDetected, lastDetected, jobTitle, jobUrl, jobDescription, techRequirements, hiringVelocity, fetchedAt.
Output example
A real record from a run of this Actor:
{"mode": "techStack","company": "Stripe","domain": "stripe.com","technology": "React","category": "frontend","confidence": 0.3333333333333333,"evidence": ["HTML: react"],"version": null,"firstDetected": "2026-08-20T02:50:05.957Z","lastDetected": "2026-08-20T02:50:05.957Z","jobTitle": null,"jobUrl": null,"jobDescription": null,"techRequirements": [],"hiringVelocity": 0,"fetchedAt": "2026-08-20T02:50:05.957Z"}
Export the dataset as JSON, CSV, Excel, XML or JSONL from the Console, or pull it programmatically through the Apify API and any of the official clients.
How to use it
- Click Try for free (or Start if you already have an Apify account).
- Fill in the input fields described above — the defaults already produce a working run.
- Press Start and watch the log; results stream into the dataset as they are found.
- When the run finishes, open the Output/Storage tab and export as JSON, CSV or Excel.
Runs can be scheduled (hourly, daily, weekly) and wired into Slack, Google Sheets, Zapier, Make, webhooks or your own backend through Apify integrations. Everything the Console does is also available over the Apify API.
Proxy configuration
This Actor accepts a standard Apify proxy configuration object. Residential proxy is the default because the target site rate-limits datacenter IP ranges; you can select a specific exit country or supply your own proxy URLs.
{"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Pricing
This Actor is billed on Apify's pay-per-event model: a small charge when a run starts, plus a charge for each result written to the dataset. You only pay for records you actually receive — a run that finds nothing costs only the start event. Current rates are always shown on the Pricing tab of this page, and the run log prints your usage as it goes.
Free-plan credits from Apify cover a large amount of light usage, so you can evaluate the Actor before committing to anything.
FAQ
How accurate is technology detection?
Client-side technologies — frontend frameworks, analytics, tag managers, payment widgets, CDNs — are detected reliably because they leave fingerprints in HTML and headers. Backend languages, databases and internal infrastructure are frequently invisible from outside. Use hiringSignals to fill that gap: job postings name the internal stack.
What's the difference between this and BuiltWith or Wappalyzer?
Same category of signal-based detection, with two additions: hiring signals from live ATS postings, and industry-level company discovery — so you can go from "an industry" to "profiled companies" in one run.
Why does a company show technologies I know they don't use?
Generic signatures can match incidental strings, and third-party embeds bring their own stack onto the page. Check evidence and confidence, and raise your confidence threshold when analysing.
Can I limit detection to specific technologies?
Yes — list exact names in technologies, or restrict whole classes with techCategories. Both cut runtime and noise.
Does competitorLandscape cover every company in an industry?
No. It discovers through Y Combinator and BuiltIn, which skew toward startups and tech-forward employers. It's a strong sample, not a census.
Other Actors by cynix_dev
| Actor | What it does |
|---|---|
| Job Postings — ATS Boards Extractor | Pull live job postings straight from companies' public applicant-tracking boards — Greenhouse, Lever, Ashby, SmartRecruiters, and … |
| SEC EDGAR Filings Extractor | Search and extract SEC EDGAR filings: full-text search across all filings or company filing histories by CIK. |
| WHOIS & DNS Enrichment | Enrich domains with structured WHOIS data (registrar, registration/expiration dates, status, nameservers) and optional DNS … |
| News & Press Release Monitor | Watch company newsrooms, blogs, and press pages and get one clean record per article — with new-item detection between runs, so a … |
| Job Postings — ATS Boards Extractor | Pull live job postings straight from companies' public applicant-tracking boards — Greenhouse, Lever, Ashby, SmartRecruiters, and … |
| WHOIS & DNS Enrichment | Enrich domains with structured WHOIS data (registrar, registration/expiration dates, status, nameservers) and optional DNS … |
Legal and responsible use
This Actor collects only publicly available information. You are responsible for how you use the data, including compliance with the target site's Terms of Service, robots directives, copyright, and data protection law such as GDPR and CCPA. Do not use it to gather personal data without a lawful basis.
Support and feedback
Found a bug, hit a site change, or need an extra field? Open a ticket on the Issues tab of this Actor — issues are read and fixed. Feature requests and custom-scraper enquiries are welcome through the same channel.