Y Combinator Companies Scraper avatar

Y Combinator Companies Scraper

Pricing

from $1.99 / 1,000 results

Go to Apify Store
Y Combinator Companies Scraper

Y Combinator Companies Scraper

Y Combinator Companies Scraper extracts startup profiles with founders, open jobs and job counts, batch, industry, sub-industry, stage, status, location and descriptions, plus diversity highlight filters. ๐Ÿš€ Deep YC directory research.

Pricing

from $1.99 / 1,000 results

Rating

0.0

(0)

Developer

Scrapers Hub

Scrapers Hub

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

๐Ÿš€ Y Combinator Companies Scraper โ€“ YC Startup, Founder & Job Data Extraction

The Y Combinator Companies Scraper extracts the full YC startup directory as structured data: company profiles, batch and status, industry and sub-industry, team size, funding stage, locations, websites, social links, founder records and open job postings. Set your filters โ€” batch, industry, region, status, free-text query โ€” press Start, and you get a clean dataset of Y Combinator companies instead of an afternoon of scrolling an infinite-scroll directory.

This YC companies scraper is built for the people who actually work with startup data: investors tracking new batches, recruiters sourcing from YC-backed teams, founders researching competitors and comparables, sales teams targeting well-funded early-stage companies, and analysts studying how a cohort's industry mix shifts over time. Everything it returns comes from the public YC companies directory โ€” no login, no account, no cookies.


๐Ÿ“Š What Data Can You Extract with This YC Companies Scraper?

Each dataset item is one Y Combinator company. The fields group into seven categories:

CategoryFieldsWhat it tells you
๐Ÿ†” Identityid, slug, name, formerNames, url, website, logoThumbThe company's YC identifier and URL slug, current and previous names, its YC directory page, its own site, and its logo
๐Ÿ“ DescriptionshortDescription, longDescriptionThe one-line pitch and the full description as published on the YC profile
๐Ÿท๏ธ Classificationbatch, industry, subIndustry, tags, status, stage, nonprofit, topCompanyWhich YC batch, the industry and sub-industry, tag list, operating status, funding stage, and YC's own top-company flag
๐Ÿ“ Location & sizelocation, allLocations, regions, teamSizePrimary location, the full location string, region tags and current headcount
๐Ÿ“… TimelinefoundingYear, launchedAt, scrapedAtFounding year, launch timestamp, and when this record was collected
๐Ÿ‘ฅ FoundersfoundersAn array of founder records with name, title, bio, LinkedIn, Twitter and an email-availability flag
๐Ÿ’ผ HiringisHiring, jobCount, openJobsWhether the company is hiring, how many roles are open, and the full job array with title, URL, location, role, type, skills, experience, visa, equity and salary range
๐Ÿ”— Sociallinkedin, twitterCompany social profiles where published

The field that makes this scraper genuinely different is openJobs. Each entry carries not just a title and location but skills, experience, visa, equityRange, salaryMin and salaryMax where YC publishes them โ€” which means a single run gives you a live, structured view of early-stage hiring demand and compensation, not just a list of company names.


๐ŸŒŸ Key Features of the Y Combinator Companies Scraper

FeatureDescription
๐ŸŽ“ Batch filteringbatch accepts short codes such as S13, W22, F24, X25 or full names like Summer 2013, with any for no filter
๐Ÿญ Industry and tag filtersindustry matches exactly (B2B, Consumer, Fintech, Healthcare) while tags takes a list of industry tags such as SaaS or B2B
๐ŸŒ Region filteringregions accepts one or more region values, e.g. United States of America, Europe, Remote
๐Ÿ“Š Status filteringstatus selects from any, Active, Inactive, Acquired or Public
๐Ÿ”Ž Free-text searchquery runs the same free-text search against name and description that the YC directory search box does
๐Ÿ‘ฅ Optional founder datascrapeFounders (default true) attaches the founders array with names, titles, bios, LinkedIn, Twitter and email availability
๐Ÿ’ผ Optional job datascrapeOpenJobs (default true) attaches the openJobs array with titles, locations, skills, salary ranges and visa information
๐ŸŽฏ Diversity highlight filtersThree boolean filters restrict results to companies YC flags with Black, Hispanic/Latino or women founders
๐Ÿ”ข Result limitingmaxItems caps the run, defaulting to 3 so a first exploratory run is instant; set 0 for no limit
๐Ÿ”„ Automatic proxy rotationRequests route through rotating proxies managed automatically by the actor, with nothing to configure

๐Ÿš€ Why Choose This Y Combinator Companies Scraper?

