# Y Combinator Scraper — Companies, Founders & Jobs (`scrapesage/ycombinator-scraper`) Actor

Scrape the full Y Combinator startup directory: company profile, batch, status, team size, industry, location, website, plus founders with LinkedIn/Twitter, company socials and open jobs. Filter by batch, industry, region or status. Monitor mode for new companies. No login.

- **URL**: https://apify.com/scrapesage/ycombinator-scraper.md
- **Developed by:** [Scrape Sage](https://apify.com/scrapesage) (community)
- **Categories:** Lead generation, Jobs, Agents
- **Stats:** 47 total users, 15 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.31 / 1,000 company scrapeds

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Y Combinator Scraper — Companies, Founders, Socials & Jobs

> **Disclaimer:** This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Y Combinator or any of its subsidiaries. All trademarks mentioned are the property of their respective owners. "Y Combinator" is referenced only to describe the publicly available website this Actor collects data from.

Extract the **entire Y Combinator startup directory** — every company across every batch (W05 → the latest cohort) with the full profile **plus the data other YC scrapers skip**: **founders with their LinkedIn & Twitter/X**, **company social links** (LinkedIn, X, Facebook, GitHub, Crunchbase), the **YC group partner**, and **open job postings** with salary & equity ranges. Turn ~6,000 funded startups into a ready-to-use **B2B lead list, sourcing pipeline, or startup-intelligence dataset**.

No login, no cookies, no browser — it reads YC's own public Algolia directory and profile pages directly, with a built-in **monitor mode** that surfaces only new companies, batches, and jobs.

### Why this Y Combinator scraper?

Most YC scrapers dump the directory's basic columns and stop. This actor merges YC's public **Algolia index** (complete, fast, filterable) with each company's **profile page** to ship the **richest YC dataset available** — including founder contacts and company socials that make every row an actual lead.

| Data | Typical YC scrapers | This actor |
|---|---|---|
| Company name, batch, status, team size, industry, location | ✅ | ✅ |
| One-liner + full long description | partial | ✅ |
| Tags, sub-industry, region, stage, top-company flag | partial | ✅ |
| Company website | ✅ | ✅ |
| **Founders** (name, title, bio) | ❌ | ✅ |
| **Founder LinkedIn & Twitter/X** | ❌ | ✅ |
| Company **LinkedIn / X / Facebook / GitHub / Crunchbase** | ❌ | ✅ |
| YC group partner, year founded, city/country | ❌ | ✅ |
| **Open jobs** (title, role, location, salary & equity) | ❌ | ✅ opt-in |
| Full directory past Algolia's 1,000-result cap | partial | ✅ (batch-sliced) |
| Monitor mode — only new companies / jobs | ❌ | ✅ |

### Use cases

- **B2B lead generation** — every YC company is a funded, fast-moving buyer. Export them with website, founders, and founder LinkedIn/Twitter to feed your CRM or outreach.
- **Sourcing & recruiting** — find founders and engineers by batch, industry, or tag; pull open roles with comp ranges straight from the directory.
- **VC / competitive & market intelligence** — track every batch, watch which industries and tags are growing, and monitor competitors and portfolio companies.
- **Sales prospecting to startups** — filter by batch, region, stage, and "is hiring" to build targeted lists of companies likely to buy dev tools, infra, fintech, and services.
- **Datasets & dashboards** — build and maintain a clean YC startup database for analytics and research.

### How to use

1. [Sign up for Apify](https://console.apify.com/sign-up) — the free plan is enough to try this actor.
2. Open the **Y Combinator Scraper**, set filters (batch, industry, region, status…) or paste a YC directory URL, and click **Start**.
3. Watch companies — with founders and socials — stream into the dataset.
4. **Export** as JSON, CSV, Excel, XML, or RSS — or pull results via the [Apify API](https://docs.apify.com/api/v2).

### Input

```json
{
    "batches": ["Summer 2024", "Winter 2025"],
    "industries": ["B2B", "Fintech"],
    "isHiring": true,
    "enrichProfile": true,
    "includeJobs": true,
    "maxItems": 500,
    "onlyNewItems": false
}
```

- **batches / industries / subindustries / regions / tags / statuses / stages** — directory filters (leave empty to sweep everything).
- **query** — optional free-text search.
- **startUrls** — paste a YC directory search URL (its filters are read automatically) or specific `…/companies/{slug}` profile URLs.
- **isHiring / topCompaniesOnly / nonprofit** — quick boolean filters.
- **enrichProfile** *(default true)* — open each company's profile for founders, socials, partner, year founded, media. Turn off for a fast directory-only pull.
- **includeJobs** *(default false)* — also output each company's open jobs as separate `job` records.
- **maxItems** *(default 100)* — cap the number of companies. The default keeps runs fast; set `0` for no limit (the full ~6,000) once your filters are dialed in.
- **onlyNewItems** *(monitor mode)* — emit only companies/jobs not seen in previous runs.

### Output

One record per company (`type: "company"`), plus optional `job` records. Use the **Companies / Jobs** dataset views to switch columns.

```json
{
    "type": "company",
    "id": "271",
    "name": "Airbnb",
    "slug": "airbnb",
    "ycUrl": "https://www.ycombinator.com/companies/airbnb",
    "website": "http://airbnb.com",
    "oneLiner": "Book accommodations around the world.",
    "batchName": "Winter 2009",
    "batchSeason": "Winter",
    "batchYear": 2009,
    "batchCode": "W09",
    "status": "Public",
    "stage": "Growth",
    "teamSize": 6132,
    "industry": "Consumer",
    "subindustry": "Consumer -> Travel, Leisure and Tourism",
    "tags": ["Marketplace", "Travel"],
    "regions": ["United States of America"],
    "location": "San Francisco, CA, USA",
    "topCompany": true,
    "isHiring": false,
    "yearFounded": 2008,
    "linkedinUrl": "https://www.linkedin.com/company/airbnb",
    "twitterUrl": "https://twitter.com/airbnb",
    "githubUrl": null,
    "crunchbaseUrl": "https://www.crunchbase.com/organization/airbnb",
    "ycPartner": "...",
    "founders": [
        { "name": "Brian Chesky", "title": "Founder/CEO", "linkedin": "https://www.linkedin.com/in/brianchesky/", "twitter": "https://twitter.com/bchesky" }
    ],
    "foundersCount": 3,
    "scrapedAt": "2026-06-14T12:00:00.000Z"
}
```

A **job** record (`type: "job"`) carries `companyName`, `companySlug`, `batchName`, `jobTitle`, `role`, `location`, `remote`, `minSalary`/`maxSalary`, `minEquity`/`maxEquity`, `experience` and `applyUrl`.

#### What to expect (field coverage)

YC data is founder-entered, so some fields appear only when the company filled them in. Across the directory you can typically expect: company core fields (name, batch, status, team size, industry, website) ~100%; one-liner ~99%; founders ~95% (with `enrichProfile`); founder LinkedIn ~80% and Twitter/X ~45% (where founders listed them); company socials and jobs when published. A blank field means it wasn't published — not that scraping failed.

### How much does it cost to scrape Y Combinator?

This Actor uses Apify's **pay-per-event** pricing: you are charged only for the results it delivers, with no monthly rental and no start fee. The events it can charge are:

- **Company Scraped** - One YC company: full profile (batch, status, stage, team size, industry, location, tags, website, description) + founders with LinkedIn/Twitter + company social links.
- **Job Scraped** - One open YC job: title, role, location, salary & equity ranges, experience, apply URL.

The current price of each event is shown on the **Pricing** tab of this page. Set a maximum total charge on the run if you want a hard cap on spend, and use the input limits to control how much the Actor fetches.

### Automate & schedule

- **[Apify API](https://docs.apify.com/api/v2)** — start runs, fetch datasets, manage schedules over REST.
- **[apify-client for JavaScript](https://docs.apify.com/api/client/js/)** & **[Python](https://docs.apify.com/api/client/python/)** — official SDKs.
- **[Schedules](https://docs.apify.com/platform/schedules)** — run it daily/weekly with **monitor mode** to get every new YC company, batch, and job automatically — perfect for sourcing and sales alerts.
- **[Webhooks](https://docs.apify.com/platform/integrations/webhooks)** — push new companies/leads to your CRM, Slack, or sheet the moment a run finishes.

```js
import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: 'MY_APIFY_TOKEN' });

const run = await client.actor('scrapesage/ycombinator-scraper').call({
    batches: ['Summer 2024'],
    isHiring: true,
    enrichProfile: true,
    includeJobs: true,
});

const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Got ${items.length} YC companies & jobs`);
```

### Integrate with any app

Connect the dataset to 5,000+ apps — no code required:

- **[Make](https://docs.apify.com/platform/integrations/make)** — multi-step automation scenarios.
- **[Zapier](https://docs.apify.com/platform/integrations/zapier)** — push new YC leads straight into your CRM.
- **[Slack](https://docs.apify.com/platform/integrations/slack)** — get alerted when a new batch or company appears.
- **[Google Drive / Sheets](https://docs.apify.com/platform/integrations/drive)** — auto-export every run to a spreadsheet.
- **[Airbyte](https://docs.apify.com/platform/integrations/airbyte)** — pipe results into your data warehouse.
- **[GitHub](https://docs.apify.com/platform/integrations/github)** — trigger runs from commits or releases.

### Use with AI assistants (MCP)

The output is clean, LLM-ready JSON. Call this actor from Claude, ChatGPT, or any agent framework through the **[Apify MCP server](https://docs.apify.com/platform/integrations/mcp)** — ask your assistant to "list the Summer 2024 YC fintech companies that are hiring, with founder LinkedIns" and let it run the scraper.

### Agent-ready: autonomous payments (x402 & Skyfire)

This actor is **agent-ready** — AI agents can discover it, run it, and **pay for it autonomously**, with no Apify account and no human in the loop. It uses [pay-per-event](https://docs.apify.com/platform/actors/publishing/monetize/pay-per-event) pricing and [limited permissions](https://docs.apify.com/platform/actors/development/permissions), so it qualifies for Apify's agentic-payment standards:

- **[x402](https://docs.apify.com/platform/integrations/x402)** — an open, HTTP-native payment protocol. Agents pay per run in USDC on the Base network directly through the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp) — no account, no API key.
- **[Skyfire](https://docs.apify.com/platform/integrations/skyfire)** — agent-to-service payments for fully autonomous AI-agent workflows.

Building an AI agent, MCP tool, or autonomous data pipeline? This scraper is ready to plug in and pay as it goes.

### More scrapers from scrapesage

Build a complete **startup & B2B intelligence / lead-gen stack**:

- **[Product Hunt Scraper](https://apify.com/scrapesage/product-hunt-scraper)** — launches, makers & leads (the perfect companion to YC).
- **[Multi-ATS Job Scraper](https://apify.com/scrapesage/multi-ats-job-scraper)** — jobs from Greenhouse, Lever, Ashby & Workday (the ATSs YC startups use).
- **[LinkedIn Jobs Scraper](https://apify.com/scrapesage/linkedin-jobs-scraper)** — filter-based job postings, no login.
- **[LinkedIn Ad Library Scraper](https://apify.com/scrapesage/linkedin-ad-library-scraper)** — competitor B2B ads & creatives.
- **[Google Ads Transparency Scraper](https://apify.com/scrapesage/google-ads-transparency-scraper)** — who's advertising what on Google.
- **[Facebook Ad Library Scraper](https://apify.com/scrapesage/facebook-ad-library-scraper)** — competitor ad intelligence on Meta & Instagram.
- **[Yellow Pages Scraper](https://apify.com/scrapesage/yellow-pages-scraper)** — local business leads with emails.
- **[Singapore Company Scraper](https://apify.com/scrapesage/singapore-company-scraper)** — UEN, registry & business leads.

### Tips

- **Full directory**: leave filters empty and `maxItems: 0` — the actor sweeps batch-by-batch to pull all ~6,000 companies past Algolia's 1,000-result cap.
- **Founders & contacts**: keep `enrichProfile` on — it's the difference between a company name and a contactable founder lead.
- **Incremental sourcing**: turn on `onlyNewItems` + an Apify [Schedule](https://docs.apify.com/platform/schedules) to capture each new YC company/batch/job as it lands.
- **Paste-a-URL**: copy any filtered URL from the YC companies page and drop it into `startUrls` — the filters carry over.

### FAQ

**How do I scrape a specific batch or industry?** Use the `batches` / `industries` filters (full names as shown on YC, e.g. `Summer 2024`, `Fintech`), or paste a filtered YC directory URL into `startUrls`.

**Does it need a login or API key?** No. It reads YC's public Algolia directory and public profile pages — no key or login.

**Can I get all ~6,000 companies?** Yes. The actor slices the directory by batch so it retrieves the entire index, not just the first 1,000 results.

**Where do founder LinkedIn/Twitter links come from?** From each company's public YC profile, where founders list them. Coverage is high for LinkedIn, lower for Twitter/X — when a founder didn't list one, the field is simply absent.

**How do I get alerted to new YC companies or jobs?** Turn on `onlyNewItems` and create an Apify [Schedule](https://docs.apify.com/platform/schedules); each run emits only what's new. Add a [webhook](https://docs.apify.com/platform/integrations/webhooks) or [Zapier zap](https://docs.apify.com/platform/integrations/zapier) to push them onward.

**Can I export to Google Sheets, CSV, or Excel?** Yes — one click in the dataset view, or automatically via the [Google Drive integration](https://docs.apify.com/platform/integrations/drive).

**Is scraping Y Combinator legal?** This actor collects publicly available data only. You are responsible for using the data in compliance with applicable laws (e.g. GDPR/CCPA for personal data) and YC's terms.

### Data & lawful use

This Actor reads business and professional listings that the professionals themselves published to be found: names, roles, firms, ratings and the contact details shown on the public listing. Because those details belong to identifiable people, treat the output as personal data. If you are in the EU or UK you are the data controller for what you do with it: have a lawful basis (usually legitimate interest for B2B prospecting or market research), keep any outreach relevant to the professional's line of work, honour opt-outs and deletion requests, and do not use the output for spam.

Under [Apify's Standard Actor Contract](https://docs.apify.com/legal/standard-actor-contract), which governs your use of this Actor, you are the controller of any personal data in your input and output and scrapesage acts only as your processor: that data is processed solely to run your job, written only to your own Apify storage, never used for any other purpose and never shared onward. If you need help with a data-subject request that involves this Actor's output, open an issue on the Issues tab.

### Disclaimer

**This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Y Combinator or any of its subsidiaries. All trademarks mentioned are the property of their respective owners.**

"Y Combinator" and any related marks are the property of their respective owners and are used here only in a descriptive, nominative sense - to identify the publicly accessible website from which this Actor collects data. This Actor is not an official Y Combinator product, is not authorised or certified by Y Combinator, and does not distribute Y Combinator software. It collects only publicly available information; you are responsible for ensuring your use of that data complies with applicable laws, regulations and the terms of the source website.

### Need help?

Open an issue on the actor's **Issues** tab, or visit the [Apify help center](https://help.apify.com/). Feature requests are welcome — this actor is actively maintained.

# Actor input Schema

## `startUrls` (type: `array`):

Optional. Paste a YC directory search URL (filters are read straight from it), e.g. <code>https://www.ycombinator.com/companies?batch=Summer%202024\&industry=Fintech</code>, or specific company profile URLs like <code>https://www.ycombinator.com/companies/airbnb</code>. Leave empty to use the filters below.

## `query` (type: `string`):

Optional free-text search across the YC directory (company name, description, tags).

## `batches` (type: `array`):

Filter by YC batch, full names as shown on YC, e.g. <code>Summer 2024</code>, <code>Winter 2025</code>, <code>Spring 2025</code>. Leave empty to sweep all batches.

## `industries` (type: `array`):

Filter by top-level industry, e.g. <code>B2B</code>, <code>Fintech</code>, <code>Consumer</code>, <code>Healthcare</code>, <code>Real Estate and Construction</code>, <code>Education</code>, <code>Government</code>, <code>Industrials</code>.

## `subindustries` (type: `array`):

Filter by sub-industry, e.g. <code>Fintech -> Banking and Exchange</code>, <code>B2B -> Engineering, Product and Design</code>.

## `regions` (type: `array`):

Filter by region, e.g. <code>United States of America</code>, <code>Europe</code>, <code>India</code>, <code>Latin America</code>, <code>Remote</code>.

## `tags` (type: `array`):

Filter by company tag, e.g. <code>Artificial Intelligence</code>, <code>SaaS</code>, <code>Developer Tools</code>, <code>Marketplace</code>, <code>Machine Learning</code>.

## `statuses` (type: `array`):

Filter by company status.

## `stages` (type: `array`):

Filter by growth stage, e.g. <code>Early</code>, <code>Growth</code>.

## `isHiring` (type: `boolean`):

Only include companies with open roles.

## `topCompaniesOnly` (type: `boolean`):

Only include companies on YC's Top Companies list.

## `nonprofit` (type: `boolean`):

Only include YC nonprofit organizations.

## `enrichProfile` (type: `boolean`):

Open each company's YC profile to also capture founders (name, title, bio, LinkedIn, Twitter/X), company social links (LinkedIn, X, Facebook, GitHub, Crunchbase), YC group partner, year founded, city/country and media. Adds one fast request per company. Turn off for a quick directory-only pull.

## `includeJobs` (type: `boolean`):

Also output each company's open job postings (title, role, location, salary & equity ranges, apply URL) as separate `job` records.

## `maxItems` (type: `integer`):

Maximum number of companies to scrape. Defaults to 100 to keep runs fast and avoid timeouts; raise it (or set 0 for no limit — the full directory is ~6,000) once you've confirmed the filters you want.

## `onlyNewItems` (type: `boolean`):

Remember companies (and jobs) seen in previous runs in a named key-value store and emit only new ones. Pair with an Apify Schedule to get alerted to each new YC company, batch or job — the Schedule decides WHEN to run, monitor mode decides WHICH items are new. They do not conflict.

## `monitorStoreName` (type: `string`):

Optional name of the key-value store used by monitor mode. Defaults to <code>ycombinator-monitor-state</code>.

## `maxConcurrency` (type: `integer`):

Maximum profile pages fetched in parallel.

## `proxyConfiguration` (type: `object`):

Proxy settings. YC and its Algolia directory are lightly protected, so the default Apify proxy is plenty.

## `debugDump` (type: `boolean`):

Developer aid — saves the first profile page's raw HTML to the key-value store. Leave off for normal runs.

## `urlsFromFile` (type: `string`):

Paste a list of URLs (one per line), OR one link to a .txt/.csv file, Google Sheet or Google Drive file containing them. Lets you import many Start URLs at once instead of typing each. Google Sheet/Drive share links are handled automatically.

## Actor input object example

```json
{
  "isHiring": false,
  "topCompaniesOnly": false,
  "nonprofit": false,
  "enrichProfile": true,
  "includeJobs": false,
  "maxItems": 100,
  "onlyNewItems": false,
  "maxConcurrency": 10,
  "proxyConfiguration": {
    "useApifyProxy": true
  },
  "debugDump": false
}
```

# Actor output Schema

## `results` (type: `string`):

All scraped records in the default dataset.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "maxItems": 100,
    "urlsFromFile": ""
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapesage/ycombinator-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "maxItems": 100,
    "urlsFromFile": "",
}

# Run the Actor and wait for it to finish
run = client.actor("scrapesage/ycombinator-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "maxItems": 100,
  "urlsFromFile": ""
}' |
apify call scrapesage/ycombinator-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,scrapesage/ycombinator-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/qwYscBGaNu9j6cQ9c/builds/MIIHcRvOiunG6pYmW/openapi.json
