Y Combinator Companies Scraper - Founders & New Startups
Pricing
from $10.00 / 1,000 company returneds
Y Combinator Companies Scraper - Founders & New Startups
Company data from Y Combinator company pages: batch, status, team size, location, tags, website, social links and founders with LinkedIn URLs. Read a list, filter the whole directory, or monitor it and get only newly listed startups.
Pricing
from $10.00 / 1,000 company returneds
Rating
0.0
(0)
Developer
NeverEmpty
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
19 days ago
Last modified
Categories
Share
Company data from the public Y Combinator company pages (ycombinator.com/companies/<slug>), one row per company: name, batch, status, one-liner, website, team size, year founded, location, country, tags, description, social links, group partner and the founders shown on the page with their titles, bios and public LinkedIn / X links.
Three ways to use it:
- A list - paste company page addresses or slugs and get one row for each.
- The whole directory with filters - the Actor takes the company list from YC's public sitemap (about 6,300 company pages on 2026-10-05), opens the pages and returns the companies that match your filters (batch, status, country, tag, team size).
- Monitoring - run it on a schedule and get only the companies newly added to the directory since the last run.
No login, no cookies. Only what the public company page shows is returned; nothing is added from other sources, so there are no email addresses.
What you get
| Column | Meaning |
|---|---|
name, slug, companyId, ycUrl | The company, its slug in the directory, YC's numeric ID and the page address |
batch, batchCode | Batch as written on the page (Winter 2009) and its short form (W09) |
ycStatus | Status as written on the page (Active, Public, Acquired, Inactive) |
oneLiner, longDescription | The one-line pitch and the description |
website | Company website |
teamSize, yearFounded | As shown on the page |
location, city, country | Location text, city and two-letter country code |
tags | Industry tags on the page |
founderNames, founderCount, founders | Founders listed on the page; each entry in founders has name, title, bio, linkedinUrl, twitterUrl, isActive |
groupPartner, groupPartnerUrl | The YC group partner named on the page |
linkedinUrl, twitterUrl, facebookUrl, crunchbaseUrl, githubUrl | Company links on the page |
smallLogoUrl | Small logo image |
sitemapLastModified | The page's last-modified date in YC's sitemap (whole-directory and monitoring runs) |
change, previousCheckedAt | Monitoring runs only: new-company, and the time of the earlier run that last recorded companies for these filters (the first run, or the last run that found a new page) |
input, scrapedAt, status | What you typed, when the page was read, ok for a company row |
A value that is not on the page is null, never 0 or an empty string. Team size, status and location are what the company page shows at the moment of the read; YC and the companies update them at their own pace.
Before a row is returned, the slug the page itself reports is compared with the slug that was requested. If they differ, no data is returned for that line (a free slug-mismatch row instead).
Input
companies- one per line:https://www.ycombinator.com/companies/airbnbor justairbnb. Up to 1,000 lines. When this is filled in, only these companies are read; the options below are not applied.allCompanies- read the directory from its sitemap, most recently updated pages first.batches,statuses,countries,tags,minTeamSize,maxTeamSize- filters for the whole-directory and monitoring modes. Inside one filter any value may match; different filters must all match. They are written as on the company page (Winter 2025orW25,Active,US,Fintech) and are not case-sensitive. A company with no team size on its page does not match a team-size filter.maxCompanies- stop when this many companies have been returned (default 100).maxPagesToRead- stop after reading this many company pages, matched or not (default 1,000, at most 10,000 per run).monitoringMode,resetMonitoringState- see below.useProxy- requests go directly to www.ycombinator.com; a residential proxy is tried once per refused request, at most three times in a run, only when the site answers HTTP 403 or 429. After a refusal the run stops sending requests and says what it did not read.
The filters are applied to each company page after it has been read: YC's filtered directory list (/companies?...) is disallowed by its robots.txt and is not used. That is why a filtered run reads more pages than it returns, and why pages that did not match have a small charge (below).
Monitoring mode
Turn monitoringMode on, leave companies empty, and schedule the Actor.
- The first run with a given set of filters only remembers the company pages listed in the sitemap at that moment. It reads no company page, returns one free
baseline-savedrow and charges nothing. To get the companies that are already listed, run once with monitoring off. - Later runs read only the company pages that were not in the sitemap before. Those that match your filters come back as rows with
change: "new-company". - Every later run is charged one monitoring check (
sitemap-checked) for reading the sitemap and comparing it with the remembered pages. A run with no new company page returns one freeno-new-companiesrow and is charged only that check. - A new company that could not be read, or that was cut off by
maxCompanies,maxPagesToReador a charge limit, is not remembered; it still counts as new.
Companies are remembered per set of filters, so two schedules with different filters do not affect each other. Do not run two schedules with the same filters at the same moment: the platform's key-value store has no atomic update, so two runs finishing together can overwrite each other's record and return the same company twice.
Monitoring detects pages that are new in the sitemap. A company that already existed and whose page moved to a new slug appears as a new page too (use batch and yearFounded to tell). If a run finds that more than a quarter of the sitemap is not remembered, it treats the earlier record as incomplete: it reads nothing, charges nothing and asks for a reset. It does not report changes to a company that was already listed (a new team size, a status change).
What is charged
-
company-returned- one per company row. -
company-checked- whole-directory and monitoring modes only: one per company page that was read but does not match your filters. A run with no filter, and a run on a list ofcompanies, never charge this. -
sitemap-checked- monitoring mode only: one per run that read the sitemap and compared it with the remembered company pages. The first monitoring run (which only remembers the current list) is not charged.
There is no start fee and no monthly fee. Rows that explain why nothing was returned are free: no-such-company, slug-mismatch, invalid-input, duplicate-input, unreadable, blocked, robots-disallowed, no-match, no-new-companies, baseline-saved, not-read, budget-reached.
A filtered run over the whole directory reads every page until maxCompanies or maxPagesToRead is reached, so its cost is bounded by maxPagesToRead: each page read is charged once, either as a row or as a check. If you set a maximum total charge for a run, the Actor reads a page only while the limit has room for it, and adds a free not-read row saying how many pages it did not read.
How it reads
robots.txtof www.ycombinator.com is read at the start of every run and followed (rules forUser-agent: *). Only/companies/sitemap.xmland/companies/<slug>are requested.- Two requests at a time with a pause between them; a failed request is retried once.
- If a page is refused (HTTP 403 / 429 or a verification page), or three pages in a row cannot be read, the run stops sending requests and reports what it did not read.
- A full pass over the directory takes roughly an hour; raise the run timeout if you read more than a few thousand pages in one run.
Limits
- Data comes only from company pages. Jobs, news and launch posts are not included.
- The filters need each page to be read; there is no faster path for "all companies of one batch".
- This Actor is not affiliated with or endorsed by Y Combinator. You are responsible for how you use the data, including Y Combinator's terms of use and privacy laws that apply to the founder names and profile links.
Thanks for using this Actor
We build these tools for people who run them every day, and we improve them from what users tell us.
- Missing a field, or need another filter? Tell us in the Issues tab. If the data is there, we add it.
- Found a bug or a wrong value? Post the run ID in the Issues tab. Wrong data is the thing we fix first.
If this Actor saved you time, a short review helps other people find it.