Filters that match how you actually search. Batch, industry, sub-industry, region, status and free-text query are all available as inputs, so you narrow the directory before the run rather than exporting everything and filtering afterwards. A query like "active B2B fintech companies from W24 in Europe" is four input fields, not a spreadsheet exercise.

Founders and jobs in the same record. Most directory scrapers give you company rows. This one nests founders and openJobs inside each company, so one dataset answers who runs the company, how to reach them on LinkedIn, what roles they are hiring for, and what those roles pay.

Compensation and visa data where YC publishes it. The openJobs entries include salaryMin, salaryMax, equityRange, visa, skills and experience. That turns the dataset into a genuine source for startup compensation benchmarking, not just a job board mirror.

Safe defaults for exploration. maxItems defaults to 3 rather than unlimited, which means your first run finishes in seconds and shows you the exact record shape before you commit to a full directory pull.


๐Ÿ“ฅ Input

Every field is optional โ€” running with no input at all uses the defaults below.

{
"directoryUrl": "https://www.ycombinator.com/companies",
"maxItems": 3,
"query": "",
"industry": "",
"scrapeFounders": true,
"scrapeOpenJobs": true,
"batch": "any",
"status": "any",
"regions": [],
"tags": [],
"highlightBlackFounders": false,
"highlightHispanicFounders": false,
"highlightWomenFounders": false
}

๐Ÿ”ง Y Combinator Companies Scraper Input Fields

FieldTypeRequiredDefaultDescription
directoryUrlstringโŒ Nohttps://www.ycombinator.com/companiesThe YC companies directory URL. Only this URL is supported โ€” kept as an input for compatibility and future sub-paths
maxItemsintegerโŒ No3Maximum number of companies to scrape. Leave unset or 0 for no limit
querystringโŒ Noโ€”Optional free-text search against the YC directory, matching name and description, same as the search box on ycombinator.com/companies
industrystringโŒ Noโ€”Exact-match industry filter, e.g. B2B, Consumer, Fintech, Healthcare
scrapeFoundersbooleanโŒ NotrueFetch and include the founders array (name, title, bio, LinkedIn/Twitter, email availability) for each company
scrapeOpenJobsbooleanโŒ NotrueFetch and include the openJobs array (title, location, skills, salary range, visa, etc.) for each company
batchstringโŒ No"any"Filter by YC batch. Accepts short codes (S13, W22, F24, X25) or full names (Summer 2013). Use any for no filter
statusstring (enum)โŒ No"any"Filter by company status: any, Active, Inactive, Acquired, Public
regionsarrayโŒ No[]Filter by region(s), e.g. United States of America, Europe, Remote. Empty means all regions
tagsarrayโŒ No[]Filter by industry tag(s), e.g. SaaS, Fintech, B2B. Empty means all tags
highlightBlackFoundersbooleanโŒ NofalseOnly return companies flagged with Black founders. Depends on YC currently exposing this signal in its search index โ€” if no companies are flagged, the filter yields zero results even though it queries correctly
highlightHispanicFoundersbooleanโŒ NofalseOnly return companies flagged with Hispanic/Latino founders. Same caveat as above
highlightWomenFoundersbooleanโŒ NofalseOnly return companies flagged with women founders. Same caveat as above

๐Ÿ’ก Input Examples

Latest batch, full data โ€” every company in a recent cohort with founders and jobs:

{
"batch": "W26",
"maxItems": 0,
"scrapeFounders": true,
"scrapeOpenJobs": true
}

Active European fintech companies โ€” investor screening:

{
"industry": "Fintech",
"status": "Active",
"regions": ["Europe"],
"maxItems": 200
}

Hiring-focused pull โ€” companies only, jobs attached, founders skipped for speed:

{
"query": "developer tools",
"tags": ["SaaS", "B2B"],
"scrapeFounders": false,
"scrapeOpenJobs": true,
"maxItems": 100
}

๐Ÿ“ค Output

One dataset item per Y Combinator company. This is a real record from an actual run of the YC companies scraper:

{
"type": "yc_company",
"id": "martini",
"slug": "martini",
"url": "https://www.ycombinator.com/companies/martini",
"name": "Martini",
"shortDescription": "AI Video Production for Professionals",
"batch": "W26",
"industry": "B2B",
"subIndustry": "Engineering, Product and Design",
"status": "Active",
"stage": "Early",
"location": "San Francisco",
"allLocations": "San Francisco, CA, USA",
"teamSize": 2,
"launchedAt": 1768440972,
"foundingYear": 2025,
"website": "https://martini.film",
"logoThumb": "https://bookface-images.s3.amazonaws.com/small_logos/6c61a438eef6d3a1fe29d67dd180ddaaac257b9d.png",
"demoDayVideo": false,
"appVideo": false,
"topCompany": false
}

