Y Combinator Jobs Scraper: Salary, Equity, Founders avatar

Y Combinator Jobs Scraper: Salary, Equity, Founders

Pricing

from $0.50 / 1,000 results

Go to Apify Store
Y Combinator Jobs Scraper: Salary, Equity, Founders

Y Combinator Jobs Scraper: Salary, Equity, Founders

Every open Y Combinator startup job in one run: salary and equity parsed into numbers, visa, remote flag, full description, plus company batch, team size, website and founders' public LinkedIn profiles. Filter by role, location, salary or batch. No proxy, no login, no emails.

Pricing

from $0.50 / 1,000 results

Rating

0.0

(0)

Developer

mochi

mochi

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Every open Y Combinator startup job, with salary, equity, visa and company/founder context, in one run.

Pulls the jobs YC companies list on ycombinator.com (the "Work at a Startup" postings): one row per job, with the salary and equity parsed into numbers, the full job description, and who runs the company. No login, no proxy, no emails.

  • All of them, not capped at 200. A full export on 2026-10-17 returned 6,351 jobs at about 1,400 companies (see "How many jobs there are"). Filter by role, title keyword, location, remote, visa, job type, minimum salary, YC batch, or give a list of companies.
  • Salary and equity as numbers. Min, max, currency and period (year, month or hour) are parsed out of the employer's own text, which is kept next to them.
  • Company context on every row. Batch, status, team size, year founded, HQ, website, LinkedIn, Twitter, GitHub, Crunchbase, tags, and the founders' names, titles and public LinkedIn / Twitter profile links.

Example input

{
"roles": ["eng"],
"remoteOnly": true,
"minSalaryUsd": 200000,
"batches": ["W24", "S24", "W25"],
"maxResults": 100
}

Input

fieldwhat it doesdefault
rolesEngineering, Design, Product, Science, Sales, Marketing, Support, Operations, Recruiting & HR, Finance, Legal. Empty = allall
keywordsKeep jobs whose title contains any of these words (case-insensitive)all
locationContainsCase-insensitive text match on the location, e.g. San Francisco, Londonall
remoteOnlyOnly locations that say "remote"off
visaWill sponsor, US citizenship/visa not required, US citizen/visa onlyany
jobTypeFull-time, Contract, Internship or Co-founderany
minSalaryUsdKeep jobs whose USD yearly salary maximum is at least this. Jobs without a USD yearly salary are skipped when setnot set
onlyWithSalaryOnly jobs that publish a salary rangeoff
batchesShort YC batch codes, e.g. W26, S25, F24all
companySlugsOnly these companies, as in ycombinator.com/companies/<slug>, e.g. whatnot, komboevery hiring YC company
includeDescriptionOpen each job page for the full description (one extra request per job, included in the price)on
maxResultsNumber of jobs to return, 1 to 10,000200

Output

One row per job, 41 fields:

  • Job: jobId, title, jobUrl, location, isRemote, jobType, role, roleLabel, roleSpecialty, minExperience, visa, skills, postedAgo, description
  • Pay: salaryRaw, salaryMin, salaryMax, salaryCurrency, salaryPeriod, equityRaw, equityMinPct, equityMaxPct
  • Company: companyName, companySlug, companyUrl, companyOneLiner, batch, batchName, companyStatus, teamSize, yearFounded, companyLocation, companyCountry, companyWebsite, companyLinkedin, companyTwitter, companyGithub, companyCrunchbase, companyTags
  • Founders: founders, a list of {name, title, linkedinUrl, twitterUrl}
  • scrapedAt
{
"jobId": 110272,
"title": "Android Engineer",
"jobUrl": "https://www.ycombinator.com/companies/whatnot/jobs/TYkux4y-android-engineer",
"location": "Remote (US)",
"isRemote": true,
"jobType": "Full-time",
"role": "eng",
"roleLabel": "Engineering",
"visa": "US citizen/visa only",
"salaryRaw": "$170K - $290K",
"salaryMin": 170000,
"salaryMax": 290000,
"salaryCurrency": "USD",
"salaryPeriod": "year",
"equityRaw": null,
"postedAgo": "about 1 month",
"companyName": "Whatnot",
"batch": "W20",
"teamSize": 1500,
"companyWebsite": "https://www.whatnot.com/careers/discover",
"founders": [
{"name": "Grant LaFontaine", "title": "Founder/CEO", "linkedinUrl": "https://www.linkedin.com/in/grantlafontaine/", "twitterUrl": null}
],
"description": "## **🚀 Join the Future of Commerce with Whatnot!** ..."
}

