Y Combinator Scraper: YC Companies & Founders avatar

Y Combinator Scraper: YC Companies & Founders

Pricing

from $2.00 / 1,000 companies

Go to Apify Store
Y Combinator Scraper: YC Companies & Founders

Y Combinator Scraper: YC Companies & Founders

YC startup directory as a table: company name, website, one-liner, batch, status, industry, tags, team size and location, plus founders with LinkedIn and X links, open jobs with salary ranges and news. Filter by batch, industry, region or hiring. $2 per 1,000 companies, no start fee.

Pricing

from $2.00 / 1,000 companies

Rating

0.0

(0)

Developer

Trevor Ortega

Trevor Ortega

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

0

Monthly active users

4 days ago

Last modified

Categories

Features

Limited permissions

Share

Export the Y Combinator startup directory (ycombinator.com/companies) as a clean table: one row per YC company with its website, one-liner, batch, status, industry, tags, team size and location. Switch on Include founders and company details and every company also gets its founders (name, title, bio, LinkedIn and X links), open jobs with salary and equity ranges, recent news and social profiles.

Two optional add-ons turn the list into leads and job data: Include website contacts visits each company's own website and adds the emails, phone numbers and social profiles published there, and Output open jobs as rows gives one row per open YC job, with the full job description if you want it.

Filter by batch (W24, S25, X25, ...), industry, region, tag, status, hiring or a search phrase, or leave the filters empty for the whole directory (about 6,200 companies). The Actor reads the same public search index the YC website uses, so a whole batch takes seconds. $2 per 1,000 companies, plus $3 per 1,000 when details are on. No start fee, no login, no API key.

What you get

  • Company: name, website, one-liner, full description, logo, former names, YC profile URL
  • YC data: batch (W24 / Winter 2024), status (Active, Acquired, Public, Inactive), stage, Top Company and hiring flags
  • Market: industry, sub-industry, tags, team size, location and regions
  • Founders (details on): name, title, bio, LinkedIn and X profile links
  • Jobs (details on): open roles with location, salary range, equity range, experience level and visa
  • More (details on): latest news, Launch YC posts, company LinkedIn / X / Crunchbase / GitHub, year founded
  • Website contacts (option): emails, phone numbers and social profiles (LinkedIn, X, Instagram, YouTube, GitHub, ...) from the company's own website, plus its contact page
  • Job rows (option): one row per open job with salary, equity, experience, visa, skills and the company's name, batch and website; full description and hiring manager on request

Try it: the input is prefilled with batch W24 and 50 companies. Click Start and the rows are there in a few seconds, for about $0.10. To get the founders, turn on Include founders and company details (includeCompanyDetails: true).

Sample output (one company with details on, trimmed; the full field list and example follow below):

{
"name": "Airbnb",
"website": "http://airbnb.com",
"oneLiner": "Book accommodations around the world.",
"batch": "W09",
"status": "Public",
"industry": "Consumer",
"tags": ["Marketplace", "Travel"],
"teamSize": 6132,
"location": "San Francisco, CA, USA",
"isHiring": true,
"founders": [
{ "name": "Brian Chesky", "title": "Founder/CEO", "linkedinUrl": "https://www.linkedin.com/in/brianchesky/", "twitterUrl": "https://twitter.com/bchesky" }
],
"url": "https://www.ycombinator.com/companies/airbnb"
}

What data does Y Combinator Companies Scraper extract?

Every company is one row (type: "company"). Fields marked details are only present when Include founders and company details is on, fields marked contacts only when Include website contacts is on.

