Wellfound (AngelList) Jobs Scraper - Flat $0.003, No Fees
Pricing
$3.00 / 1,000 job scrapeds
Wellfound (AngelList) Jobs Scraper - Flat $0.003, No Fees
Search Wellfound (AngelList) startup jobs by keyword: salary, equity when disclosed, company profile and apply link. $0.003 per job, no actor-start fee, no extra charge for full detail. No login needed.
Wellfound (AngelList) Jobs Scraper
Why use this scraper
Wellfound (formerly AngelList Talent) is where a large share of funded startups post roles, but it has no public API and its job pages only give up the full listing, including salary and equity, after loading a search and paginating through results by hand. Recruiters sourcing for startup clients, job boards aggregating listings, and researchers tracking startup hiring all end up doing that by hand, page after page, for every keyword they care about.
This actor runs that search for you. Give it a role keyword, and optionally a location or a remote filter, and it returns structured job records: title, compensation, location, required skills, the posting company and a direct apply link, ready to load into a spreadsheet, a sourcing pipeline or a job board. It replaces the manual loop of opening each result, waiting for the page to load, and copying the fields you need one listing at a time.
Overview
Input is a role keyword plus optional filters (location, remote-only, how many jobs and pages to pull). Output is one record per job listing, deduplicated by job ID, with the compensation range and equity when Wellfound discloses it, the company's name, size and tagline, and the direct apply URL. A typical run of a few dozen jobs finishes in well under a minute.
Supported inputs
keywords(required) - the role search term, e.g.software engineer,product manager,growth marketer.location- optional free-text location filter (e.g.San Francisco,Remote,Europe); jobs are matched against Wellfound's own location tags for the posting.remote- when true, restrict results to roles marked remote-eligible.maxJobs- cap on how many job records to return in the run (default 50, up to 500).maxPages- cap on how many search-result pages to walk before stopping (default 5).
Use cases
- Startup recruiting agencies - build a sourcing pipeline of open roles at funded startups for a given skill set, refreshed on a schedule.
- Job board aggregation - feed a niche startup-jobs board with fresh Wellfound listings without maintaining your own scraper.
- Candidate research - a job seeker or career coach pulling every open role matching a keyword to compare compensation ranges across companies.
- Recruitment market research - track how many roles for a given skill (e.g. "Rust engineer") are open on Wellfound at a point in time as a hiring-demand signal.
- Outreach list building - collect the posting companies for a keyword and their websites as a first pass before deeper company research.
- Talent-supply mapping for investors - track which categories of startups are actively hiring for a given skill as a rough proxy for where headcount (and funding) is flowing.
How it works
The actor runs Wellfound's own public job search for the given keyword, walks the result pages up to maxPages, and follows each listing to pull its full detail: compensation string (parsed into a numeric salary range and equity range when present), description, required skills, location tags and the posting company's public profile fields. Jobs already seen in the same run (by Wellfound's job ID) are deduplicated before being returned.
Compensation on Wellfound is published as a free-text range like "$160k - $220k" or, less often, "$100k - $120k plus 0.5% to 1.0% equity"; the actor parses that string into salaryMin/salaryMax and, when present, equityMin/equityMax, so downstream code can filter and sort numerically instead of parsing text itself.
Input configuration
Basic keyword search:
{"keywords": "software engineer"}
Remote-only search in a specific field, capped at 100 results:
{"keywords": "product designer","remote": true,"maxJobs": 100}
Location-filtered search with a smaller page budget:
{"keywords": "growth marketer","location": "New York","maxPages": 3}
Output sample
Real item from a production run:
{"jobId": "4728487","title": "Quantitive Developer","role": "Software Engineer","employmentType": "full-time","workMode": "Remote","compensation": "$160k – $220k","salaryMin": 160000,"salaryMax": 220000,"equityMin": null,"equityMax": null,"currency": "USD","locations": ["London"],"company": {"name": "Noise","slug": "noisexyz","companySize": "1-10","tagline": "The platform for trading trends","logo": "https://photos.wellfound.com/startups/i/10294274-6af53e05c8b79d4ef61722e7a52ea69a-medium_jpg.jpg"},"applyUrl": "https://wellfound.com/jobs/4728487","url": "https://wellfound.com/jobs/4728487","keywords": "developer","scrapedAt": "2026-09-21T19:13:08.812Z"}
equityMin/equityMax come back populated whenever the poster includes an equity range in the compensation text; this particular listing did not disclose one, which is common for senior technical roles at later-stage startups.
Key output fields
| Field | Type | Description |
|---|---|---|
jobId | string | Wellfound's internal job ID |
title | string | Job title as posted |
role | string | Wellfound's normalized role category |
employmentType | string | e.g. full-time, part-time, contract |
workMode | string | Remote or Onsite, based on Wellfound's own tag |
compensation | string | Raw compensation text as posted (e.g. $160k - $220k) |
salaryMin / salaryMax | number/null | Parsed numeric salary range |
equityMin / equityMax | number/null | Parsed equity range, null when not disclosed |
locations[] | array | Location tags for the posting |
description | string | Full job description text |
company.name / .slug / .companySize / .tagline / .logo | object | Posting company's public profile fields |
applyUrl / url | string | Direct link to apply or view the listing |
scrapedAt | string | ISO timestamp of the scrape |
Pricing
| Event | Price |
|---|---|
Job scraped (job-scraped) | $0.003 per job returned |
No separate actor-start fee. Free Apify plan: capped at 15 jobs per run.
What makes this richer than the competition
memo23/wellfound-jobs-scraper(149 users/30d) charges $0.00099 per result plus a separate $0.001 "additional data" event, so a job with the extra data most users actually want costs close to $0.002, and the pricing has two line items to reconcile.blackfalcondata/wellfound-scraper(275 users/30d) charges a $0.005 actor-start fee on top of $0.003 per result, so a small run pays a fixed cost on top of the per-job price that this actor does not charge.
This actor's pricing is one flat $0.003 per job with no start fee and no secondary "additional data" charge, so the price quoted is the price paid.
Notes & limitations
- Wellfound does not disclose equity on every listing;
equityMin/equityMaxarenullwhenever the poster did not include an equity range in the compensation text, which is common, not a scraping gap. - The
fundingStageinput field currently has no effect on which jobs are returned; every job matchingkeywords(andlocation/remotewhen set) comes back regardless of the company's funding stage. Filter on funding stage downstream if you need it. - The output does not include the company's funding stage, team size beyond a size bracket, industry or a named hiring contact; only what Wellfound's own job and company pages publish (name, size bracket, tagline, logo) is returned.
- Very broad keywords can return a large number of pages; use
maxPagesandmaxJobstogether to keep a run's cost predictable.
FAQ
Does it return jobs company-by-company or by keyword search? By keyword search across all companies on Wellfound; there is no by-company mode in this input.
Can I filter by funding stage or team size? Not currently in this actor; the fundingStage input exists but does not filter results (see Notes & limitations). Filter on company.companySize or your own funding-stage data downstream.
Is equity data always present? No, only when the company discloses it in the posting; a null equity range means "not disclosed," not "zero equity."
Does this need a Wellfound login? No, it uses only Wellfound's public job search and listing pages.
What happens if a keyword returns zero jobs? The run finishes with a single warning record noting the empty keyword instead of failing outright.
Can I run several keywords in one call? No, keywords takes one search term per run; call the actor once per keyword (or per keyword and location combination) if you need several, each is billed only for the jobs it actually returns.
Does maxJobs cut off mid-page or does it always finish the current page? It stops once the cap is reached, so the last page of a run may return fewer than a full page of results.
For AI Agents & LLM Apps
Call this actor from an MCP client via mcp.apify.com, or synchronously from a sourcing pipeline:
curl "https://api.apify.com/v2/acts/gio21~wellfound-jobs-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \-X POST -H "Content-Type: application/json" \-d '{"keywords": "backend engineer", "remote": true, "maxJobs": 30}'
The response is the dataset items directly, ready for an agent to rank by compensation or filter by location before presenting a shortlist.
Disclaimer
This actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Wellfound or AngelList. All trademarks mentioned are the property of their respective owners.
SEO Keywords
Wellfound jobs scraper, AngelList jobs API, startup jobs scraper, Wellfound API, startup job listings data, tech job scraper with salary