Wellfound Jobs Scraper - Salary, Equity & Remote
Pricing
from $8.00 / 1,000 job founds
Wellfound Jobs Scraper - Salary, Equity & Remote
Scrape Wellfound startup jobs with salary, equity, remote status, skills, company data, and apply URLs. MCP optimized, no login required. Charged $0.008 per returned job.
Pricing
from $8.00 / 1,000 job founds
Rating
0.0
(0)
Developer
Khadin Akbar
Maintained by CommunityActor stats
0
Bookmarked
13
Total users
6
Monthly active users
7 days ago
Last modified
Categories
Share
Wellfound Jobs Scraper is an Apify Actor for public Wellfound startup jobs. It accepts a role, location, remote-only search, or pasted Wellfound search and job URLs, and returns one dataset record per job. Each record can include job title, company name, location, remote status, salary range, equity range, skills, description, apply URL, company URL, source URL, search URL, discovery method, and scrape timestamp. The outcome is a flat, structured job feed that is ready for sourcing, lead generation, market research, enrichment, and agent workflows.
This Actor is usable through Apify MCP and is optimized for public Wellfound job discovery. It works without login and returns one record per job, which makes each result a clear unit for downstream filtering, ranking, and enrichment.
Best fit and connected workflows
This Actor fits workflows that begin with a Wellfound hiring question and end with structured job records:
- Recruiting and sourcing teams can collect startup roles by title and location.
- Job-board operators can pull public Wellfound listings into a normalized feed.
- Compensation analysts can work from salary and equity fields when Wellfound exposes them.
- GTM and lead-generation workflows can identify startups currently hiring specific roles.
- AI agents can use it through Apify MCP to retrieve one record per job and pass the results into scoring, matching, or enrichment steps.
If your research brief points to another job source, the verified related Actors below offer adjacent routing:
- Use APEC Jobs Scraper when the target source is APEC and the workflow needs that board's public listings.
- Use Ashby Jobs Scraper when the source of truth is an Ashby-hosted careers page and the workflow starts from that board.
- Use Bayt Jobs Data Scraper for MENA Listings when the research brief focuses on Bayt and MENA-oriented job listings.
Practical scenario
Maya, a recruiter, starts with "product manager" and "new york" because she wants startup roles in a specific hub. She runs the Actor with remoteOnly: false and a moderate maxItems value. The dataset rows return title, companyName, location, remote, salaryMin, salaryMax, equityMinPercent, equityMaxPercent, skills, and applyUrl. Maya filters for roles with salary and equity information, then opens the apply URL for outreach prep and keeps the company URL for account research.
Input
Input fields
| Field | Type | Purpose |
|---|---|---|
role | string | Plain job title for Wellfound startup jobs, such as "software engineer" or "product manager". Defaults to software engineer. |
location | string | Wellfound-style location text such as a city, country, or startup hub. |
remoteOnly | boolean | When enabled, the Actor uses remote role pages for the selected role. Defaults to true. |
startUrls | array | Wellfound role, location, remote, or job-detail URLs to scrape directly. |
maxItems | integer | Caps how many jobs are returned and billed in one run. Default: 20; the health-check prefill is 1. |
enrichDetails | boolean | Fetches richer fields from individual job detail pages when available. Defaults to false for a bounded lightweight run. |
proxyConfiguration | object | Controls how the Actor reaches Wellfound. Defaults to Apify Residential proxies in the United States. |
maxConcurrency | integer | Sets how many Wellfound pages are opened in parallel. Default: 2. |
debugDumpHtml | boolean | Saves raw HTML snapshots to the key-value store for troubleshooting. |
Focused input example
{"role": "software engineer","location": "san francisco","remoteOnly": false,"maxItems": 25,"enrichDetails": true}
Output
The default dataset contains one record per returned job. The main table view includes the fields most often used in downstream workflows.
Output fields
| Field | Type | Meaning |
|---|---|---|
jobId | string or null | Wellfound job identifier parsed from the URL or embedded page data. |
title | string | Job title shown on Wellfound. |
companyName | string or null | Startup or employer name. |
location | string or null | Human-readable location text from Wellfound. |
remote | boolean or null | Remote status inferred from the listing text. |
salaryMin | number or null | Parsed lower salary bound. |
salaryMax | number or null | Parsed upper salary bound. |
salaryCurrency | string or null | Three-letter currency code when known. |
equityMinPercent | number or null | Parsed lower equity percentage. |
equityMaxPercent | number or null | Parsed upper equity percentage. |
compensationText | string or null | Original compensation snippet used for parsing. |
skills | array | Skills, technologies, tags, or keywords found in the listing. |
description | string or null | Job description or summary text when available. |
applyUrl | string or null | Direct application or job URL. |
jobUrl | string | Canonical Wellfound job URL for the record. |
companyUrl | string or null | Wellfound company profile URL when available. |
postedAt | string or null | Posting or update timestamp when Wellfound exposes it. |
sourceUrl | string | URL used to discover or retrieve the record; may be a Wellfound page or indexed fallback. |
searchUrl | string or null | Original search URL when the record came from a search page. |
discoveryMethod | string or null | How the record was found, such as direct page extraction or indexed fallback. |
searchSnippet | string or null | Search result snippet when indexed fallback produced the row. |
scrapedAt | string | ISO 8601 timestamp for when the Actor produced the record. |
Illustrative output record
{"jobId": "3324973","title": "Senior Software Engineer","companyName": "SerpApi","location": "San Francisco, Remote","remote": true,"salaryMin": 150000,"salaryMax": 230000,"salaryCurrency": "USD","equityMinPercent": 0.2,"equityMaxPercent": 0.8,"compensationText": "$150k - $230k - 0.2% - 0.8%","skills": ["JavaScript", "React", "Node.js"],"description": "Build APIs and infrastructure for a fast-growing startup.","applyUrl": "https://wellfound.com/jobs/3324973-software-engineer","jobUrl": "https://wellfound.com/jobs/3324973-software-engineer","companyUrl": "https://wellfound.com/company/serp-api","postedAt": "2026-06-12T10:00:00Z","sourceUrl": "https://wellfound.com/role/r/software-engineer","searchUrl": "https://wellfound.com/role/l/software-engineer/san-francisco","discoveryMethod": "direct_extraction","scrapedAt": "2026-06-12T12:30:00.000Z"}
How it works
This Actor uses Playwright-based browser automation on public Wellfound job pages. Its live contract shows:
- MCP optimization for agent use.
- No-login public scraping.
- A default dataset for returned records and a run summary in the key-value store.
- Residential Apify proxies in the United States as the default proxy setup.
- Optional job-detail page enrichment for richer fields.
- A hidden debug HTML dump switch that saves snapshots to the key-value store.
The live manifest also declares SERPAPI_KEY and TWO_CAPTCHA_API_KEY environment variables.
Pricing
This Actor uses Pay per event pricing, plus standard Apify platform usage. The primary billed event is Job found, which is charged for each returned job record. The live Pricing tab in the Apify Console is the source of truth for current event pricing and platform usage details.
For example, if a run returns one hundred jobs, the billed event count is one hundred job-found events, plus the actor start event and any applicable Apify platform usage.
Use with AI agents (MCP)
This Actor is available through Apify MCP as a tool that returns Wellfound job records with structured fields for sourcing, ranking, and enrichment workflows.
Precise tool description: Scrape public Wellfound startup jobs by role, location, or pasted Wellfound URLs. Return one record per job with title, company, location, salary, equity, skills, remote status, apply URL, and provenance fields. Use for Wellfound job research, workflow routing, and agent pipelines.
Exact Actor identity: khadinakbar/wellfound-jobs-scraper
Find Wellfound startup jobs for software engineer roles in San Francisco, return up to 20 records, include detail-page fields when available, and give me the dataset output plus the run summary.
Output interpretation
title,companyName, andlocationdescribe the role and employer.salaryMin,salaryMax,equityMinPercent, andequityMaxPercentare populated when Wellfound exposes compensation data.applyUrlandjobUrlsupport handoff into application review or enrichment steps.sourceUrl,searchUrl,discoveryMethod, andscrapedAtprovide provenance and timing.
Provenance and scope
- Records come from public Wellfound role, location, remote, or job-detail URLs.
- When detail-page extraction is available, the Actor can add richer listing fields.
- When a record comes from indexed fallback,
discoveryMethodandsearchSnippetcan capture that path.
Pagination and cost guidance
maxItemslimits the number of returned jobs and the billed job-found events.- The Actor returns one dataset item per job, which makes downstream paging simple for agents.
- The run summary is available in the default key-value store under
RUN_SUMMARY.
Apify API example
import { ApifyClient } from 'apify-client';const client = new ApifyClient({token: process.env.APIFY_TOKEN,});const run = await client.actor('khadinakbar/wellfound-jobs-scraper').call({role: 'software engineer',location: 'san francisco',remoteOnly: false,maxItems: 10,enrichDetails: true,});const dataset = await client.dataset(run.defaultDatasetId).listItems();console.log('Run ID:', run.id);console.log('Dataset items:', dataset.items.length);console.log(dataset.items);
Best results and outcome guidance
Start with a specific role and a narrow location, or use remoteOnly: true for a remote-focused query. Use startUrls when you already have a Wellfound search page or job URL and want the Actor to follow that exact source. Keep maxConcurrency at the default value of 2 for steady session behavior, and lower it when a run needs more conservative page handling. Use enrichDetails: true when downstream workflows benefit from description, compensation, or company fields; use false for the bounded lightweight default. If you are sampling a workflow, maxItems can cap a small run while still producing a valid dataset and summary. The crawler stops new page work before the Apify deadline so partial rows can be finalized.
Continue the workflow
- Then use Workable Jobs Scraper & Career Board Export to extend Wellfound Jobs Scraper - Salary, Equity & Remote with a neighboring job-market research source when the brief calls for Workable data.
- Then use Welcome to the Jungle Jobs Scraper to extend Wellfound Jobs Scraper - Salary, Equity & Remote with a neighboring job-market research source when the brief calls for Welcome data.
Design note
I found that the live dataset contract uses title, jobUrl, sourceUrl, and scrapedAt as required fields, which makes every output record directly traceable to its source and run time.
FAQ
How should I route between role search and direct URLs?
Use role and location when you want a fresh search on Wellfound. Use startUrls when you already have a Wellfound role, location, remote, or job-detail URL and want the Actor to follow that exact page.
When should I use remoteOnly?
Use remoteOnly: true for a remote-focused role page. Use false when you want listings in a specific city, country, or startup hub.
How should I route this Actor versus the related job actors?
Use this Actor for public Wellfound startup jobs. Use the related actors when the source is APEC, Ashby, or Bayt, since each one is tuned to that board's public listings and workflow context.
Where can I find the full run summary?
The output schema points to a RUN_SUMMARY object in the default key-value store. That summary includes run-level totals, warnings, cost counters, and input context.
Responsible use
Use this Actor for public Wellfound job listings and respect Wellfound terms, applicable laws, and privacy rules in your workflow. Keep concurrency and request volume aligned with your use case, especially for large exports. When building automated systems, review returned fields before using them in outreach, scoring, or publication.