(Shortened. Every row carries all 41 fields.)

How the numbers are read

  • Salary text is the employer's own. It is parsed literally and never "fixed": a posting that says $240 - $300 is read as 240 to 300 dollars a year, because that is what it says. K and M suffixes are expanded ($170K is 170000). A text with / hourly is hour, / monthly is month, anything else is year. Currency comes from the symbol or code (EUR/€, GBP/£, INR/₹, CAD, otherwise $ is USD). The original text is always in salaryRaw.
  • Equity is read from percentages in the text (0.25% - 1.00% is 0.25 to 1.0). About 29% of postings publish an equity range (1,858 of 6,351 in a full export on 2026-10-17).
  • postedAgo is YC's own relative text ("about 1 month"), not a date.
  • minSalaryUsd compares against the salary maximum, and only for salaries in USD per year.

People and contact data

Founders are listed with their name, title and public LinkedIn / Twitter links only. The actor does not output email addresses, phone numbers, hiring managers or founder bios. Email addresses and phone numbers that appear inside job descriptions are replaced with [email redacted] and [phone redacted]. That includes addresses written out to dodge scrapers (

name at company dot com
, name (at) company.com, name @ company.com, name\[at\]company.com) and addresses percent-encoded inside a link (?email=name%40company.com). Links themselves are left intact. This is best effort: an address in an unusual form can slip through. A company domain mentioned in a description, such as @acme.com, is not an email address and is left as written.

How many jobs there are

A full export on 2026-10-17 returned 6,351 jobs at about 1,400 companies. YC's job sitemap lists more job URLs (7,135 that day) than there are open jobs: 79 of them belong to 41 companies whose page no longer exists, and 705 belong to 299 companies whose page loads but lists no jobs. In a sample of those URLs almost all were dead links; at least one company has live job pages that its company page does not list, and the actor does not return those. The actor returns the jobs the company pages list.

What a run looks like

A full export on 2026-10-17 (no filters, descriptions on) returned 6,351 jobs at 1,407 companies. Share of those jobs with each field filled: title, link, company name, location, visa and description 100%; batch 99.8%; a salary range 79.7% (66.2% in USD per year); an equity range 29.3%; team size 98.3%; year founded 94.3%; company LinkedIn 95.3%, Twitter 67.9%, Crunchbase 40.2%, GitHub 29.2%; at least one founder 99.6%. Reading one company without descriptions (companySlugs: ["whatnot"],

includeDescription: false
) returned all 149 of its open jobs in 9 seconds.

Large exports

A full export of every open job with descriptions makes one request per company plus one per job, so it takes a long time. A very large run may stop early: the actor stops starting new requests shortly before the run timeout, keeps every row already delivered, and saves a RUN_SUMMARY record in the key-value store: { "complete": true | false, "terminationReason": ..., "rowsPushed": ... }. terminationReason is one of finished, max_results, charge_limit, time_budget or blocked. If complete is false, split the export with batches or roles and run the parts separately. complete is also false if a company page could not be read after retries. In a test with a deliberately short 60 second timeout, the actor stopped starting new requests at 45 seconds, delivered the 447 jobs it had, and finished normally with terminationReason: "time_budget".

If ycombinator.com refuses the requests (a 403, a challenge page, or a page that is not the expected one) the actor stops, keeps the rows already delivered and fails with the reason. It does not retry around a block and does not use proxies.

Price

Pay per result, at the rate shown in the pricing panel of this page, plus a very small per-run start fee. You are charged only for the results delivered.

Notes

  • Data comes from public pages on ycombinator.com. A few companies in the sitemap no longer have a page; they are skipped.
  • A job that is listed on a company page but whose job page cannot be opened is still returned, with description: null.

Keywords: y combinator jobs, yc jobs, work at a startup, startup jobs, ycombinator scraper, yc companies, startup salary data, equity, visa sponsorship jobs, founders linkedin, hiring startups.