๐Ÿงพ Y Combinator Company Output Fields

FieldTypeDescription
typestring | nullRecord type, e.g. yc_company
idstring | nullUnique identifier of the company
slugstring | nullURL-friendly identifier
urlstring | nullCanonical YC directory URL for the company
namestring | nullCompany name
formerNamesarray | nullPrevious names the company has traded under
shortDescriptionstring | nullOne-line description
longDescriptionstring | nullFull description from the YC profile
batchstring | nullYC batch the company belongs to
industrystring | nullIndustry of the company
subIndustrystring | nullSub-industry classification
statusstring | nullCompany status
stagestring | nullFunding or company stage
locationstring | nullPrimary location
allLocationsstring | nullFull location string
regionsarray | nullRegion values for the company
tagsarray | nullIndustry tags attached to the company
teamSizeinteger | nullCurrent team size
foundingYearinteger | nullYear the company was founded
launchedAtinteger | nullLaunch timestamp
websitestring | nullCompany website address
logoThumbstring | nullCompany logo thumbnail URL
linkedinstring | nullCompany LinkedIn URL
twitterstring | nullCompany Twitter/X URL
nonprofitboolean | nullWhether the company is a nonprofit
topCompanyboolean | nullWhether YC flags it as a top company
demoDayVideoboolean | nullWhether a demo day video exists
appVideoboolean | nullWhether an app video exists
isHiringboolean | nullWhether the company is currently hiring
jobCountinteger | nullNumber of open jobs found
foundersarray | nullFounder records โ€” name, title, bio, LinkedIn, Twitter and email availability
openJobsarray | nullOpen job records โ€” title, URL, apply URL, location, type, role, remote flag, skills, experience, visa, equity range and salary range
scrapedAtstring | nullWhen this record was scraped

๐Ÿงพ Run Status Fields

Some records describe the run rather than a company:

FieldTypeDescription
typestring | nullRecord type identifying the record as a status entry
reasonstring | nullReason associated with the record
inputobject | nullThe input the run executed with

๐Ÿ’ป How to Use the Y Combinator Companies Scraper (Step by Step)

Step 1: Decide What Slice of the YC Directory You Need

The directory holds thousands of companies, and the value of this scraper comes from narrowing it before the run. Work out which dimension matters most to you: a specific batch if you are tracking new cohorts, an industry and region if you are building a target account list, or a free-text query if you are looking for companies working on a specific problem. You can combine all of these, and combining them usually produces a far more useful dataset than a single broad filter.

Step 2: Set Your Filters

Fill in batch, industry, status, regions, tags and query as needed. batch is flexible about format โ€” W22 and Winter 2022 both work โ€” while industry is exact-match, so Fintech will match and fintech services will not. regions and tags are lists, so you can pass several values to widen a filter without abandoning it.

Step 3: Choose Whether You Need Founders and Jobs

scrapeFounders and scrapeOpenJobs both default to true. Each requires additional fetching per company, so if you only need the company-level fields, turning them off makes large runs noticeably lighter. Turn them on when you specifically want contact routes into the company or hiring and compensation data.

Step 4: Start Small with maxItems

The default is 3, which exists precisely so your first run finishes immediately and shows you the record shape. Confirm the filters return the companies you expected before scaling. When you are ready for the full set, set maxItems to 0 for no limit or to a specific number if you want a bounded run.

Step 5: Run the YC Companies Scraper

Press Start. The actor queries the YC directory with your filters and collects matching companies, then fetches founder and job detail for each one if those options are enabled. Proxy rotation is handled automatically. The log reports progress as companies are collected.

Step 6: Work with the Nested Founder and Job Arrays

founders and openJobs are arrays of objects, which means a flat CSV export will not represent them well. For spreadsheet work, either export to JSON and flatten programmatically, or run once with scrapeFounders on for a founder-level view and once with scrapeOpenJobs on for a jobs-level view. In code, iterate the nested arrays directly โ€” that is where the salary, skills and visa detail lives.

Step 7: Schedule Batch Tracking

YC announces a new batch roughly twice a year, and existing companies change status, team size and hiring constantly. Schedule a run against the batches you follow and store each dataset with its date. Joining runs on id gives you a time series of teamSize, status, stage and jobCount โ€” which is how you spot a company scaling or stalling before it is public knowledge.


๐Ÿ”Œ API Access & Integrations

Run the YC companies scraper from your own code. The synchronous endpoint starts a run and returns dataset items in one call:

curl -X POST "https://api.apify.com/v2/acts/scrapers-hub~yc-companies-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"batch": "W26",
"status": "Active",
"maxItems": 50,
"scrapeFounders": true,
"scrapeOpenJobs": true
}'

With the official Python client:

from apify_client import ApifyClient
client = ApifyClient("YOUR_TOKEN")
run_input = {
"industry": "Fintech",
"status": "Active",
"regions": ["Europe"],
"maxItems": 200,
"scrapeOpenJobs": True,
}
run = client.actor("scrapers-hub/yc-companies-scraper").call(run_input=run_input)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
if item.get("type") != "yc_company":
continue
print(item["name"], item["batch"], item["teamSize"], item.get("jobCount"))

The actor also works with Apify's standard integrations for Zapier, Make, Google Sheets, Slack and generic webhooks, so a scheduled batch run can post new YC companies straight into a channel or a CRM.


๐Ÿ’ก Best Use Cases for Y Combinator Company Data

๐Ÿ’ฐ Investor Deal Flow and Sourcing

Filter by batch, stage and industry to build a screening list the moment a cohort is published. Combining teamSize, foundingYear and status gives you a first-pass sense of traction, and founders supplies LinkedIn routes to the people you actually need to reach.

๐Ÿง‘โ€๐Ÿ’ผ Technical Recruitment and Talent Sourcing

openJobs carries title, skills, experience, visa and salary range per role. Recruiters can filter across hundreds of YC companies for a specific skill and seniority in one pass, and isHiring plus jobCount show which companies are hiring aggressively enough to be worth a conversation.

๐ŸŽฏ B2B Sales Prospecting

YC-backed companies are well-funded early-stage buyers. Filter on industry, tags, regions and teamSize to isolate accounts that match your ideal customer profile, then use website, linkedin and the founders array for outreach routes.

๐Ÿ“ˆ Startup and Market Trend Analysis

Aggregate batch, industry, subIndustry and tags across cohorts to see how YC's investment mix shifts over time. A sub-industry that goes from two companies to twenty in three batches is a signal worth acting on, and it is only visible with the full directory in a table.

๐Ÿ”ฌ Competitive and Comparable Research

Use query and industry to find companies working on the same problem you are. shortDescription, longDescription, stage, teamSize and foundingYear together tell you how crowded a space is and how far ahead the incumbents are โ€” essential context for a fundraise or a positioning decision.

๐Ÿ’ต Compensation Benchmarking

salaryMin, salaryMax and equityRange inside openJobs provide real early-stage compensation data across many companies. Grouping by role, location and experience gives founders and candidates a defensible benchmark rather than an anecdote.

๐ŸŒ Geographic Ecosystem Mapping

Group by location, allLocations and regions to see where YC companies actually operate. Comparing regional counts and team sizes across batches shows which startup hubs are gaining ground and which are losing companies to remote-first structures.


โš™๏ธ Tips for Better YC Companies Scraping Results

  • Start with maxItems at its default. Three companies is enough to confirm your filters and see the record shape. Only then set maxItems to 0 for the full run.
  • Remember industry is exact-match. Use the values YC itself uses โ€” B2B, Consumer, Fintech, Healthcare. If a filter returns nothing, an inexact industry string is the most likely cause.
  • Turn off scrapeFounders and scrapeOpenJobs for large company-level pulls. Each adds per-company fetching. If you only need the directory fields, disabling both makes a full-directory run substantially lighter.
  • Use tags to widen, industry to narrow. industry selects one value; tags accepts several. Combining a narrow industry with a broad tag list is usually the most precise way to describe a target segment.
  • Export to JSON when you need founders or jobs. Nested arrays do not survive a flat CSV export intact. Use JSON, or run separately for company-level and job-level views.
  • Treat the diversity highlight filters as index-dependent. They query correctly, but they return results only while YC exposes that signal in its search index. Zero results does not necessarily mean zero companies.
  • Join runs on id, not name. Companies rename โ€” formerNames exists for exactly that reason โ€” but the id is stable across runs.

๐Ÿ› ๏ธ Troubleshooting

My filter combination returned no companies. Start by relaxing one filter at a time. The usual culprits are an industry value that does not exactly match YC's own label, a batch code that does not exist, or a combination that is genuinely empty โ€” a specific batch plus a narrow industry plus a single region can easily have no members.

A diversity highlight filter returned zero results. These filters depend on YC exposing that signal in its search index. If YC currently flags no companies, the filter yields zero results even though the query itself is correct. This is documented behaviour rather than a fault.

founders or openJobs is missing from my records. Check that scrapeFounders and scrapeOpenJobs are enabled. Both default to true, but if either is turned off the corresponding array is not fetched. Note also that openJobs only appears where the company actually has job postings.

