Y Combinator Scraper - YC Companies, Founders & Open Jobs
Pricing
from $1.00 / 1,000 per y combinator company returneds
Y Combinator Scraper - YC Companies, Founders & Open Jobs
$2 per 1,000 companies; $1 on Business. Every Y Combinator company past the 1,000-result cap with its founders (LinkedIn, X, Hacker News, past companies) and open jobs (salary, equity, hiring manager, description); founder and job rows free. Paste a YC directory URL or filter by batch.
Pricing
from $1.00 / 1,000 per y combinator company returneds
Rating
0.0
(0)
Developer
Scrapers Delight
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
8 hours ago
Last modified
Categories
Share
Y Combinator Scraper: YC Companies, Founders & Open Jobs
Export the Y Combinator startup directory: companies (website, domain, one-liner, batch, status, team size, location, industries, socials, YC partner), founders (name, title, bio, LinkedIn, X, Hacker News username, past companies, photo) and open jobs (full description, salary and equity, location, remote, role, experience, visa, skills, hiring manager, interview process, apply link). Founders and jobs come inside each company row, and you can also get them as their own rows, free. Paste a YC directory search URL, pick filters, or scrape everything.
Every company, not the first 1,000. On 2026-09-30 the directory held 6,265 companies from 51 batches. A full run returned all 6,265 with 11,826 founders, and the 1,485 hiring companies listed 6,117 open jobs. YC's search stops at 1,000 results per query; this Actor splits bigger searches by batch and checks that every company YC states for your search came back before it finishes.
$2 per 1,000 companies on the Free, Starter and Scale plans, $1 per 1,000 on Business and above, founders and open jobs included. Founder and job rows are free. No start fee. The whole directory with every founder and job costs $12.53.
Why use this Actor
- Paste the URL you already built. Set filters on ycombinator.com/companies, copy the address bar, paste it. Batch, industry, region, company size, hiring, top companies, nonprofit, public videos and search text are applied exactly as the directory applies them.
- You pay per company, founders and jobs included. Every company row lists its founders and open jobs. Turn on Founder rows or Open job rows to also get them as their own rows, ready for a CRM or a spreadsheet, at no extra cost. Founder LinkedIn is filled for 97.3% of 11,826 founders, Hacker News username for 100%.
- Open jobs with the details that matter. Salary and equity as YC shows them and as numbers, the full description, the hiring manager on 96.3% of jobs, and that person's LinkedIn when they are a founder (66.3% of jobs).
- One company, one charge. Company rows are deduplicated on YC's company id, and a run that restarts on Apify's side picks up where it stopped, never delivering or charging a company twice.
- Inputs from other YC scrapers run as they are.
scrapeAllCompanies/scrapeAllFounders/scrapeAllJobs, andurl/scrape_founders/scrape_open_jobs/max_companies/scrape_all_companies, are read with the same meaning. See Inputs written for other YC scrapers.
Quick start
Paste a directory URL (hiring B2B companies from Winter 2026 with at most 25 people):
{"url": "https://www.ycombinator.com/companies?batch=Winter%202026&industry=B2B&isHiring=true&team_size=%5B%221%22%2C%2225%22%5D","scrapeAllFounders": true,"scrapeAllJobs": true}
Everything: every company, founder and open job:
{ "scrapeAllCompanies": true, "scrapeAllFounders": true, "scrapeAllJobs": true }
Every company, plus a row per founder (free), no job rows:
{ "scrapeAllCompanies": true, "scrapeAllFounders": true, "scrapeAllJobs": false }
Every open job at YC companies (only hiring companies, no founder rows):
{ "onlyHiring": true, "scrapeAllFounders": false, "scrapeAllJobs": true }
Founders of one batch who have a LinkedIn:
{ "batches": ["S25"], "scrapeAllFounders": true, "requireFounderLinkedin": true }
Enrich your own list of YC companies:
{ "companyUrls": ["https://www.ycombinator.com/companies/airbnb", "doordash", "stripe"] }
New companies, on a schedule (newest first):
{ "launchedAfter": "30 days", "sortBy": "launchDate" }
Leave Maximum companies empty to get every match; set it to cap the run. With no URL, no filter and no "Scrape all companies", a run returns a 100-company sample.
What you get
Every row has a type:
type | One row per | Turned on by | Main fields |
|---|---|---|---|
company | YC company (the billed unit) | always | company, links, batch, status, team, location, industries, founders (listed inside), jobs (listed inside) |
founder | founder of a delivered company | Founder rows (off by default; free) | name, title, bio, LinkedIn, X, Hacker News, region, past companies, photo + the company |
job | open job at a delivered company | Open job rows (off by default; free) | title, description, salary, equity, location, remote, role, experience, visa, skills, hiring manager + the company |
Founder and job rows carry their company's columns (companyId, companyName, companyDomain, companyWebsite, batch, batchCode, companyStatus, companyTeamSize, companyLocation, companyIndustry, companyLinkedinUrl, ...), so a single export still reads company by company. The dataset has four table views: All results, Companies, Founders and Open jobs.
Company rows
| Field group | Fields |
|---|---|
| Company | companyId, name, slug, ycUrl, website, domain, oneLiner, longDescription, logoUrl, formerNames |
| YC batch | batch ("Summer 2024"), batchCode ("S24"), batchSeason, batchYear |
| Status and size | status (Active / Acquired / Public / Inactive), stage (Early / Growth), teamSize, isHiring, isTopCompany, isNonprofit |
| Market | industry, subindustry, industries, tags, regions |
| Location | location, city, cityTag, country, yearFounded, launchedAt |
| Company links | companyLinkedinUrl, companyXUrl, companyFacebookUrl, crunchbaseUrl, companyGithubUrl, workAtAStartupUrl |
| Hiring write-ups | hiringDescription (the company's pitch to candidates), techDescription (its tech stack), both from Work at a Startup |
| YC extras | ycPartner, ycPartnerUrl, demoDayVideoUrl, applicationVideoUrl, applicationAnswers, bonusQuestionAnswers, hasPublicDemoDayVideo, hasPublicApplicationVideo, hasPublicApplicationAnswers, hasBonusQuestionAnswers |
| Founders (inside the row) | founderCount, activeFounderCount, founderNames, founderLinkedinUrls, founders[] (every founder field below) |
| Jobs and news (inside the row) | openJobCount, jobPostings[] (jobId, title, url, applyUrl, location, type, role, roleDetail, salaryRange, equityRange, minExperience, visa, skills, postedAgo, lastActive), news[] (title, url, domain, date), launches[] (Launch YC posts: title, tagline, url, createdAt, votes, body, postedBy) |
Founder rows
founderId, name, firstName, lastName, title, isActive (false = a former founder), bio, linkedinUrl, linkedinHandle, xUrl, xHandle, hackerNewsUsername, hackerNewsUrl, region, currentCompany, currentTitle (where the person is now, from YC's founders directory), allYcCompanies, ycBatches, latestYcCompany, pastCompanies (from Work at a Startup), photoUrl, plus the company columns.
Job rows
| Field group | Fields |
|---|---|
| Job | jobId, title, jobUrl (ycombinator.com), workAtAStartupUrl, applyUrl, description (the full text, Markdown), interviewProcess |
| Where and what | location, locations (split on " / "), remote, jobType (Full-time / Internship / Contract), role (Engineering, Sales, ...), roleDetail (Full stack, Machine learning, ...) |
| Pay | salaryRange (as YC shows it), salaryMin, salaryMax, salaryCurrency, salaryPeriod, equityRange, equityMinPercent, equityMaxPercent |
| Requirements | minExperience, minSchoolYear, visa, skills, applicationQuestions (the company's own questions for applicants) |
| Hiring manager | hiringManagerId, hiringManagerName, hiringManagerFirstName, hiringManagerLastName, hiringManagerPhotoUrl, hiringManagerIsFounder, hiringManagerLinkedinUrl (when the hiring manager is one of the company's founders) |
| Freshness | postedAgo ("3 months"), lastActive |
salaryMin / salaryMax are the numbers in YC's text ("$120K - $250K" = 120000 and 250000). The currency is the ISO code YC appends ("£30K - £50K GBP"), else USD for "$". salaryPeriod is set only when YC states it ("/ hourly", "/ monthly"). remote is true when the location text names remote work ("Remote (US)").
How full each field is
Measured on full runs on 2026-09-30.
Companies (all 6,265): website 99.3% · domain 99.3% · one-liner 97.4% · description 93.3% · team size 96.1% · location 97.6% · city 95.5% · country 96.8% · tags 86.2% · year founded 83.4% · company LinkedIn 74.2% · company X 54.3% · YC partner 49.6% · Crunchbase 43.4% · launches 39.6% · news 32.3% · hiring write-up 40.0% · tech write-up 29.9% · Facebook 19.6% · GitHub 18.8% · batch, status, industry, regions, logo, launch date 100%. Among the 1,485 hiring companies the write-ups are fuller: hiring 87.3%, tech 63.0%.
Founders, the whole directory and two opposite ends of it:
| All 6,265 companies | 2025 + 2026 batches (1,352) | 2015 and earlier (924) | |
|---|---|---|---|
| Founders per company | 1.89 | 1.97 | 1.86 |
| Companies with at least one founder LinkedIn | 97.7% | 99.0% | 92.0% |
| Founder LinkedIn | 11,504 of 11,826 (97.3%) | 99.5% | 88.8% |
| Founder X / Twitter | 5,144 (43.5%) | 57.0% | 30.6% |
| Founder Hacker News username | 11,826 (100%) | 100% | 100% |
| Founder bio | 9,282 (78.5%) | 99.7% | 44.2% |
| Founder region | 98.8% | 99.9% | 96.6% |
| Founder photo | 98.5% | 99.6% | 91.5% |
| Founder past companies | 3,011 (25.5%) | 4.5% | 19.1% |
70 of the 6,265 companies list no founder on their YC profile; they are still delivered (use requireFounderLinkedin to skip them). 2,212 founder entries are marked isActive: false (former founders).
Open jobs (all 6,117 jobs at the 1,485 hiring companies; 1,396 of them had at least one job listed):
| Field | Filled |
|---|---|
| title, location, job type, role, visa, apply link, posted | 100% |
| description (full text) | 6,117 (100%) |
| hiring manager | 5,890 (96.3%) |
| hiring manager is a founder, with their LinkedIn | 4,055 (66.3%) |
| salary | 4,979 (81.4%), every one parsed into numbers |
| minimum experience | 93.5% |
| role detail | 51.8% |
| equity | 1,813 (29.6%) |
| remote | 2,158 jobs (35.3%) name remote work |
| last active | 34.2% |
| skills | 22.8% |
| interview process | 1,121 (18.3%) |
| application questions | 450 (7.4%) |
Salary currencies seen: USD 4,375, INR 272, GBP 139, EUR 143, CAD 50; 107 are hourly and 215 monthly.
Founder emails are not included. YC does not publish founder email addresses on the directory, company or job pages. Use domain plus firstName/lastName with an email finder if you need them.
Input
| Input | Type | Default | Notes |
|---|---|---|---|
url | text | — | A ycombinator.com/companies search URL with your filters (see below). |
scrapeAllCompanies | boolean | false | Every company in the directory. The URL and filters are ignored; maxItems still applies. |
scrapeAllFounders | boolean | false | Also output a founder row per founder. Free. |
scrapeAllJobs | boolean | false | Also output a job row per open job. Free. |
maxItems | integer | empty | Companies to deliver (and pay for); their founder and job rows come with them. Empty = every match (a 100-company sample when nothing is chosen). 0 = no limit. |
batches | list | all | "S24", "W09", "P25" or "X25" (Spring), "F24" (Fall), "Summer 2024", or a year ("2024" = every batch that year). |
industries | list | all | YC industries or sub-industries: "Fintech", "B2B", "Healthcare", "Sales", "B2B -> Sales". |
regions | list | all | "United States of America" (or "USA"), "Europe", "United Kingdom" (or "UK"), "India", "Remote", ... |
tags | list | all | "SaaS", "AI", "Artificial Intelligence", "Developer Tools", "Marketplace", ... (about 330 tags). |
statuses | list | all | Active, Acquired, Public, Inactive. |
onlyHiring | boolean | false | Companies YC marks as hiring (1,485 on 2026-09-30). |
onlyTopCompanies | boolean | false | YC's Top Companies list (91). |
onlyNonprofits | boolean | false | Nonprofits (42). |
minTeamSize / maxTeamSize | integer | 0 | 0 = no limit. |
launchedAfter | text | — | "2026-06-01", or "30 days", "6 months", "1 year". |
searchQuery | text | — | The same as the directory's search box. |
companyUrls | list | — | YC (or Work at a Startup) company URLs or bare slugs. Used instead of the URL and filters. |
requireFounderLinkedin | boolean | false | Skip companies where no founder has a LinkedIn URL. Skipped companies and their rows are not charged. |
sortBy | select | relevance | relevance (the directory's order) or launchDate (newest launched first). |
directoryOnly | boolean | false | Company rows with the directory fields only; the whole directory in about half a minute. Ignored while founder rows, job rows or requireFounderLinkedin are on. |
proxyConfiguration | proxy | none | Runs connect directly. If YC ever blocks a run it moves to this proxy, then Apify Residential, automatically. |
Filters combine with AND across fields and OR inside one field: batches: ["S24", "W25"] with industries: ["Fintech"] = fintech companies from either batch. A URL and the filter fields can be used together; their filters add up.
Every filter value is checked against the live directory before anything runs. YC's search silently returns nothing for a value it does not hold (the directory stores "Summer 2024", so a raw "S24" matches zero companies). This Actor translates batch codes and stops with a clear message, naming the close matches, if a batch, industry, region or tag does not exist. Nothing is charged for a stopped run.
Pasting a YC directory URL
Set filters on ycombinator.com/companies, copy the address bar and paste it into url. If the address bar has not updated after a click, change any filter once more and copy again.
| URL parameter | Example | Applied as |
|---|---|---|
batch (repeatable) | batch=Summer%202026&batch=W25 | companies from any of these batches |
industry (repeatable) | industry=B2B, industry=Sales | industry or sub-industry |
regions (repeatable) | regions=Europe | HQ region |
team_size | team_size=["1","25"] | the size slider: a lower bound only if the left handle is off "1", an upper bound only if the right handle is off "1,000+" (as on the site: ["1","25"] keeps the 133 companies that list no headcount) |
isHiring, top_company, nonprofit | isHiring=true | hiring / Top Companies / nonprofits |
app_video_public, demo_day_video_public, app_answers, question_answers | demo_day_video_public=true | public application video / Demo Day video / application answers / bonus questions |
query | query=agents | the search box |
tags, status | tags=SaaS | tags / status (not on the site's own sidebar, applied if present) |
Any other parameter is listed in the run log as not used. Directory landing pages such as ycombinator.com/companies/industry/fintech are not search URLs; use the filters instead.
Inputs written for other YC scrapers
These fields are read with the meaning they have elsewhere, so a saved input or API call keeps working:
| Field | Read as |
|---|---|
scrapeAllCompanies: true | every company in the directory |
scrapeAllFounders / scrapeAllJobs | founder rows / job rows (free; the company rows list them either way) |
url | the directory search URL |
scrape_founders / scrape_open_jobs | founder rows / job rows (free; the company rows list them either way) |
max_companies | maximum companies; empty = no limit |
scrape_all_companies: true | every company in the directory, with url and max_companies ignored |
directoryUrl, includeFounders: false | this Actor's earlier names for url and directoryOnly |
The run summary lists which of these a run used.
Output examples
Real rows from a run on 2026-09-30 UTC with an input written for another YC scraper, {"url": "https://www.ycombinator.com/companies?batch=Winter%202026&industry=B2B&isHiring=true&team_size=%5B%221%22%2C%2225%22%5D", "scrape_founders": true, "scrape_open_jobs": true, "max_companies": 15}. Unedited except that long text is cut where marked "...", and the company row's launches is left out for length.
Company row
{"type": "company","companyId": 31292,"name": "Aurorin CAD","slug": "aurorin-cad","ycUrl": "https://www.ycombinator.com/companies/aurorin-cad","website": "https://aurorincad.com","domain": "aurorincad.com","oneLiner": "Claude code for Mechanical Engineers","longDescription": "There are 2 problems:\r\n\r\nThe first, CAD software is slow and the second, designing with it is a tedious process with many steps. ...","batch": "Winter 2026","batchCode": "W26","batchSeason": "Winter","batchYear": 2026,"status": "Active","stage": "Early","isHiring": true,"isTopCompany": false,"isNonprofit": false,"teamSize": 1,"industry": "B2B","subindustry": "B2B -> Engineering, Product and Design","industries": ["B2B", "Engineering, Product and Design"],"tags": [],"regions": ["United States of America", "America / Canada"],"location": "San Francisco, CA, USA","city": "San Francisco","cityTag": "san-francisco-bay-area","country": "US","yearFounded": 2026,"launchedAt": "2026-01-22T19:20:12.000Z","formerNames": ["Rapid CAD", "Aurorin"],"logoUrl": "https://bookface-images.s3.amazonaws.com/small_logos/f33a496f7311dedfd5027e589663789820e95b21.png","companyLinkedinUrl": "https://www.linkedin.com/company/aurorin-cad/","companyXUrl": "https://x.com/aurorincad?s=21","companyFacebookUrl": null,"crunchbaseUrl": null,"companyGithubUrl": null,"ycPartner": "Jared Friedman","ycPartnerUrl": "https://www.ycombinator.com/people/jared-friedman","demoDayVideoUrl": null,"applicationVideoUrl": null,"applicationAnswers": [],"bonusQuestionAnswers": [],"hasPublicDemoDayVideo": false,"hasPublicApplicationVideo": false,"hasPublicApplicationAnswers": null,"hasBonusQuestionAnswers": false,"workAtAStartupUrl": "https://www.workatastartup.com/companies/aurorin-cad","hiringDescription": "Aurorin exists so that a handful of great engineers can build what once took thousands. ...","techDescription": "Aurorin has built a brand new CAD software stack from the ground up starting with the CAD kernel. All major CAD tools use kernels made in the 1980s. Our entire software stack is written in swift. ...","foundersIncluded": true,"founderCount": 1,"activeFounderCount": 1,"founderNames": ["Michael Baron"],"founderLinkedinUrls": ["https://www.linkedin.com/in/michael-andrew-baron/"],"founders": [{"founderId": 2811605,"name": "Michael Baron","firstName": "Michael","lastName": "Baron","title": "Founder/CEO","isActive": true,"bio": "Founder of Aurorin, 3x SpaceX intern, prev Apple Intern. ...","linkedinUrl": "https://www.linkedin.com/in/michael-andrew-baron/","linkedinHandle": "michael-andrew-baron","xUrl": "https://x.com/nominalaviator?s=21","xHandle": "nominalaviator","hackerNewsUsername": "michaelbaron","hackerNewsUrl": "https://news.ycombinator.com/user?id=michaelbaron","region": "United States of America","currentCompany": "Aurorin CAD","currentTitle": "CEO","allYcCompanies": "Aurorin CAD","ycBatches": ["W26"],"latestYcCompany": "Aurorin CAD","pastCompanies": null,"photoUrl": "https://bookface-images.s3.amazonaws.com/avatars/fff2b6020076e2a93f1d4cd5e694baf2db3d0f7d.jpg"}],"openJobCount": 1,"jobPostings": [{"jobId": 92565,"title": "Founding Engineer","url": "https://www.ycombinator.com/companies/aurorin-cad/jobs/R3tKam9-founding-engineer","location": "San Francisco, CA, US","type": "Full-time","role": "Engineering","salaryRange": "$120K - $160K","equityRange": "3.00% - 4.00%","minExperience": "Any (new grads ok)","visa": "Will sponsor","skills": ["C++", "Swift", "GPU Programming", "CAD Design"],"roleDetail": "Full stack","applyUrl": "https://account.ycombinator.com/authenticate?continue=https%3A%2F%2Fwww.workatastartup.com%2Fapplication%3Fsignup_job_id%3D92565&defaults%5BsignUpActive%5D=true&defaults%5Bwaas_company%5D=31292","postedAgo": "6 months","lastActive": "4 months"}],"news": [],"scrapedAt": "2026-09-30T03:42:03.951Z"}
Founder row
{"type": "founder","founderId": 2811605,"name": "Michael Baron","firstName": "Michael","lastName": "Baron","title": "Founder/CEO","isActive": true,"bio": "Founder of Aurorin, 3x SpaceX intern, prev Apple Intern. ...","linkedinUrl": "https://www.linkedin.com/in/michael-andrew-baron/","linkedinHandle": "michael-andrew-baron","xUrl": "https://x.com/nominalaviator?s=21","xHandle": "nominalaviator","hackerNewsUsername": "michaelbaron","hackerNewsUrl": "https://news.ycombinator.com/user?id=michaelbaron","region": "United States of America","currentCompany": "Aurorin CAD","currentTitle": "CEO","allYcCompanies": "Aurorin CAD","ycBatches": ["W26"],"latestYcCompany": "Aurorin CAD","pastCompanies": null,"photoUrl": "https://bookface-images.s3.amazonaws.com/avatars/fff2b6020076e2a93f1d4cd5e694baf2db3d0f7d.jpg","companyId": 31292,"companyName": "Aurorin CAD","companySlug": "aurorin-cad","companyYcUrl": "https://www.ycombinator.com/companies/aurorin-cad","companyWebsite": "https://aurorincad.com","companyDomain": "aurorincad.com","companyOneLiner": "Claude code for Mechanical Engineers","batch": "Winter 2026","batchCode": "W26","companyStatus": "Active","companyTeamSize": 1,"companyLocation": "San Francisco, CA, USA","companyIndustry": "B2B","companyIsHiring": true,"companyLinkedinUrl": "https://www.linkedin.com/company/aurorin-cad/","companyLogoUrl": "https://bookface-images.s3.amazonaws.com/small_logos/f33a496f7311dedfd5027e589663789820e95b21.png","scrapedAt": "2026-09-30T03:42:03.951Z"}
Job row
{"type": "job","jobId": 92565,"title": "Founding Engineer","jobUrl": "https://www.ycombinator.com/companies/aurorin-cad/jobs/R3tKam9-founding-engineer","workAtAStartupUrl": "https://www.workatastartup.com/jobs/92565","applyUrl": "https://account.ycombinator.com/authenticate?continue=https%3A%2F%2Fwww.workatastartup.com%2Fapplication%3Fsignup_job_id%3D92565&defaults%5BsignUpActive%5D=true&defaults%5Bwaas_company%5D=31292","description": "# Why us?\n\nAurorin exists so that a handful of great engineers can build what once took thousands. ...\n\n### Requirements\n\n* Strong background in systems programming or building of native applications\n* High responsibility and proactivity\n\n### Preferred skills and experience:\n\n* Strong Swift experience\n* Strong C++ experience\n* GPU programming experience\n\n...","interviewProcess": null,"location": "San Francisco, CA, US","locations": ["San Francisco, CA, US"],"remote": false,"jobType": "Full-time","role": "Engineering","roleDetail": "Full stack","salaryRange": "$120K - $160K","salaryMin": 120000,"salaryMax": 160000,"salaryCurrency": "USD","salaryPeriod": null,"equityRange": "3.00% - 4.00%","equityMinPercent": 3,"equityMaxPercent": 4,"minExperience": "Any (new grads ok)","minSchoolYear": null,"visa": "Will sponsor","skills": ["C++", "Swift", "GPU Programming", "CAD Design"],"hiringManagerId": 2811605,"hiringManagerName": "Michael Baron","hiringManagerFirstName": "Michael","hiringManagerLastName": "Baron","hiringManagerPhotoUrl": "https://bookface-images.s3.amazonaws.com/avatars/fff2b6020076e2a93f1d4cd5e694baf2db3d0f7d.jpg","hiringManagerIsFounder": true,"hiringManagerLinkedinUrl": "https://www.linkedin.com/in/michael-andrew-baron/","applicationQuestions": [{"question": "Please provide a 2 sentence summary highlighting your top two exceptional academic and/or professional accomplishments. This should be a reflection of your most highly technical accomplishments.","required": true,"type": "long_text"}],"postedAgo": "6 months","lastActive": "4 months","companyId": 31292,"companyName": "Aurorin CAD","companySlug": "aurorin-cad","companyYcUrl": "https://www.ycombinator.com/companies/aurorin-cad","companyWebsite": "https://aurorincad.com","companyDomain": "aurorincad.com","companyOneLiner": "Claude code for Mechanical Engineers","batch": "Winter 2026","batchCode": "W26","companyStatus": "Active","companyTeamSize": 1,"companyLocation": "San Francisco, CA, USA","companyIndustry": "B2B","companyIsHiring": true,"companyLinkedinUrl": "https://www.linkedin.com/company/aurorin-cad/","companyLogoUrl": "https://bookface-images.s3.amazonaws.com/small_logos/f33a496f7311dedfd5027e589663789820e95b21.png","scrapedAt": "2026-09-30T03:42:03.951Z"}
photoUrl, hiringManagerPhotoUrl and logoUrl are permanent image links. (The profile page's own photo links are signed and expire an hour after they are served, so they are not used.)
Pricing
Pay per event: $2 per 1,000 companies ($0.002 each) on the Free, Starter and Scale plans, $1 per 1,000 ($0.001 each) on Business and above. Each company row is one charge, with its founders and open jobs listed inside it. Founder rows and job rows are free. No start fee.
Costs for real runs, with the row counts measured on 2026-09-30:
| Run | Companies (charged) | Founder rows (free) | Job rows (free) | Cost | On Business |
|---|---|---|---|---|---|
| The Console's example (10 companies from Summer 2026) | 10 | — | — | $0.02 | $0.01 |
| One batch with founder rows (Summer 2026) | 231 | 459 | — | $0.46 | $0.23 |
| Every hiring company in Summer 2025, with job rows | 67 | — | 173 | $0.13 | $0.07 |
| Every hiring company, with founder and job rows | 1,485 | 2,796 | 6,117 | $2.97 | $1.49 |
| The whole directory | 6,265 | — | — | $12.53 | $6.27 |
| Everything: the whole directory with founder and job rows | 6,265 | 11,826 | about 6,100 | $12.53 | $6.27 |
You pay only for companies delivered to your dataset. A company skipped by requireFounderLinkedin, a company URL YC does not have and a profile that could not be reached are listed in the run summary and not charged. Set Maximum companies or a maximum charge on the run to cap the cost; the Actor stops at either and does not fetch what it could not bill.
Use cases
- Investors and VCs: track batches, industries and team growth; watch new launches on a schedule; build founder lists by batch.
- Sales and lead generation: founders with LinkedIn, X and the company domain for outreach; hiring companies as a buying signal.
- Recruiters and job seekers: every open role with salary, equity, visa policy and the hiring manager's name (and LinkedIn when a founder hires).
- Researchers and analysts: the whole directory since 2005 with status, stage, team size, regions and industries for ecosystem studies.
Use it from code
Python:
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("scrapersdelight/yc-company-founder-contact-scraper").call(run_input={"url": "https://www.ycombinator.com/companies?batch=Summer%202026","scrapeAllFounders": True,"scrapeAllJobs": True,})for row in client.dataset(run["defaultDatasetId"]).iterate_items():if row["type"] == "founder":print(row["name"], row["companyName"], row["linkedinUrl"])
JavaScript:
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });const run = await client.actor('scrapersdelight/yc-company-founder-contact-scraper').call({onlyHiring: true,scrapeAllFounders: false,scrapeAllJobs: true,});const { items } = await client.dataset(run.defaultDatasetId).listItems();const jobs = items.filter((row) => row.type === 'job' && row.salaryMin >= 150000);console.log(`${jobs.length} jobs paying $150K or more`);
Download the dataset as JSON, CSV, Excel or HTML from the Storage tab, or connect it to Make, Zapier, n8n, Google Sheets, Slack or webhooks through Apify integrations. Schedules run it daily or weekly.
Run summary
Each run saves a RUN_SUMMARY record in its key-value store: how many companies YC states for your URL or filters, how many unique companies came back (the completeness check), how the search was split, companies / founders / jobs delivered, founder and job field counts, which input names from other YC scrapers were read, the companies not found / without a public profile / unreachable (none charged), and companies delivered == companies charged (founder and job rows are counted, never charged).
Data limits
- Founder emails and phone numbers are not published by YC and are not in the output.
- Past companies come from Work at a Startup, which fills them for 25.5% of founders (mostly founders of older companies).
- Links that lead to nobody ship as null. Founder "LinkedIn" values such as linkedin.com/feed/, a profile-settings page, a company page or a name typed where a link belongs, and YC's
missing.pngplaceholder photo, arenull. A LinkedIn/pub/,/profile/viewor mobile/mwlite/in/link is a real profile and is kept as published. - Team size: YC shows 0 for 133 companies that never set a headcount; those rows carry
teamSize: null, not 0. - Text is shipped exactly as YC stores it. 7 descriptions of early companies are stored double-encoded on YC's side (for example "’" for an apostrophe); they are delivered unchanged.
hiringDescription,techDescriptionandinterviewProcessarrive as HTML from Work at a Startup and are delivered as plain text (paragraphs, "- " list items, links kept as "text (address)"). - Salary numbers are the numbers YC shows; a few postings carry values like "$1 - $120K" or "$120 - $180", and they are delivered as written.
postedAgoandlastActiveare YC's relative wording ("3 months"), not dates.- A founder with
isActive: falseis listed by YC as a former founder of that company. - Order: with a cap, companies come in the directory's order (or newest launched first). When a match is over 1,000 companies it is read batch by batch, newest batch first.
FAQ
Can I get more than 1,000 companies? Yes. A search that matches more than 1,000 is split by batch (and by id range inside any batch that ever grows past 1,000), and the run fails loudly instead of finishing short if fewer companies come back than YC states.
Do I pay for founder or job rows? No. You pay per company; every company row lists its founders and open jobs, and the founder and job rows are the same data as their own rows, free.
Why is my URL filter not applied? The run log names every URL parameter it did not use. Make sure the URL starts with https://www.ycombinator.com/companies? and contains your filters; if the address bar did not update after a click, change a filter again before copying.
How do I get only new companies? Schedule the Actor with launchedAfter: "7 days" (or the newest batch code) and sortBy: "launchDate".
Why does my batch filter say unknown? The value is not a batch YC has. The error lists the directory's batches; codes are W (Winter), S (Summer), P or X (Spring), F (Fall) plus the two-digit year.
How long does a run take? Measured on Apify at the default 256 MB: 10 companies with founders in 3-4 seconds; 67 hiring companies with 173 job rows in 10 seconds; 200 hiring companies with 389 founder rows and 738 job rows in 2 minutes 24 seconds (including a forced restart). A company costs two small requests and a job two more.
Can I call it from code or schedule it? Yes, through the Apify API (Python, JavaScript, cURL), Schedules, Make, Zapier, n8n or an MCP client.