Wellfound Jobs Scraper: Startup Salary, Equity and Funding avatar

Wellfound Jobs Scraper: Startup Salary, Equity and Funding

Pricing

from $1.49 / 1,000 jobs

Go to Apify Store
Wellfound Jobs Scraper: Startup Salary, Equity and Funding

Wellfound Jobs Scraper: Startup Salary, Equity and Funding

Scrape Wellfound (AngelList Talent) startup jobs by role, city or remote: salary and equity ranges, experience, remote policy, posted date, full description, skills, visa, and the startup's size, stage, funding and website. No login.

Pricing

from $1.49 / 1,000 jobs

Rating

0.0

(0)

Developer

The Mine Works

The Mine Works

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

17 hours ago

Last modified

Share

200 Wellfound jobs in 21 seconds

From The Mine Works, makers of Threads Scraper and B2B Leads Finder, with over 140,000 runs across 170+ public actors.

Why choose this actor?

  • Salary, equity and funding in one row, without a login. Every job comes with its salary range and currency, the equity range when one is offered, experience, remote policy and posted date, plus the startup's size, stage, total raised and latest round. In our proof run, 200 San Francisco software engineer and product manager jobs from 90 startups came back in 21 seconds: 174 with a salary range, 34 with an equity range, 129 with funding figures and all 200 with the company website. No Wellfound account, no cookies from you.
  • Search the way Wellfound lists jobs. By role (software engineer, product manager, data scientist, python developer and hundreds more), by city, remote only, or any mix, with filters for job type and keywords. Each role and city pair is its own search, up to 5,000 jobs deep. A role or city Wellfound does not know gives a free status row instead of jobs from somewhere else.
  • You pay only for open jobs you receive. One charge per job row saved to your dataset, plus a flat start fee per run. Jobs filtered out, a job already delivered by another search in the same run (10 in our proof run), and jobs Wellfound has taken down but still lists (6 in our proof run) are never charged.

Run it on Apify

Part of The Mine Works Jobs and hiring family: Foundit Monster India Jobs, Hirist Jobs Scraper, India Jobs MCP, Naukri Jobs Scraper, Shine.com Jobs Scraper, Internshala Scraper.

Try it in one minute

Paste this input and press Start. It returns 20 remote data scientist jobs with salary, company and funding details, in 6 to 15 seconds:

{
"roles": ["data scientist"],
"remote": "remote_only",
"maxJobsPerSearch": 20
}

