Wellfound Jobs Scraper — Startup Roles API
Pricing
from $2.00 / 1,000 jobs
Wellfound Jobs Scraper — Startup Roles API
Scrape Wellfound (AngelList Talent) startup job listings by keyword and optional location. Title, company, salary label, remote flag, locations and job URL. HTTP-only via SEO role pages + Apollo __NEXT_DATA__.
Pricing
from $2.00 / 1,000 jobs
Rating
0.0
(0)
Developer
Noah Adler
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
17 hours ago
Last modified
Categories
Share
Wellfound Startup Jobs Scraper
Wellfound (formerly AngelList Talent) startup jobs scraper by keyword / role + optional location: title, startup name, salary + equity, remote flag, locations, and absolute job URL — one clean Dataset row per listing.
Built for startup recruiting intel, equity benchmarking, lead gen, and PPE-friendly exports. No browser automation — HTTP + Chrome TLS fingerprint against Wellfound SEO role pages (/role/…) and the embedded Apollo __NEXT_DATA__ store.
Wellfound SSR embeds Apollo entities (
JobListingSearchResult,StartupResult) with compensation strings like$120k – $200k • 0.01% – 0.15%. This Actor GETs the public SEO landing pages withcurl_cffi(chrome124), maps salary vs equity into separate fields, and paginates with?page=NuntilmaxJobs. Residential proxy is optional (often works without proxy; use RESIDENTIAL if you hit Security Check).
Why this Actor: Startup + equity schema (not generic cheap jobs) · Remote / city SEO URLs · Clean salary/equity split · No Playwright · No email-harvesting claims · Cheap PPE-friendly alternative to bloated multi-board Actors · CSV / API / webhooks ready
Store icon: set the Actor icon in Apify Console (PNG not shipped in this repo; assets/ reserved for later).
Table of contents
- What this Actor does
- What you get
- Features
- Input
- Output example
- Output fields
- Quick start (API)
- Use cases
- Limitations
- FAQ
- Keywords
What this Actor does
| Step | Action |
|---|---|
| 1 | Accept keyword + optional location / maxJobs |
| 2 | Map to SEO URL: /role/{slug}, /role/r/{slug} (Remote), or /role/l/{slug}/{city} |
| 3 | GET HTML with Chrome impersonate |
| 4 | Parse __NEXT_DATA__ → Apollo seoLandingPageJobSearchResults |
| 5 | Expand StartupResult.highlightedJobListings → Dataset rows (salary + equity) |
| 6 | Paginate ?page=N until maxJobs or last page |
Input: keyword, location, max jobs, proxy.
Output: one Dataset row per job.
What you get
Job / startup
jobId,title,jobType,jobUrlcompanyName,companySlug,companySize,companyHighConcept,companyLogoUrl
Compensation (equity angle)
compensation(raw),salaryLabel,equityLabel
Location / remote
location,locationNames,remote,remoteKind
Meta
keyword,locationQuery,scrapedAt,error,errorMessage
Features
| Capability | Detail |
|---|---|
| Keyword + location | e.g. software engineer + Remote / San Francisco |
| Equity-aware schema | Splits Wellfound compensation into salary vs equity % |
| No browser | curl_cffi impersonate chrome124 + browserforge headers |
| Apollo SSR | Reads embedded search results — no fragile CSS selectors |
| Proxy-aware | Optional Apify proxy (RESIDENTIAL if Security Check / 403) |
| PPE-friendly | Listings only — no email harvesting claims |
Input
| Field | Required | Description |
|---|---|---|
keyword | Yes | Role keyword (maps to Wellfound SEO slug) |
location | No | Remote, city name, or empty for all |
maxJobs | No | 1–200 (default 40) |
proxyConfiguration | No | Default off; enable RESIDENTIAL if blocked |
Output example
{"jobId": "4716782","title": "Software Engineer","companyName": "Boom","companySlug": "boom-app","companySize": "SIZE_11_50","companyHighConcept": "Modern rental financial services for property managers and renters","location": "Austin","locationNames": ["Austin"],"remote": false,"compensation": "$120k – $200k • 0.01% – 0.15%","salaryLabel": "$120k – $200k","equityLabel": "0.01% – 0.15%","jobType": "full-time","jobUrl": "https://wellfound.com/jobs/4716782-software-engineer","keyword": "software engineer","locationQuery": null,"scrapedAt": "2026-09-21T20:00:00Z","error": false,"errorMessage": null}
Output fields
See Dataset schema in Console. Key fields: title, companyName, salaryLabel, equityLabel, remote, jobUrl. Soft-fail rows set error=true with an actionable errorMessage (403 / unknown role / parse failure).
Quick start (API)
curl "https://api.apify.com/v2/acts/noahadler~wellfound-jobs/runs?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"keyword":"software engineer","location":"Remote","maxJobs":20}'
Use cases
- Startup / VC talent pipeline monitoring
- Equity + salary band benchmarking by role
- Remote-first hiring market scans
- Competitive hiring intel for niche roles
Limitations
- Uses public SEO role pages only — arbitrary free-text that is not a Wellfound SEO role returns 404 soft-fail
- GraphQL live search is behind Security Check (not used)
- Equity / salary only when Wellfound publishes them on the card
- No full JD HTML or applicant PII
- Rate limits / Security Check may require RESIDENTIAL proxy
FAQ
Does this need a browser? No — HTTP + __NEXT_DATA__.
Remote vs city? location=Remote → /role/r/…; city → /role/l/{role}/{city}; empty → all locations.
Why equity fields? Wellfound’s differentiator vs generic job boards is startup equity in the compensation string — this Actor splits it explicitly.
Keywords
Wellfound, AngelList Talent, AngelList jobs, startup jobs scraper, equity jobs API, remote startup jobs, Wellfound scraper, Apify jobs actor