My CSV export lost the founder and job detail. Nested arrays do not flatten cleanly into CSV columns. Export as JSON and flatten in your own code, or run twice โ€” once for company-level data and once specifically for the nested arrays you need.

Only three companies came back. maxItems defaults to 3. Set it to 0 for no limit, or to whatever bounded number you want.

Salary fields are missing on some jobs. salaryMin, salaryMax, equityRange and visa are only present when the company publishes them on the posting. Many early-stage roles omit compensation entirely, so expect partial coverage.


โ“ Frequently Asked Questions About Y Combinator Company Scraping

What does the Y Combinator Companies Scraper do? It extracts companies from the public YC startup directory as structured data โ€” identity, description, batch, industry, status, stage, location, team size, website, social links, and optionally founder records and open job postings.

Do I need a Y Combinator account to use this YC scraper? No. It reads only the public companies directory. There is no login, cookie or token required.

How do I scrape a specific YC batch? Set batch to the batch code or full name โ€” W26, S24, F24, X25 or Summer 2013 all work. Use any to include every batch.

Can I scrape the entire YC directory? Yes. Set maxItems to 0 for no limit and leave the filters at their defaults. Consider turning off scrapeFounders and scrapeOpenJobs for a run of that size.

What founder information does the YC companies scraper return? Each entry in the founders array carries name, title, bio, LinkedIn and Twitter links where published, and a flag indicating whether an email address is available.

Does it return founder email addresses? The founder records include an email-availability indicator rather than the address itself.

What job data is included? Each openJobs entry can include title, job URL, apply URL, location, employment type, role, a remote flag, required skills, minimum experience, visa information, equity range and a salary range split into salaryMin and salaryMax โ€” subject to what the company publishes.

Can I filter by region? Yes. regions takes a list of values such as United States of America, Europe or Remote. Leaving it empty includes every region.

What is the difference between industry and tags? industry is a single exact-match value such as B2B or Fintech. tags is a list of industry tags, so it can match several categories at once.

What does the status filter cover? any, Active, Inactive, Acquired and Public โ€” useful for excluding companies that no longer operate or have already exited.

Why is maxItems set to 3 by default? So an exploratory run finishes immediately and shows you the exact record shape before you commit to a large pull. Raise it or set 0 once you are satisfied with the filters.

Can I change directoryUrl? Only https://www.ycombinator.com/companies is supported. The field exists for compatibility and possible future sub-paths.

Do I need to configure proxies? No. Proxy rotation is handled automatically by the actor and is not user-configurable.

How do I track YC companies over time? Schedule recurring runs with the same filters and store each dataset. Join runs on id to build a time series of teamSize, status, stage and jobCount.

What export formats are available? JSON, CSV, Excel, XML, RSS and HTML through the Apify Console, plus programmatic access via the API and official clients. Use JSON when you need the nested founders and openJobs arrays intact.


๐Ÿ†˜ Support & Feedback

If a filter behaves unexpectedly, or a field you expect is missing from the output, open a ticket on the Issues tab of this actor. Including the input JSON and the run ID makes the behaviour reproducible and speeds up a fix considerably.

Need something custom โ€” additional YC fields, a different output shape, founder-level or job-level flat records, or scraping of another startup directory? Email scraperhubapi@gmail.com and describe what you are building.

If the Y Combinator Companies Scraper is useful to your sourcing, recruiting or research work, please leave a review on the actor page. Ratings help other investors, recruiters and founders find the tool and guide what gets built next.


โš–๏ธ Disclaimer

The Y Combinator Companies Scraper collects only publicly available information from the YC companies directory at ycombinator.com โ€” the same content any visitor can see without logging in. It does not use an account, does not require cookies or tokens, and does not access private or authenticated areas of the site. This actor is not affiliated with, endorsed by, or connected to Y Combinator.

Some of the data this YC scraper returns is personal data. Founder names, titles, biographies and LinkedIn and Twitter profile links identify individuals, which brings your use of the dataset within the scope of GDPR, UK GDPR, CCPA and equivalent privacy legislation. You must establish a lawful basis for processing, provide the required privacy information where you contact individuals, honour access and erasure requests, and comply with anti-spam rules such as PECR and CAN-SPAM before using founder details for outreach.

You are also responsible for complying with Y Combinator's terms of service and with any applicable copyright in company descriptions and logos. Company data, team sizes, statuses and job postings are published by third parties and change frequently; verify anything commercially material โ€” particularly compensation figures and company status โ€” directly at source before relying on it.

If you believe data collected by this actor relates to you and should be removed, contact scraperhubapi@gmail.com with the details and the request will be actioned.