You can give the search in three ways, alone or together:

  • roles: role names as Wellfound uses them (software engineer, product manager, data scientist, designer, sales, python developer, react developer) or a role link such as https://wellfound.com/role/software-engineer.
  • locations: city names as Wellfound lists them (san francisco, new york, london, bangalore, berlin, toronto). Each role is searched in each city. Common spellings are mapped for you, so NYC, Bengaluru and Washington DC work.
  • startUrls: Wellfound job list links (/role/r/data-scientist, /role/l/product-manager/new-york, /location/london, /remote) or single job links (https://wellfound.com/jobs/4787326-software-engineer).

Apify's free plan includes $5 of credit every month, which covers about 1,900 results at this actor's price.

Copy to your AI assistant

themineworks/wellfound-jobs-scraper on Apify. Scrapes startup jobs from Wellfound (formerly AngelList Talent) without a login, by role, city or remote, and returns one row per job with title, salary range and currency, equity range, experience, job type, locations, remote policy, posted date, full description, and the startup's name, size, stage, badges (Top Investors, YC Funded), website, industries, total raised and latest funding round. Call ApifyClient("TOKEN").actor("themineworks/wellfound-jobs-scraper").call(run_input={"roles": ["software engineer"], "locations": ["san francisco"], "maxJobsPerSearch": 100}), then client.dataset(run["defaultDatasetId"]).list_items().items. Required: at least one of roles (role names or role links), locations (city names), startUrls (Wellfound list or job links), or remote set to remote_only. Optional: remote (any, remote_only, onsite_only; default any), jobTypes (full-time, contract, internship, cofounder), keywords (keep jobs mentioning any of them), maxJobsPerSearch (default 100, 20 to 5000), includeCompanyDetails (default true; reads each job page for skills, visa, funding and company website). Skip rows that have "_type": "status". Full spec: GET https://api.apify.com/v2/acts/themineworks~wellfound-jobs-scraper/builds/default (Bearer TOKEN), which returns inputSchema and readme. Token: https://console.apify.com/account/integrations

Key features

  • Up to 62 fields per job: id, link, title, Wellfound role, job type, salary text plus parsed minimum, maximum, currency and period, equity minimum and maximum, locations, remote flag and policy, where remote hires may live, years of experience, posted date, the full description, and the applicant tracking system the job came from (Ashby, Greenhouse, Workable).
  • Startup fields on every row: name, Wellfound page, logo, one line pitch, employee band, stage, and badges such as Top Investors, YC Funded, Actively Hiring and response time.
  • Job page details, on by default: skills, visa sponsorship, relocation, preferred time zones, collaboration hours, the exact salary currency and period, job addresses with city, region and country, the startup's website, industries, base location, company type, total raised, number of rounds, and the latest round with its date and amount.
  • Role, city and remote searches in one run: give 3 roles and 4 cities and you get 12 searches, up to 100 searches and 1,000 job links per run. Each search reads about 40 jobs a page and stops at your limit or at the end of Wellfound's list.
  • Filters that cost you nothing: remote only or on site only, job types, and keywords matched against the title, role, skills and description. Jobs that do not match are skipped before any charge.
  • Clear outcomes: a search for a role or city Wellfound does not know, a closed job link, or a search where nothing matched your filters returns a free status row that says why, and the run summary (the OUTPUT record) lists every search with pages read, jobs seen, jobs filtered, duplicates and Wellfound's own total.

How to use it

Basic: one role everywhere

{
"roles": ["software engineer"],
"maxJobsPerSearch": 100
}

Several roles in several cities

Each role is searched in each city, so this is 4 searches of up to 200 jobs each:

{
"roles": ["product manager", "data scientist"],
"locations": ["new york", "london"],
"maxJobsPerSearch": 200
}

Remote jobs only

With no city, remote_only reads Wellfound's remote lists for each role. With cities, it keeps the jobs in those cities that allow remote work.

{
"roles": ["backend engineer", "devops engineer"],
"remote": "remote_only",
"maxJobsPerSearch": 300
}

Salary benchmark for a role

Pull a few hundred jobs for one role and city, then compare salary_min, salary_max, equity_min_pct and equity_max_pct by company_stage or company_size. Run it monthly to see pay move. Our proof run had a salary range on 174 of 200 jobs.

{
"roles": ["software engineer"],
"locations": ["san francisco"],
"jobTypes": ["full-time"],
"maxJobsPerSearch": 500
}

Startups that are hiring, for sales and recruiting teams

Every row names the startup, its website, size, stage, badges and funding, so one run of a role list doubles as a list of funded companies that are hiring right now. Filter on yc_funded, top_investors, funding_last_round or company_size after the run. Schedule it weekly and keep only companies you have not seen.

{
"roles": ["account executive", "sales"],
"remote": "remote_only",
"maxJobsPerSearch": 300
}

Niche skills inside a broad role

Keywords keep only jobs whose title, role, skills or description mention one of them. Filtered jobs are not charged, so a narrow keyword on a broad role costs only the jobs that match.

{
"roles": ["software engineer"],
"keywords": ["rust", "golang"],
"maxJobsPerSearch": 100
}

Daily feed of new jobs

Every row has posted_at and a stable job_id. Schedule a daily run (Apify Schedules, for example every morning at 07:00) with the same input, and keep rows whose posted_at is newer than your last run, or whose job_id you have not stored yet.

Give job links in startUrls to read each job page directly, for example to check that saved jobs are still open. A job Wellfound has taken down comes back as a free job_closed status row.

{
"startUrls": [
"https://wellfound.com/jobs/4785402-software-engineer-iii",
"https://wellfound.com/jobs/4718887-senior-product-manager-foundations"
]
}

Faster runs with the list fields only

Turn off includeCompanyDetails to skip the job pages. You still get title, salary and equity text with parsed numbers, locations, remote policy, experience, posted date, the full description and the startup's size, stage and badges, about 40 jobs per request. A check run of 18 role and city lists with the list fields only returned 340 jobs in 10 seconds.

{
"roles": ["designer"],
"includeCompanyDetails": false,
"maxJobsPerSearch": 1000
}

Input parameters

ParameterTypeDefaultWhat it does
rolesarray of stringsnone (Console form shows software engineer)Role names as Wellfound uses them, or role links. Each role is searched in each city.
locationsarray of stringsnoneCity names as Wellfound lists them. Empty means everywhere.
remotestringanyany, remote_only or onsite_only.
jobTypesarray of stringsallKeep only full-time, contract, internship or cofounder jobs.
keywordsarray of stringsnoneKeep only jobs whose title, role, skills or description mention at least one word.
maxJobsPerSearchinteger100Most jobs per role and city pair or per list link, 20 to 5,000.
includeCompanyDetailsbooleantrueAlso read each job page for skills, visa, time zones, exact salary terms and the startup's website, industries, location, type and funding.
startUrlsarray of stringsnoneWellfound list links (/role/..., /role/r/..., /role/l/.../..., /location/..., /remote) or job links (/jobs/<id>).

With nothing filled in at all, the run reads remote software engineer jobs as an example. With only remote set to remote_only, it reads Wellfound's list of all remote jobs. Up to 100 searches and 1,000 job links per run.

What data do you get?

One row per job. Fields with no value on Wellfound are left out of the row rather than sent empty.

The job: job_id, job_url, title, primary_role, job_type, compensation (as Wellfound writes it), salary_min, salary_max, salary_currency, salary_period, equity_min_pct, equity_max_pct, offers_equity, locations, remote, remote_policy, remote_hiring_locations, experience_min_years, experience_max_years, posted_at, description, applicant_tracking_system.

The startup: company_id, company_name, company_slug, company_url, company_logo_url, company_tagline, company_size, company_stage, company_badges, top_investors, yc_funded, actively_hiring.

From the job page (when includeCompanyDetails is on): skills, visa_sponsorship, remote_work_policy, preferred_timezones, collaboration_hours, relocation, job_addresses, applicant_countries, recruiter_recently_active, company_website, company_industry, company_industries, company_location, company_type, funding_total, funding_rounds, funding_last_round, funding_last_round_date, funding_last_round_amount, and details_included set to true.

Where it came from: search_input, search_role, search_location, search_url, search_page, position, scraped_at.

Status rows (free): _type is status, with status (unknown_role, unknown_location, filtered_out, no_results, no_open_jobs, job_closed, not_found, blocked, invalid_input) and a plain note.

How often fields were filled in our proof run of 200 San Francisco jobs: salary range 87%, equity range 17%, funding figures 65%, company stage 68%, years of experience 25%, skills 19%, company website, industries and visa sponsorship 100%.

Stable fields for automations

These fields were present in every job row from a search in our test runs, with company details on or off:

FieldWhat it holds
record_typejob (status rows say status)
job_idWellfound job id, the key for de-duplication across runs
job_urlLink to the job on Wellfound
titleJob title
primary_roleWellfound's role for the job
job_typefull-time, contract, internship or cofounder
remotetrue when the job can be done remotely
remote_policyremote_only, onsite, onsite_or_remote or hybrid
posted_atWhen the job went live, UTC ISO 8601
descriptionFull job description
company_idWellfound startup id
company_nameStartup name
company_urlStartup page on Wellfound
details_includedWhether the job page was read
scraped_atWhen the row was read

These names will not change. New fields may be added; existing ones keep their name and meaning.

Output examples

A job with equity and funding (software engineer in San Francisco)

{
"record_type": "job",
"job_id": "1304789",
"job_url": "https://wellfound.com/jobs/1304789-senior-software-engineer",
"title": "Senior Software Engineer",
"primary_role": "Software Engineer",
"job_type": "full-time",
"compensation": "$170k to $200k • 0.088% to 0.2%",
"salary_min": 170000,
"salary_max": 200000,
"salary_currency": "USD",
"salary_period": "year",
"equity_min_pct": 0.088,
"equity_max_pct": 0.2,
"offers_equity": true,
"locations": ["San Francisco"],
"remote": false,
"remote_policy": "onsite",
"experience_min_years": 5,
"posted_at": "2025-10-16T16:35:56.000Z",
"description": "## Your Role\n\nAscend is seeking a Senior Software Engineer to join our team on-site in San Francisco to help expand our core product...",
"applicant_tracking_system": "Greenhouse",
"company_id": "8285365",
"company_name": "Ascend",
"company_url": "https://wellfound.com/company/useascend",
"company_tagline": "Finance Automation Platform for the $7T+ Insurance Industry",
"company_size": "11-50",
"company_stage": "Growth Stage",
"company_badges": ["Responds within three weeks", "B2B", "Growth Stage", "Top Investors"],
"top_investors": true,
"yc_funded": false,
"skills": ["Ruby", "Ruby on Rails", "Engineering", "Next.Js"],
"visa_sponsorship": "Not Available",
"remote_work_policy": "In office",
"relocation": "Allowed",
"job_addresses": [{ "city": "San Francisco", "region": "California", "country": "United States" }],
"company_website": "https://useascend.com",
"company_industries": ["Payments", "Insurance", "Finance Technology", "Fin Tech", "Insurtech"],
"company_location": "Columbus",
"company_type": "Enterprise Software Company",
"funding_total": "$35.5M",
"funding_rounds": 2,
"funding_last_round": "Series A",
"funding_last_round_date": "Jan 2022",
"funding_last_round_amount": "$30000000",
"search_input": "software engineer in san francisco",
"search_url": "https://wellfound.com/role/l/software-engineer/san-francisco",
"search_page": 2,
"position": 48,
"details_included": true,
"scraped_at": "2026-10-05T21:51:13.481Z"
}

A YC startup job (product manager in San Francisco)

{
"record_type": "job",
"job_id": "4718887",
"job_url": "https://wellfound.com/jobs/4718887-senior-product-manager-foundations",
"title": "Senior Product Manager, Foundations",
"primary_role": "Product Manager",
"job_type": "full-time",
"compensation": "$215k to $250k",
"salary_min": 215000,
"salary_max": 250000,
"salary_currency": "USD",
"salary_period": "year",
"locations": ["San Francisco"],
"remote": false,
"remote_policy": "onsite",
"posted_at": "2026-09-15T23:00:41.000Z",
"applicant_tracking_system": "Ashby",
"company_name": "Vitalize Care (YC W23)",
"company_size": "51-200",
"company_stage": "Early Stage",
"company_badges": ["Actively Hiring", "B2B", "Early Stage", "Top Investors", "YC Funded", "Growing fast"],
"top_investors": true,
"yc_funded": true,
"actively_hiring": true,
"company_website": "https://vitalize.care",
"company_industries": ["Healthcare", "Hospitals"],
"company_location": "San Francisco Bay Area",
"funding_total": "$7.5M",
"funding_last_round": "Seed",
"funding_last_round_date": "Mar 2023",
"details_included": true
}
{
"record_type": "job",
"job_id": "4785402",
"job_url": "https://wellfound.com/jobs/4785402-software-engineer-iii",
"title": "Software Engineer III",
"job_type": "full-time",
"compensation": "$175k to $195k",
"salary_min": 175000,
"salary_max": 195000,
"salary_currency": "USD",
"salary_period": "year",
"remote": true,
"remote_hiring_locations": ["Everywhere"],
"posted_at": "2026-09-30T08:15:09.000Z",
"company_name": "Garner Health",
"company_size": "501-1000",
"company_stage": "Growth Stage",
"company_website": "http://www.getgarner.com",
"company_type": "Healthcare Technology",
"funding_total": "$45M",
"funding_last_round": "Series B",
"funding_last_round_date": "Dec 2021",
"search_input": "https://wellfound.com/jobs/4785402-software-engineer-iii",
"details_included": true
}

Status rows (free)

{
"_type": "status",
"record_type": "status",
"search_input": "software engineer in atlantis",
"search_url": "https://wellfound.com/role/l/software-engineer/atlantis",
"status": "unknown_location",
"note": "Wellfound has no job list for this city (it answered with a list for everywhere), so nothing was kept. Use a city Wellfound lists, for example \"san francisco\", \"new york\", \"london\" or \"bangalore\". Not charged."
}
{
"_type": "status",
"record_type": "status",
"search_input": "https://wellfound.com/jobs/3538641-software-engineer",
"status": "job_closed",
"note": "Wellfound says this job was taken down and no longer takes applications. Not charged."
}

Pricing

Pay per event: you pay for each job delivered to your dataset, plus a flat $0.005 per run, whatever memory you choose. Nothing else is billed: no proxy add-on, no charge per page or per request.

EventFree planBronze (Starter)Silver (Scale)Gold (Business) and above
Job delivered, per 1,000 jobs$2.49$2.09$1.79$1.49
Run start, once per run$0.005$0.005$0.005$0.005

Never charged: jobs your filters skip, a job already delivered earlier in the same run (one job can sit in several role or city lists), jobs Wellfound has taken down but still lists, roles or cities Wellfound does not know, closed job links, pages Wellfound refuses, and the status rows that explain a search with no jobs. Company details cost nothing extra. A run that delivers nothing costs only the start fee.

To cap a run's cost, set Maximum cost per run in the run options; the actor stops delivering, and charging, when that budget is used.

FAQ

What is Wellfound?

Wellfound, formerly AngelList Talent, is a job board for startups. Companies list their open roles with salary and equity ranges, and their profile shows size, stage, funding and investors. It is one of the main places to find jobs at venture backed and YC startups.

Do I need a Wellfound account or cookies?

No. The actor reads the public job lists and job pages that Wellfound shows to anyone who is not logged in. It never logs in and never asks you for a cookie, a password or an API key.

How many jobs can I get?

Up to 5,000 per role and city pair, and up to 100 searches per run. Wellfound's lists hold 20 startups per page with up to three of their open jobs each, about 40 jobs a page, and the run summary reports Wellfound's own total for every search (766 software engineer jobs in San Francisco and 1,891 remote ones when we checked in October 2026). A list may also show a startup's other open roles next to the one you searched; use keywords or filter on primary_role if you need only exact matches.

Which roles and cities can I use?

The ones Wellfound has lists for. Roles include engineering, product, design, data, sales, marketing and operations titles, and many skill roles such as python developer, react developer or devops engineer. Cities include the big hubs in the US, Europe, India and Canada. A name Wellfound does not know gives a free status row that says so (unknown_role or unknown_location), never jobs from a different list.

How fresh is the data?

Every run reads Wellfound live, so you get the jobs listed at that moment. posted_at is the time the job went live on Wellfound (a reposted job shows its repost time). Wellfound sometimes keeps a job in its lists after it was taken down; with company details on, the actor reads each job page and drops those jobs without charging.

Why do some jobs have no salary, equity or funding?

Wellfound shows what the startup entered. In our proof run 87% of jobs had a salary range and 17% an equity range, and 65% of rows had funding figures. A startup that never shared its funding has no funding block, and some show "Undisclosed amount".

Does it return investor names?

No. Wellfound shows investor names on the startup's own page, which this actor does not read. Every row carries the Top Investors and YC Funded badges, the total raised, the number of rounds and the latest round with its date and amount.

Does it return hiring manager names or emails?

No. The actor collects job and company data only, not personal contact details.

Do I need my own proxy?

No. The actor uses Apify's proxy, included in the price. Wellfound shows a security check to some proxy addresses; the actor moves the request to another address and keeps using the ones that work, so you never solve anything and refused requests are never charged.

What happens with jobs that appear in two of my searches?

They are delivered and charged once, under the first search that found them. The run summary counts the repeats per search.

Can I schedule it and get only new jobs?

Yes. Save your input as an Apify task and add a schedule (daily or weekly). Each row has a stable job_id and posted_at, so keep the ids you have stored and add only new ones, or keep rows newer than your last run.

Which export formats are there?

JSON, CSV, Excel, XML, RSS and HTML from the dataset page or the API, plus direct sends to Google Sheets and other tools through Apify integrations. Nested fields such as skills and job_addresses are arrays in JSON and are flattened into columns in CSV and Excel.

Can I use it from Claude, ChatGPT or another AI assistant?

Yes, through Apify's MCP server.

  • Connector URL: https://mcp.apify.com/?tools=themineworks/wellfound-jobs-scraper
  • Claude: Settings > Connectors > Add custom connector, paste the URL, sign in with Apify.
  • ChatGPT: turn on developer mode, add an MCP connector with the URL, sign in with Apify.
  • Cursor or VS Code: add it as an HTTP MCP server with that URL.
  • Claude Code: claude mcp add -t http wellfound-jobs-scraper "https://mcp.apify.com/?tools=themineworks/wellfound-jobs-scraper"

The actor collects only public job and company data that Wellfound shows to anyone without logging in, and it does not log in or bypass any login. You are responsible for how you use the data: check Wellfound's terms for your use case and the data protection laws that apply to you, such as GDPR and CCPA.

Integrations

  • Google Sheets: send each run's dataset to a sheet with Apify's Google Sheets integration, one row per job.
  • Make, Zapier and n8n: start a run and read its dataset with the Apify apps and nodes, for example to post new remote jobs to Slack or add hiring startups to a CRM.
  • Webhooks: have Apify call your URL when a run finishes, then fetch the dataset.
  • API: start runs and read results from any language with the Apify API or the Python and JavaScript clients (see "Copy to your AI assistant" above).
  • MCP clients: Claude, ChatGPT, Cursor, VS Code and Claude Code, through the connector URL in the FAQ.

More from The Mine Works

Jobs and hiring

Social media and video

Leads and business directories

Marketing, SEO and reviews

LinkedIn

Real estate

Science, health and government data

Company and business data

E-commerce and marketplaces

Food and local services

Developer and AI tools

More tools

Support

Found a role, city or job that does not come back right, or a field you need? Open an issue in the Issues tab and include the run link. For new sources or a custom build, email dmineworks@gmail.com.

Wellfound startup jobs by role, city or remote, with salary and equity ranges, experience, skills and the startup's size, stage and funding, read without a login and charged only for open jobs you receive.