# Changelog of Wellfound Jobs Scraper - Startup Jobs, Salary & Equity (`akhil_rajesh/wellfound-jobs-scraper`) Actor

- **URL**: https://apify.com/akhil\_rajesh/wellfound-jobs-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/akhil\_rajesh/wellfound-jobs-scraper.md

## Changelog

All notable changes to this Actor are documented here.

### 2026-09-23

- **Seniority words work.** Wellfound has no `senior software engineer` role, and
  such a search used to stop with a message. Now the run searches the base role
  (`software engineer`) and keeps the titles at that level, and the status message
  says so. It covers `senior`/`sr`, `junior`/`jr`, `staff`, `principal`, `lead`,
  `entry level`, `mid level`, and `intern` after the role. A role Wellfound does
  recognise is searched exactly as typed.

### 0.1 — First release (2026-09-22)

- Scrapes **startup jobs from Wellfound** (formerly AngelList Talent) by role,
  city or both, reading the data Wellfound already ships inside its own pages.
  No browser, no login, no API key — a 100-job run takes about 10 seconds.
- **Salary and equity, parsed into numbers.** `salaryMin`/`salaryMax` and
  `equityMin`/`equityMax` come out of Wellfound's compensation string
  ("$100k – $180k • 0.05% – 0.25%"), which is kept in `salaryText` so nothing is
  lost when a line cannot be parsed. Roles that offer equity and no salary keep
  their equity.
- **Pay in the currency the listing uses.** Canadian, Australian and Singapore
  dollars are read from the code Wellfound writes after the range
  (`$200k – $200k CAD`); pounds, euros and rupees from their symbols, with
  Indian pay in Lakhs and Crores converted to rupees.
- **Exact Y Combinator filter.** `isYCombinator` and `yCombinatorOnly` read
  Wellfound's own company badge rather than matching on a name, so they cannot
  pick up a company that merely looks like a YC one.
- **Startup detail on every row**: company size, tagline, logo and the full
  badge list (`ACTIVELY_HIRING`, `TOP_INVESTORS`, `RECENTLY_FUNDED` and more),
  matched to each job through Wellfound's own references.
- **Full job descriptions**, plus minimum years of experience, remote policy and
  the countries a remote job hires from.
- Filters for remote-only and Y Combinator-only, a **Max results** ceiling that
  doubles as a cost cap, and an optional page limit. With a filter on, the run
  reads as many pages as it takes to find Max results matching jobs, or until the
  role runs out; a page limit you set that stops it early is named in the status
  message.
- **A search Wellfound doesn't recognise stops with a message** naming what to
  change, instead of returning the unrelated jobs Wellfound falls back to.
  `Toronto, ON`, accented names such as `Montréal`, and `remote` are converted
  into forms Wellfound recognises.
- **A search with no jobs succeeds**, with zero results and a note, rather than
  counting as a failed run.
- **Resumable.** A migrated, aborted or restarted run carries on where it
  stopped, with no duplicates and no lost jobs. Tested on the platform by
  aborting and by rebooting live 1,200-job runs.
- **Your spending limit is respected.** The run stops fetching when the limit is
  reached and says so in its status message; a single row the dataset rejects is
  skipped rather than failing the run.
- Three dataset views: Jobs, Pay & equity, and Startups.

#### Good to know

- Measured over a 1,200-job run: **68%** of listings carry a salary range, 15%
  carry equity, 100% carry a full description. Small runs look better filled
  because Wellfound surfaces its richest listings first.
- Wellfound shuffles results on every request, so a run that stops before the
  end of a role is a sample: two 1,200-job runs started together shared about
  89% of their jobs. Two full sweeps of a ~500-job role differed by under 3%. For
  monitoring, sweep the whole role and filter on `postedAt`.
- Wellfound gives a **minimum** years-of-experience only. `yearsExperienceMax`
  was null on all 80 listings checked across two roles, so it is not shipped
  rather than being included as a permanently empty column.
- A run stops early once two consecutive pages return nothing new, so asking for
  more jobs than a role holds costs seconds rather than spinning.
