# Crunchbase — 100K+ Instant Company DB, Funding Monitor ($8/1k) (`memo23/crunchbase-scraper`) Actor

Crunchbase two ways: live scrape (one clean row per company — funding, people, M\&A, tech stack, predictions, Cloudflare handled) or the ⚡ Instant Database — 100K+ profiles served in seconds with country/size/status filters. Funding Monitor returns only NEW rounds per scheduled run. $8/1k.

- **URL**: https://apify.com/memo23/crunchbase-scraper.md
- **Developed by:** [Muhamed Didovic](https://apify.com/memo23) (community)
- **Categories:** Lead generation, Automation, Agents
- **Stats:** 138 total users, 58 monthly users, 100.0% runs succeeded, 3 bookmarks
- **User rating**: 5.00 out of 5 stars

## Pricing

from $8.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.
Actors are written with capital "A".

## 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.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Crunchbase Scraper — Startup Investors Database, Companies + Funding Rounds

### How It Works

![How It Works](https://raw.githubusercontent.com/muhamed-didovic/muhamed-didovic.github.io/main/assets/how-it-works-crunchbase.png)

Turn any Crunchbase company URL or slug into one clean, structured row — no raw blob to untangle.
Paste a company link, a bare slug, or an `organization/...` path and get a ready-to-use profile: identity, funding, people, M\&A, tech stack, web traffic, IT spend, and Crunchbase's own growth/funding/acquisition/IPO predictions.
Or paste a Crunchbase **Discover / saved-search URL** (e.g. `crunchbase.com/discover/funding_rounds/…`) and get one funding-round signal row per result — company, round type, and Crunchbase links — with each company enriched from its org page. **Crunchbase caps Discover at the first 15 results per search** (its own paywall, not a scraper limit — [details](#supported-inputs)), so pull big lists by pasting several narrower searches rather than one broad one.
JSON or CSV out. No unblocker token to manage — Cloudflare is handled for you.

### 💼 NEW: Startup Investors Database — 19,000+ VC firms, accelerators & angels

Flip on **`investorDatabase`** (or set any investor filter) and the actor returns **investor firm rows** instead of companies: **19,000+ venture capital firms, accelerators, angel investors, family offices and grant programs**, each derived from live Crunchbase funding-round participation — not a stale directory dump:

- **Who they are** — firm name, Crunchbase URL, inferred type (VC / Seed & Early-Stage VC / Accelerator / Angel / Grant Program / Debt), and where available HQ city + country, website, **contact email**, phone, description, Crunchbase rank
- **How they invest** — observed **deal count**, full **stage distribution** (Pre-Seed → Series D+, Grants, Debt), top stage, **focus areas** (industries of their actual portfolio), portfolio **countries**
- **What they've backed** — the **portfolio companies** themselves, with Crunchbase permalinks, ready to cross-reference against the 100K+ company database below
- **Filter** by name/keyword, firm type, investment stage, focus area (e.g. `Artificial Intelligence (AI)`, `Biotechnology`), country, and minimum deal count

Perfect for **fundraising target lists** ("US seed-stage VCs active in AI"), **B2B sales to investment firms**, and **VC market research**. Contacts are **included in the row price — no per-contact surcharge**, and every run logs a **cost preview before a single row is billed**, so you always know the bill up front. A full 19K-firm export costs ~**$155**; a targeted 1,000-firm list ~**$8**.

### ⚡ NEW: Instant Company Database — 100,000+ companies, zero scraping

Flip on **`instantDatabase`** (or just set any DB filter) and the actor answers from its continuously-growing database of **100K+ Crunchbase company profiles** — instantly, no crawling, no waiting:

> *`dbQuery: "ai"` →* **16,446 matching companies** · served in seconds · full clean profile per row (funding, people, tech stack, predictions) · filter by **country, employee range, operating status**, ranked by Crunchbase rank.

Every row carries `source: 'instant-db'` plus the date it was last refreshed. Perfect for lead lists, market sizing and enrichment backfills where "right now" beats "freshly crawled".

### 📡 NEW: Funding Monitor — only what's new since your last run

Turn on **`fundingMonitor`** and schedule the actor: the first run builds a baseline, and every following run with the same input returns **only new funding rounds / companies** — no duplicates, no re-paying for rows you already have (skipped rows are never charged). Point it at a Discover funding-rounds search on a schedule and you have a just-funded-companies alert feed: freshly funded = hiring, buying tools, warm B2B lead.

### Why Use This Scraper?

- ✅ Clean structured output — 34 grouped fields, ready for a spreadsheet or a model, not a 1,500-line raw dump
- ✅ Two modes in one actor — company-page enrichment **and** Discover/saved-search funding-round signals
- ✅ One row per company — paste a URL, a slug, or a path and get a single tidy profile back
- ✅ Surfaces the buried gold — Aberdeen IT spend, SEMrush traffic, BuiltWith + Siftery tech stack, Crunchbase ML predictions
- ✅ Cloudflare handled for you — built-in managed unblocker, nothing to configure
- ✅ Optional raw passthrough — flip one switch to also get the full unprocessed Crunchbase cards
- ✅ Flat JSON / CSV export for analysis, CRM enrichment, or lead scoring

### Overview

The Crunchbase Company Scraper is built for sales and revenue teams, investors and analysts, market researchers, and data engineers who need structured company intelligence from Crunchbase without paying for an enterprise API seat.

The actor runs in **two modes**. **Company mode** is the core: each company input — a full URL, a bare slug, or an `organization/...` path — resolves to exactly one **company-shaped row** (investor names, executives, acquisition targets, and funding-round counts all appear *nested inside* it). **Discover mode** is optional: paste a Crunchbase Discover / saved-search URL and the actor returns one **funding-round signal row** per result (company + round type + Crunchbase links), with each company enriched from its org page. It is not a people- or investor-search crawler.

Most Crunchbase actors on the Store dump the raw `cards` object Crunchbase ships to its own front-end: roughly 236 KB and 1,500 lines per company, full of 540-element history arrays, ten-times-duplicated competitor trees, and internal query stubs. This actor returns a clean ~24 KB structured row instead — about 10× smaller — with the noise dropped and the useful signals lifted to the top level. If you still want everything, `rawMode` adds the full cards back as a passthrough field.

### Supported Inputs

#### Input types

| Input type | Pattern | Example |
|---|---|---|
| Full company URL | `https://www.crunchbase.com/organization/{slug}` | `https://www.crunchbase.com/organization/openai` |
| Bare slug | `{slug}` | `stripe` |
| Organization path | `organization/{slug}` | `organization/anthropic` |

#### Copy-pasteable startUrls

```json
{
  "startUrls": [
    "https://www.crunchbase.com/organization/openai",
    "stripe",
    "organization/anthropic"
  ]
}
```

#### Discover / saved-search URLs (funding-round signals)

Paste a Crunchbase **Discover** URL — `https://www.crunchbase.com/discover/<collection>/<hash>` (e.g. a saved *Funding Rounds* search) — and the actor switches to **signal mode** for that input: one row per result with the funding round, round type, funded company, and Crunchbase links, each company enriched from its org page.

```json
{
  "startUrls": [
    "https://www.crunchbase.com/discover/funding_rounds/a0620e0d48eb17727ffdd27d9afa1807"
  ]
}
```

> **Anonymous cap:** Crunchbase returns the first **15 results per search** to anonymous callers and gates the funding **amount**, **announced date**, **investors**, and pagination beyond 15 behind a paid login. So signal rows carry company + round type + links; the `$` amount/date come through only in optional [logged-in mode](#input-configuration) with a Crunchbase **Pro** session. Need a tighter list? Narrow the saved search itself.

#### Unsupported inputs

- ❌ Person profiles — `crunchbase.com/person/{slug}`
- ❌ Individual funding-round, acquisition, investor, hub, or event **entity** pages — `crunchbase.com/funding_round/...`, `/acquisition/...` (the **Discover** saved-search URL above *is* supported)
- ❌ Ad-hoc search pages with no saved-search hash — save the search first to get a `/discover/<collection>/<hash>` URL
- ❌ Any host outside `crunchbase.com`

### Use Cases

| Audience | Use case |
|---|---|
| **Sales / RevOps teams** | Enrich CRM accounts with funding stage, headcount band, tech stack, and IT spend for lead scoring |
| **Investors / analysts** | Pull funding history, investor lists, and Crunchbase growth/IPO predictions for deal sourcing |
| **Market researchers** | Bulk-export competitor sets with categories, rank, and web-traffic signals |
| **Data / growth engineers** | Feed clean company rows into a warehouse or model without writing a Crunchbase parser |
| **Agencies** | Deliver client-ready company datasets without an enterprise Crunchbase license |

1. **Input** — provide Crunchbase company URLs, slugs, `organization/...` paths, or a Discover/saved-search URL
2. **Unblock** — each page is fetched through a built-in managed unblocker that clears Crunchbase's Cloudflare protection
3. **Extract** — the actor reads Crunchbase's own hydration state (the data its front-end renders from) for complete, accurate fields
4. **Structure** — raw cards are parsed into one clean, grouped row; history bloat and duplicated trees are dropped
5. **Output** — export as structured JSON or flattened CSV, with optional `rawMode` for the full unprocessed cards

### Input Configuration

#### Input fields

| Field | Type | Required | Notes |
|---|---|---|---|
| `startUrls` | `array<string>` | yes | Crunchbase company URLs, slugs, `organization/...` paths, **or Discover/saved-search URLs** (`/discover/<collection>/<hash>`) |
| `rawMode` | `boolean` | optional | When `true`, also include the full raw Crunchbase cards as `_rawCards`. Default `false` |
| `maxItems` | `integer` | optional | Hard cap on company rows emitted. Default `1000` |
| `maxConcurrency` | `integer` | optional | Parallel unblocker requests. Default `3` (keep low — the premium pool is metered per success) |
| `maxRequestRetries` | `integer` | optional | Retries on transient unblocker errors before giving up on a company. Default `2` |
| `sdoKey` | `string` (secret) | optional | Leave blank — the actor uses its built-in unblocker by default. Advanced: paste your own scrape.do token to bill unblocker requests to your own account |
| `crunchbaseCookie` | `string` (secret) | optional | **Logged-in mode.** Paste your own Crunchbase `Cookie` header to unlock the gated funding **amount / date / investors** on Discover results and lift the 15-result cap. Requires a Crunchbase **Pro** account; the session expires every few minutes, so it's for **manual one-off runs**, not scheduled jobs. Leave blank for anonymous signal mode — a free or stale cookie safely falls back to anonymous instead of erroring |
| `proxy` | `object` | optional | Reserved for a future direct-fetch path; not required for normal runs |

#### Common scenarios

**1. A few companies, clean output**

```json
{
  "startUrls": ["openai", "stripe", "anthropic"]
}
```

**2. Clean row plus the full raw cards**

```json
{
  "startUrls": ["https://www.crunchbase.com/organization/databricks"],
  "rawMode": true
}
```

**3. A larger batch with a cap**

```json
{
  "startUrls": ["openai", "stripe", "anthropic", "databricks", "figma"],
  "maxItems": 5,
  "maxConcurrency": 3
}
```

**4. A Discover / saved-search URL (funding-round signals)**

```json
{
  "startUrls": ["https://www.crunchbase.com/discover/funding_rounds/a0620e0d48eb17727ffdd27d9afa1807"],
  "maxItems": 15
}
```

### Output Overview

Each dataset item is a single company row containing:

- **Identity** — name, permalink, UUID, description, type, operating status, IPO status, global rank, aliases
- **Location** — city, region, country, continent, offices
- **Web & contact** — website, LinkedIn / Facebook / Twitter, contact email, phone, contact count
- **Categories** — category tags and per-category rank
- **Funding** — total (when public), round count, investor count, rounds, investor list
- **People** — employee band, current executives, advisors/board, alumni
- **M\&A** — acquisitions, acquired-by, exits, IPO fields
- **Tech stack** — technology count, BuiltWith stack, Siftery products
- **Signals** — heat score, SEMrush traffic, Aberdeen IT spend, mobile apps
- **Predictions** — Crunchbase ML scores for growth, funding, acquisition, IPO
- **Products / Similar / Press** — products, similar companies with similarity score, recent press timeline

Some fields are `null` when Crunchbase no longer ships them on the default page load (see FAQ). Set `rawMode: true` to additionally receive the full unprocessed cards as `_rawCards`.

### Output Samples

#### Bare slug start (`"openai"`) — trimmed

```jsonc
{
  "name": "OpenAI",
  "permalink": "openai",
  "uuid": "cf2c678c-b81a-80c3-10d1-9c5e76448e51",
  "url": "https://www.crunchbase.com/organization/openai",
  "description": "OpenAI is an AI research and deployment company that develops advanced AI models, including ChatGPT.",
  "operatingStatus": "active",
  "companyType": "for_profit",
  "ipoStatus": "private",
  "rank": 4,
  "aliases": ["OpenAI LP", "OpenAI Group PBC"],
  "city": "San Francisco",
  "region": "California",
  "country": "United States",
  "website": "https://www.openai.com/",
  "socials": {
    "linkedin": "https://www.linkedin.com/company/openai",
    "twitter": "https://x.com/OpenAI"
  },
  "contactEmail": "support@openai.com",
  "numContacts": 1384,
  "categories": [
    { "name": "Agentic AI", "permalink": "agentic-ai-17fa" },
    { "name": "Artificial Intelligence (AI)", "permalink": "artificial-intelligence" }
  ],
  "funding": {
    "totalUsd": null,
    "numFundingRounds": 14,
    "numInvestors": 95,
    "investors": [ { "name": "Blackstone Group investment in Venture Round - OpenAI", "permalink": "blackstone-invested-in-openai-..." } ]
  },
  "people": {
    "employeeRange": "1001-5000",
    "current": [
      { "name": "Sam Altman Co-Founder and CEO @ OpenAI", "permalink": "sam-altman-executive-openai--cdec28a8" },
      { "name": "Greg Brockman President, Chairman, & Co-Founder @ OpenAI", "permalink": "greg-brockman-executive-openai--d0858d5a" }
    ]
  },
  "techStack": {
    "numTechnologies": 94,
    "builtwith": [ { "name": "Cloudflare CDN", "category": "cdn" } ],
    "siftery": [ { "name": "HTML5", "status": "using" } ]
  },
  "signals": {
    "heatScore": 92,
    "heatScoreDelta90": -2,
    "semrush": { "globalRank": null, "monthlyVisits": 487467460 },
    "aberdeenItSpendUsd": 285484278,
    "apps": { "total": 4 }
  },
  "predictions": {
    "growth": { "score": 0.7599, "tier": "p200_positive_low", "generatedOn": "2026-05-30" },
    "funding": { "score": 0.6439, "generatedOn": "2026-05-09" },
    "acquisition": { "score": 0.0368, "tier": "p500_negative_high" },
    "ipo": { "score": 0.9337, "tier": "p200_positive_low" }
  },
  "products": [
    { "name": "ChatGPT", "description": "An AI conversational agent…" }
  ],
  "similar": [
    { "name": "Anthropic", "permalink": "anthropic", "score": 100 },
    { "name": "Google", "permalink": "google", "score": 99.64 }
  ],
  "pressTimeline": [
    { "title": "ChatGPT tests a new jobs interface", "publisher": "AIM Group", "date": "2026-06-02", "url": "https://aimgroup.com/2026/06/02/chatgpt-tests-a-new-jobs-interface/" }
  ],
  "scrapedAt": "2026-06-02T16:32:32.297Z"
}
```

#### Discover search start (`".../discover/funding_rounds/..."`) — one signal row per result, trimmed

```jsonc
{
  "searchCollection": "funding_rounds",
  "name": "Series D - Factorial",
  "investmentType": "series_d",
  "moneyRaisedUsd": null,        // gated for anonymous runs; unlocked in logged-in Pro mode
  "announcedOn": null,           // gated for anonymous runs
  "companyName": "Factorial",
  "companyPermalink": "factorial",
  "companyUrl": "https://www.crunchbase.com/organization/factorial",
  "gatedFields": ["announced_on", "money_raised"],
  "company": {                   // each result enriched from its org page (same shape as above)
    "name": "Factorial",
    "country": "Spain",
    "rank": 64,
    "funding": { "numFundingRounds": 8 }
  }
}
```

### Key Output Fields

#### Identity

- `name`, `permalink`, `uuid`, `url`, `description`
- `operatingStatus`, `companyType`, `ipoStatus`, `rank`, `aliases[]`

#### Location & contact

- `city`, `region`, `country`, `continent`, `offices[]`
- `website`, `socials.linkedin`, `socials.facebook`, `socials.twitter`, `contactEmail`, `phone`

#### Categories & funding

- `categories[].name`, `categoryRanks[].rank`
- `funding.totalUsd`, `funding.numFundingRounds`, `funding.numInvestors`, `funding.investors[]`, `funding.rounds[]`

#### People & M\&A

- `people.employeeRange`, `people.current[]`, `people.advisors[]`, `people.alumni[]`, `numContacts`
- `ma.acquisitions[]`, `ma.acquiredBy`, `ma.exits[]`, `ma.ipo`

#### Tech stack & signals

- `techStack.numTechnologies`, `techStack.builtwith[]`, `techStack.siftery[]`
- `signals.heatScore`, `signals.semrush.monthlyVisits`, `signals.aberdeenItSpendUsd`, `signals.apps`

#### Predictions, products & press

- `predictions.growth`, `predictions.funding`, `predictions.acquisition`, `predictions.ipo` (each `{ score, tier, generatedOn }`)
- `products[]`, `similar[].score`, `pressTimeline[]`

### FAQ

#### Which Crunchbase URLs are supported?

Two kinds. **Company (organization) pages** — a full URL (`https://www.crunchbase.com/organization/openai`), a bare slug (`openai`), or a path (`organization/openai`) → one company row each. And **Discover / saved-search URLs** (`https://www.crunchbase.com/discover/<collection>/<hash>`) → one funding-round signal row per result. Individual person, funding-round, acquisition, investor, hub, and event **entity** pages are **not** supported as inputs.

#### What do Discover / saved-search URLs return?

One row per search result: the funding round, round type (`investmentType`), funded company, Crunchbase links, and a `gatedFields` marker — with the company enriched from its org page under `company`. Anonymous runs return the first 15 results and leave the `$` amount, announced date, and investors `null` (Crunchbase gates those behind a paid Pro login). To unlock them, supply a Pro session via `crunchbaseCookie` — see below.

#### Do I get company rows or people / investor rows?

Company inputs give **company rows** — one per input. Discover / saved-search inputs give **funding-round signal rows** — up to 15 per search — each with the company enriched under `company`. In those two modes, people, investors, and acquisition targets appear as **nested fields** (e.g. `people.current[]`, `funding.investors[]`, `ma.acquisitions[]`). To get **investor firms as their own rows** — one per VC / accelerator / angel / grant program, with deal counts, stages, focus areas, portfolio and contacts — turn on **`investorDatabase`** (see the Startup Investors Database section above).

#### How is the Startup Investors Database priced vs. dedicated "investor database" actors?

Every investor firm row is a normal result row at **$8/1k ($0.008 per firm), contacts included**. Dedicated investor-database actors on the Store commonly charge **$0.04 per firm plus $0.02 per contact** — 5–7× more for a comparable row. The run log prints a **cost preview** (`💰 Cost preview: this run will bill ≈ $…`) before rows stream out, so there are no billing surprises.

#### Do I need a proxy or an unblocker token?

No. Crunchbase is Cloudflare-protected, but the actor ships with a built-in managed unblocker, so a normal run needs nothing extra. The optional `sdoKey` field only exists for advanced users who want to bill unblocker requests to their own scrape.do account.

#### Why are `funding.totalUsd` and `signals.semrush.globalRank` sometimes null?

Crunchbase moved a few fields (notably total funding amount and the SEMrush global rank) behind a secondary request that no longer ships on the default page load. Rather than double the per-company cost, the actor returns these as `null` and populates everything else — round counts, investor counts, SEMrush monthly visits, IT spend, predictions, and the full tech stack all still come through.

#### What does `rawMode` do?

When `true`, each row keeps all the clean structured fields **and** adds `_rawCards` — the full, unprocessed Crunchbase cards object. Use it when you need a field the structured output doesn't surface. It makes rows roughly 10× larger, so leave it off unless you need it.

#### What's gated, and can logged-in mode unlock it?

By default the actor reads only **public** Crunchbase data, so Discover funding **amounts / dates / investors** and a few company fields (e.g. `funding.totalUsd`) come back `null`, and each search returns its first 15 results. Those are gated by Crunchbase behind a paid **Pro** login — a Crunchbase limit, not a scraper one. The optional `crunchbaseCookie` field lets you supply **your own** logged-in Crunchbase Pro session to unlock them. Caveat: the session token expires every few minutes, so it suits **manual one-off runs**, not scheduled jobs — and a free-tier or stale cookie simply falls back to the public signal output instead of erroring. Leave it blank for normal public runs.

#### How is it priced and how fast is it?

Each company is one dataset item and one unblocker request, billed per result (see the Apify Store pricing on this actor's page). In testing, batches run at a few companies per second with default concurrency.

### Support

- For issues or feature requests, use the [Issues](https://apify.com/memo23/crunchbase-scraper/issues) tab of this actor.
- For customization or questions, contact the author:
  - Website: <https://muhamed-didovic.github.io/>
  - Email: <muhamed.didovic@gmail.com>
  - All my Apify actors: <https://apify.com/memo23>

### Additional Services

- Need a custom export shape, additional Crunchbase fields, or scheduled monitoring? Email <muhamed.didovic@gmail.com>.
- For a direct API of this scraper (no Apify fee, usage-based), contact the same address.

### Explore More Scrapers

If you found this useful, you might also like:

- [**Pinterest Scraper**](https://apify.com/memo23/pinterest-scraper) — structured pin, board, and profile data
- [**More company & web-data actors**](https://apify.com/memo23) — directory, jobs, reviews, and social scrapers

Full list at [apify.com/memo23](https://apify.com/memo23).

***

### 🤖 For AI Agents & LLM Apps

Compact reference for AI agents calling this actor via the [Apify MCP server](https://mcp.apify.com) or the Apify API (actor: `memo23/crunchbase-scraper`).

**Purpose:** Resolve Crunchbase company inputs (URL, bare slug, or `organization/…` path) to one structured company row each — funding, people, tech stack, signals and predictions nested inside; its differentiator is offline modes (19K-firm Startup Investors DB, 100K-company Instant DB) and a Discover-URL funding-signal mode.

**Minimal input:**

```json
{ "startUrls": ["openai", "stripe"], "maxItems": 50 }
```

Instant Database mode (one line, no scraping): `{ "instantDatabase": true, "dbQuery": "fintech", "maxItems": 50 }`; Investors DB mode: `{ "investorDatabase": true, "maxItems": 50 }`.

**Output:** one row per company — `name`, `permalink`, `uuid`, `url`, `description`, `operatingStatus`, `companyType`, `ipoStatus`, `rank`, `aliases`, `city`, `region`, `country`, `website`, `socials {linkedin, twitter, facebook}`, `contactEmail`, `numContacts`, `categories[] {name, permalink}`, `funding {totalUsd, numFundingRounds, numInvestors, investors[]}`, `people {employeeRange, current[]}`, `techStack {numTechnologies, builtwith[], siftery[]}`, `signals {heatScore, semrush.monthlyVisits, aberdeenItSpendUsd}`, `predictions {growth, funding, acquisition, ipo}`, `products[]`, `similar[]`, `pressTimeline[]`, `scrapedAt`. Discover-URL rows instead carry `searchCollection`, `name`, `investmentType`, `moneyRaisedUsd`, `announcedOn`, `companyName`, `companyPermalink`, `companyUrl`, `gatedFields[]`, nested `company`.

**Behaviors an agent should know:**

- `startUrls` drives company/Discover scraping; leave it empty to use `investorDatabase` or `instantDatabase` mode (each auto-enables when you set any of its filters). Always set `maxItems` (default 1000).
- Discover / saved-search URLs return funding-round signal rows, but anonymous runs are capped at the first 15 results and `moneyRaisedUsd` / `announcedOn` / investors are gated — supply `crunchbaseCookie` to unlock full pagination and those fields.
- `fundingMonitor: true` returns only items new since the previous run with the same input (state in this actor's key-value store); already-seen items are skipped and not billed.
- `maxCacheAgeDays` (default 14) serves a company from the database if scraped within N days; set 0 to always fetch fresh.
- Billing: per result; investor/company contact fields are included in the row price (no surcharge). `enrichEmails: true` is opt-in and billed only per email actually found.

***

### ⚠️ Disclaimer

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

Crunchbase gates certain fields and result pagination behind a login. This actor reads those through a maintained Crunchbase session. You can supply your own session instead via `crunchbaseCookie`, in which case your own Crunchbase account terms apply to that run. Users are responsible for ensuring their use complies with Crunchbase's Terms of Service, applicable data-protection law (GDPR, CCPA, etc.), and any contractual obligations of their own organization.

***

### SEO Keywords

crunchbase scraper, scrape crunchbase, crunchbase company scraper, crunchbase API, crunchbase.com scraper, Apify crunchbase, company data scraper, company funding scraper, startup data scraper, tech stack scraper, firmographic data, company enrichment data, lead enrichment scraper, investor data scraper, market research data, competitive intelligence scraper, sales prospecting data, company profile API, business intelligence scraper, startup funding data, crunchbase funding rounds scraper, crunchbase discover scraper, funding round data, startup funding rounds, saved search scraper, startup investors database, startup investor data scraper, VC database, venture capital firms database, VC firms list, angel investors list, investor contacts database, find investors for startup, investor leads, accelerator list, seed investors database, VC deal data, investor portfolio data, fundraising target list, investor firm database

# Actor input Schema

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

Paste any combination of:

- **Full URL** — `https://www.crunchbase.com/organization/openai`
- **Slug** — `openai`, `tesla-motors`, `aisci`
- **Path** — `organization/stripe`

Each company input returns one clean structured company row. You can ALSO paste a **Discover / saved-search URL** (https://www.crunchbase.com/discover/funding\_rounds/HASH) — the actor returns one funding-round signal row per result (company, round type, Crunchbase links) with the company enriched from its org page. Anonymous cap: first 15 results per search; the $ amount, date, investors and pagination beyond 15 are gated by Crunchbase behind a paid login.

## `investorDatabase` (type: `boolean`):

Serve investor **firm** rows (one per VC / accelerator / angel / grant program) instead of company rows. Ordered by deal count (most active first), capped at **Max companies**. Auto-enabled if you set any investor filter below.

## `investorQuery` (type: `string`):

Case-insensitive match on the firm name or description — e.g. `sequoia`, `climate`, `fintech`. Optional.

## `investorType` (type: `string`):

Optional.

## `investorStage` (type: `string`):

Only firms observed participating in this round stage. Optional.

## `investorFocusArea` (type: `string`):

Industry the firm's portfolio invests in, e.g. `Artificial Intelligence (AI)`, `Biotechnology`, `FinTech`, `Health Care`, `E-Commerce`, `Energy`. Optional.

## `investorCountry` (type: `string`):

Matches the firm's HQ country **or** a country its portfolio invests into. Full English name, e.g. `United States`, `Germany`. Optional.

## `investorMinDeals` (type: `integer`):

Only firms with at least this many observed funding-round participations. Use `2+` to drop one-off investors. Optional.

## `instantDatabase` (type: `boolean`):

Serve company rows from the database instead of live-scraping — same clean output shape, plus `source: "instant-db"`. Results are ordered by Crunchbase rank (best first) and capped at **Max companies**. Auto-enabled if you set any DB filter below.

## `dbQuery` (type: `string`):

Case-insensitive match on the company name or description — e.g. `ai`, `fintech`, `logistics`. Optional.

## `dbCountry` (type: `string`):

Full country name, e.g. `United States`, `United Kingdom`, `Germany`, `India`. Optional.

## `dbEmployeeRange` (type: `string`):

Crunchbase headcount bucket. Optional.

## `dbOperatingStatus` (type: `string`):

Optional.

## `fundingMonitor` (type: `boolean`):

When ON, each run compares its results against what previous runs **with the same input** already returned and emits only the NEW items — new **funding rounds** (per round id) on Discover searches, new **companies** (per permalink) otherwise. The very first run returns everything as the baseline; rows carry `fundingMonitorStatus: "baseline"` or `"new"`. Already-seen items are skipped and **not billed**. State is kept per input in this actor's own key-value store.

## `rawMode` (type: `boolean`):

When ON, each row also includes the full raw `_rawCards` object (every Crunchbase data card, unprocessed) alongside the clean structured fields. Use this if you need a field the structured output doesn't surface. Default OFF (clean output only — ~10x smaller).

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

Max company rows to emit across the whole run.

## `crunchbaseCookie` (type: `string`):

Optional. Paste your Crunchbase `Cookie` header from a logged-in browser session (DevTools → Network → any crunchbase.com request → Request Headers → Cookie). LOGGED-IN MODE unlocks the gated funding **amount**, **announced date** and **investors** on Discover results, lifts the 15-results-per-search cap (full pagination), and unlocks company funding totals during enrichment. Leave blank for anonymous mode (signal-only). Cookies expire — refresh periodically; this is a personal session, not for public/Store runs.

## `enrichEmails` (type: `boolean`):

If enabled, finds a contact email for each result from its own website (or by discovering it from the name). Adds contactEmail + contactWebsite columns plus a detailed emailEnrichment object. Billed per contact email found; only charged when an email is returned, never for misses.

## `qualifyByPayment` (type: `boolean`):

Requires "Enrich with contact emails". Scans each business's website — reusing the pages already fetched for email discovery, so no extra cost or time — for payment processors and e-commerce platforms (Stripe, Shopify, PayPal, Paddle, Lemon Squeezy, WooCommerce, Square, Chargebee and more). Adds takesPayments (is this a real paying business?), paymentProcessors (which stack), stripeLiveKey (the public key if exposed) and paymentConfidence. Turn raw contacts into monetization-qualified leads. No extra charge — included with each enriched company.

## Actor input object example

```json
{
  "startUrls": [
    "https://www.crunchbase.com/organization/openai",
    "stripe",
    "anthropic",
    "https://www.crunchbase.com/discover/funding_rounds/a0620e0d48eb17727ffdd27d9afa1807"
  ],
  "investorDatabase": false,
  "instantDatabase": false,
  "fundingMonitor": false,
  "rawMode": false,
  "maxItems": 1000,
  "enrichEmails": false,
  "qualifyByPayment": false
}
```

# 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 = {
    "startUrls": [
        "https://www.crunchbase.com/organization/openai",
        "stripe",
        "anthropic",
        "https://www.crunchbase.com/discover/funding_rounds/a0620e0d48eb17727ffdd27d9afa1807"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("memo23/crunchbase-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 = { "startUrls": [
        "https://www.crunchbase.com/organization/openai",
        "stripe",
        "anthropic",
        "https://www.crunchbase.com/discover/funding_rounds/a0620e0d48eb17727ffdd27d9afa1807",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("memo23/crunchbase-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 '{
  "startUrls": [
    "https://www.crunchbase.com/organization/openai",
    "stripe",
    "anthropic",
    "https://www.crunchbase.com/discover/funding_rounds/a0620e0d48eb17727ffdd27d9afa1807"
  ]
}' |
apify call memo23/crunchbase-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,memo23/crunchbase-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/A2kXKBteDaITbXxSE/builds/jPZ3NpKaoPIsMO9Ed/openapi.json