FieldDescription
idYC's numeric company id
slug / urlCompany slug and its YC directory page, e.g. https://www.ycombinator.com/companies/airbnb
name / formerNamesCompany name and previous names
websiteCompany website
oneLiner / longDescriptionShort tagline and the full description from the YC profile
batch / batchNameShort and long batch, e.g. W24 / Winter 2024
statusActive, Acquired, Public or Inactive
stageYC growth stage (Early, Growth, ...) when set
industry / subindustry / industriesPrimary industry, sub-industry, and the combined list YC uses for filtering
tagsTags such as SaaS, Artificial Intelligence, Developer Tools
teamSizeNumber of employees reported to YC
location / regionsLocation string (e.g. San Francisco, CA, USA) and region facets (United States of America, Europe, Remote, ...)
isHiring / isTopCompany / isNonprofitFlags from the directory
hasDemoDayVideo / hasAppVideoWhether the profile has a public Demo Day or application video
launchedAtWhen the company launched on YC (ISO 8601)
smallLogoUrlLogo thumbnail
foundersdetails - list of {name, title, bio, linkedinUrl, twitterUrl, isActive}
founderBios / activeFoundersCountdetails - founder bios and how many founders are still active
jobsCount / jobsdetails - open roles with title, url, location, type, role, salaryRange, equityRange, minExperience, visa, skills
latestNewsdetails - recent press {title, url, date}
launchesdetails - Launch YC posts {title, tagline, url, createdAt, voteCount}
socialLinksdetails - {linkedin, twitter, facebook, crunchbase, github} company profiles from the YC page
foundedYear / city / country / primaryPartner / logoUrldetails - extra profile fields
emailscontacts - email addresses written on the company's website, its own domain first
phonescontacts - phone numbers from the website in international format (+14157147580)
websiteSocialLinkscontacts - profiles linked from the website: {linkedin, twitter, facebook, instagram, youtube, tiktok, github, discord, telegram, pinterest, whatsapp}, each a list (team members' LinkedIn profiles on an About page land here too)
contactPageUrlcontacts - the website's contact page, when it has one
websiteCrawlcontacts - {status, finalUrl, pagesVisited, visitedUrls, error}: ok, noWebsite, unreachable, blocked, httpError, ... so you can see why a row has no contacts
scrapedAtTimestamp of the run (ISO 8601)

With Output open jobs as rows on, the dataset also holds one row per open job (type: "job"):

FieldDescription
jobId / title / urlYC job id, job title and the job page on ycombinator.com
location / jobType / role / roleSpecificTypee.g. San Francisco, CA, US, Full-time, Engineering, Full stack
salaryRange / equityRangee.g. $175K - $200K, 0.05% - 0.50% (null when the company does not say)
minExperience / visa / skillse.g. 3+ years, US citizen/visa only, ["Python", "TypeScript"]
postedAgoHow long ago the job was posted, as YC shows it (about 1 month)
description / hiringManager / interviewProcessWith Include job descriptions: the full description (Markdown), the hiring manager's name and the interview process when given
companyId / companySlug / companyName / companyUrl / companyWebsiteThe company the job belongs to
companyBatch / companyStatus / companyOneLiner / companyIndustry / companyTeamSize / companyLocation / companyLogoUrlCompany context, so a job row works on its own in a spreadsheet

The Dataset tab has ready-made views: Companies, Founders & jobs, Website contacts and Job rows.

How to scrape Y Combinator companies by batch

  1. Put one or more batches into Batches: W24, S25, X25 (Spring), F24 (Fall) or Winter 2024. Leave it empty to scrape the whole directory (about 6,200 companies).
  2. Optionally narrow by Industries (B2B, Fintech, Healthcare, Developer Tools, ...), Regions (United States of America, Europe, India, Remote, ...), Tags, Status or Search query.
  3. Set Max companies to cap the run and the cost, and click Start. Results appear in the Dataset tab.

The scraper enumerates the directory through the same public search index the YC website uses, so it is fast (a whole batch takes seconds) and returns exactly what the directory shows.

Input example

{
"batches": ["W24", "S24"],
"industries": ["Fintech"],
"status": "Active",
"isHiring": true,
"maxItems": 200,
"includeCompanyDetails": true
}

A lead list with founders and website contacts, plus job rows:

{
"batches": ["S25"],
"maxItems": 100,
"includeCompanyDetails": true,
"includeWebsiteContacts": true,
"includeJobs": true,
"includeJobDescriptions": false
}

Output example

{
"type": "company",
"id": 271,
"slug": "airbnb",
"name": "Airbnb",
"url": "https://www.ycombinator.com/companies/airbnb",
"website": "http://airbnb.com",
"oneLiner": "Book accommodations around the world.",
"longDescription": "Founded in August of 2008 and based in San Francisco, California, Airbnb is a trusted community marketplace ...",
"batch": "W09",
"batchName": "Winter 2009",
"status": "Public",
"stage": "Growth",
"industry": "Consumer",
"subindustry": "Travel, Leisure and Tourism",
"industries": ["Consumer", "Travel, Leisure and Tourism"],
"tags": ["Marketplace", "Travel"],
"teamSize": 6132,
"location": "San Francisco, CA, USA",
"regions": ["United States of America", "America / Canada"],
"isHiring": true,
"isTopCompany": true,
"isNonprofit": false,
"launchedAt": "2009-01-01T00:00:00Z",
"smallLogoUrl": "https://bookface-images.s3.amazonaws.com/small_logos/3e9a....png",
"founders": [
{ "name": "Brian Chesky", "title": "Founder/CEO", "bio": "Brian Chesky is the co-founder ...", "linkedinUrl": "https://www.linkedin.com/in/brianchesky/", "twitterUrl": "https://twitter.com/bchesky", "isActive": true }
],
"activeFoundersCount": 3,
"foundedYear": 2008,
"jobsCount": 0,
"latestNews": [{ "title": "Airbnb launches Airbnb Rooms ...", "url": "https://www.usatoday.com/...", "date": "May 03, 2023" }],
"socialLinks": { "linkedin": "https://www.linkedin.com/company/airbnb/", "twitter": "https://twitter.com/Airbnb", "facebook": "https://www.facebook.com/airbnb/", "crunchbase": "https://www.crunchbase.com/organization/airbnb", "github": null },
"scrapedAt": "2026-09-07T22:40:00Z"
}

Website contact fields of one S25 company (Include website contacts on, the other 10 social networks trimmed):

{
"name": "Juxta",
"batch": "S25",
"website": "https://juxta.com",
"emails": ["support@juxta.com", "info@juxta.com", "careers@juxta.com"],
"phones": ["+18587538444"],
"websiteSocialLinks": { "linkedin": ["https://www.linkedin.com/company/use-juxta"] },
"contactPageUrl": "https://www.juxta.com/contact",
"websiteCrawl": {
"status": "ok",
"finalUrl": "https://www.juxta.com/",
"pagesVisited": 4,
"visitedUrls": ["https://www.juxta.com/", "https://www.juxta.com/contact", "https://www.juxta.com/about", "https://www.juxta.com/terms"],
"error": null
}
}

One job row (Output open jobs as rows on):

{
"type": "job",
"jobId": 84779,
"title": "Senior Software Engineer",
"url": "https://www.ycombinator.com/companies/f2/jobs/ejl3hKh-senior-software-engineer",
"location": "San Francisco, CA, US",
"jobType": "Full-time",
"role": "Engineering",
"roleSpecificType": "Full stack",
"salaryRange": "$175K - $200K",
"equityRange": null,
"minExperience": "3+ years",
"visa": "US citizen/visa only",
"skills": ["Node.js", "Python", "TypeScript"],
"postedAgo": "about 1 year",
"companyId": 30832,
"companySlug": "f2",
"companyName": "F2",
"companyUrl": "https://www.ycombinator.com/companies/f2",
"companyWebsite": "http://f2.ai",
"companyBatch": "S25",
"companyStatus": "Active",
"companyOneLiner": "The AI platform for private markets investors",
"companyIndustry": "B2B",
"companyTeamSize": 15,
"companyLocation": "New York City, NY, USA",
"scrapedAt": "2026-11-06T23:43:13Z"
}

How to get YC founders with their LinkedIn and X profiles

Turn on Include founders and company details (includeCompanyDetails: true). Each company then gets a founders list with name, title, bio and the LinkedIn and X links the founder chose to show on their YC profile; YC profiles carry no other founder links. In a test on 10 W24 companies (November 2026) every company had founders, all 19 founders had a LinkedIn link and 11 of 19 had an X link. The scraper does not read founders' private emails: YC hides them behind a login, and nothing is guessed.

How to get emails and phone numbers of YC startups

Turn on Include website contacts (includeWebsiteContacts: true). For each company the scraper opens its own website: the homepage plus up to 3 linked pages, picked in this order: contact, imprint, about, team, support and legal pages (at most 4 pages per company, robots.txt respected). It returns the emails, phone numbers and social profiles published there, own-domain addresses first, and the contact page URL. These are the addresses the company publishes, often founders@, hello@ or support@, sometimes a founder's own address when the website shows it. Only what is written on the website is returned: no guessed patterns like first.last@, no email lookups or data brokers, and placeholders (name@example.com, 555-01xx demo numbers, regulator hotlines quoted in privacy policies) are dropped.

In tests in November 2026, 33 of 40 S25 companies (82%) had at least one email on their website, 5 (12%) a phone number and 25 (62%) social links. Websites built entirely in JavaScript or sites that block datacenter IPs can return nothing; websiteCrawl.status tells you why. Websites are always fetched through the plain datacenter proxy (or none when Apify Proxy is off), never a residential proxy.

How to scrape YC jobs from Work at a Startup

Turn on Output open jobs as rows (includeJobs: true): every open job becomes its own row with title, location, employment type, role, salary and equity range, minimum experience, visa requirement and skills, plus the company's name, batch, website and one-liner. Add Include job descriptions for the full description, the hiring manager's name and the interview process (one extra page load per job). Set Hiring only to get only companies with open roles; companies that are not hiring cost nothing extra. Jobs come from the public YC company pages (the Work at a Startup postings YC shows there), without login. In the S25 test, 18 of 40 companies were hiring with 98 open jobs between them.

Does it work without login or proxies?

Yes. Everything comes from the public directory, public company and job pages and the companies' own public websites. Apify Proxy is on by default for reliability on large runs, but the scraper works without it.

Pricing

Pay per event, no subscription and no start fee:

WhatPriceWhen it is charged
Company$0.002Every company row
Company details$0.003Per company page opened with Include founders and company details
Website contacts$0.006Per company whose website shows at least one email or phone number, with Include website contacts; nothing found or no website = free
Job$0.001Per job row with Output open jobs as rows (descriptions included at no extra charge)

Example: 100 companies with founders and website contacts cost at most $1.10 ($0.20 + $0.30 + up to $0.60). The Apify free plan is enough to scrape several batches. Set a maximum cost per run in the run options to cap any run.

Integrations and API

Use the run in Zapier, Make, n8n, Google Sheets, or call it from Python/Node with the Apify client. See the API tab for ready-made snippets. To load job rows and company rows separately, filter the dataset on the type field (company or job).

This Actor collects only publicly available business information: company data from the YC directory and company profiles, founder names, titles and the public LinkedIn and X links shown on the YC page, public job listings, and, when you turn the option on, the contact details companies publish on their own websites. It does not log in, does not read anything behind a login (such as founders' private emails), and does not guess or buy email addresses. You are responsible for how you use the data and for complying with YC's terms and applicable law, including GDPR/CCPA and anti-spam rules (CAN-SPAM, PECR) when you process names or contact businesses.

Support

Found a bug or need a field added? Open an issue in the Issues tab; it is usually answered within a day.

Found it useful?

A ★ review on this Actor's Apify Store page helps other users find it and tells us what to improve. Issues and feature requests are welcome in the Actor's Issues tab.

⌂ 换网址