# Crunchbase Email Scraper (`solid-scraper/crunchbase-email-scraper`) Actor

🚀 Crunchbase Email Scraper extracts business emails from Crunchbase to fuel lead gen and sales outreach. 🎯 Target by industry, location & keywords—fast, accurate prospects for agencies, recruiters & growth teams.

- **URL**: https://apify.com/solid-scraper/crunchbase-email-scraper.md
- **Developed by:** [SolidScraper](https://apify.com/solid-scraper) (community)
- **Categories:** Lead generation, Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.99 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#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 Email Scraper 📬

**Crunchbase Email Scraper** is an Apify actor that scrapes emails from Crunchbase using your chosen keywords and email-domain filters—helping you quickly build a prospecting email list without manual searching. It’s a practical **Crunchbase email extractor**, a **Crunchbase email scraper tool**, and a **Crunchbase leads email scraper** for anyone who needs B2B enrichment, faster outreach prep, or data mining email leads from Crunchbase profiles. Whether you’re a marketer, sales ops specialist, recruiter, or data enthusiast, this tool helps you uncover contact emails tied to Crunchbase bios and related keyword matches—so you can scale prospecting with less effort.

***

### Why choose crunchbase Email Scraper?

| Feature | Benefit |
| --- | --- |
| ✅ **Keyword-led email discovery** | Uses your keywords to pull bios and related page text where matching emails may appear |
| ✅ **Custom email domain targeting** | Filters results using your `customDomains` (for example, `@gmail.com`) to focus on the inboxes you want |
| ✅ **Reliability-focused scraping engine** | Choose between **cost-effective** and **legacy** engines to match your speed vs. reliability needs |
| ✅ **Max email limit control** | Stops when `maxEmails` is reached to manage scraping time and cost predictability |
| ✅ **Structured, export-friendly dataset rows** | Outputs consistent JSON fields (including `email`, `keyword`, and `url`) for easy import into your workflow |
| ✅ **Resilient, retry-and-fallback behavior** | Includes built-in handling for failed/blocked pages so you get more usable results per run |

***

### Key features

- 🔍 **Accurate email extraction from publicly available sources**: Extracts emails found in the bios/page text associated with your keyword matches
- 🎛️ **Flexible input controls**: Run targeted searches with `keywords`, optional `location`, and domain filters via `customDomains`
- 🧩 **Crunchbase-focused dataset context**: Each pushed row includes `network` and keyword-related metadata to support downstream analysis
- 🛡️ **Reliability options via engine choice**: Switch between `cost-effective` and `legacy` scraping engines based on your needs
- 🔄 **Resilience for blocked/low-result pages**: Built with retries and fallbacks to keep collection moving when results are limited
- 💾 **Real-time saving to the Apify dataset**: Pushes each discovered email row as it’s found (so you don’t lose progress mid-run)
- ⏱️ **Scale-friendly limits**: Use `maxEmails` to stop at your desired volume—even if more candidates exist
- 🌐 **Proxy configuration support**: Includes `proxyConfiguration` support to improve stability for larger scraping runs

***

### Input

Provide input via an `input.json` file. Example structure:

```json
{
  "keywords": ["founder", "marketing"],
  "location": "",
  "platform": "Crunchbase",
  "customDomains": ["@gmail.com"],
  "maxEmails": 20,
  "engine": "legacy",
  "proxyConfiguration": {}
}
```

#### Input Fields

| Field | Required | Description |
| --- | --- | --- |
| `keywords` | ✅ | A list of keywords to search for (the scraper uses these to find Crunchbase profile bios and related content where emails may appear). |
| `location` | ❌ | Location to filter search results. Leave empty (`""`) to not apply a location filter. |
| `platform` | ❌ | Select platform. The only available option is `Crunchbase` (default is `Crunchbase`). |
| `customDomains` | ❌ | List of custom email domains used to filter extracted emails (e.g., `@gmail.com`). |
| `maxEmails` | ❌ | Maximum number of emails to collect. The scraper stops once this limit is reached (default: `20`, allowed range: `1`–`10000`). |
| `engine` | ❌ | Choose scraping engine: `cost-effective` (faster/cheaper using residential proxies with async requests) or `legacy` (more traditional approach; described as more reliable but slower and more expensive). |
| `proxyConfiguration` | ❌ | Configure proxies for this Actor using Apify’s proxy configuration editor. |

***

### Output

The actor pushes each discovered email as a dataset row in JSON format.

```json
[
  {
    "network": "Crunchbase.com",
    "keyword": "founder",
    "title": "Some Crunchbase-related title",
    "description": "Some text snippet where the email was found",
    "url": "https://example.com/some-link",
    "email": "name@gmail.com",
    "proxyGroups": ["your-proxy-group-info"]
  }
]
```

#### Output Fields

| Field | Type | Description |
| --- | --- | --- |
| `network` | string | The source network label (set to `Crunchbase.com`). |
| `keyword` | string | The keyword that guided the email collection context for this row. |
| `title` | string | Title text associated with the matched page result. |
| `description` | string | Text snippet where the email address was extracted from. |
| `url` | string | The related URL for the page/result that contained the email. |
| `email` | string | The extracted email address. |
| `proxyGroups` | array | Proxy group information used for scraping in this run. |

Note: the actor stops pushing new rows once `maxEmails` is reached.

***

### How to use crunchbase Email Scraper (via Apify Console)

1. **Open Apify Console**\
   Go to [console.apify.com](https://console.apify.com) and log in.

2. **Find the actor**\
   Search for **crunchbase Email Scraper** and open the actor page.

3. **Enter your input parameters**\
   In the **INPUT** section, use the built-in form or upload an `input.json`. At minimum, set `keywords` (required).

4. **Target better with email domains** 📌\
   Add domains in `customDomains` (for example `@gmail.com`) to focus your **Crunchbase company email finder** results.

5. **Set your volume**\
   Choose `maxEmails` to control how many emails you want collected in one run.

6. **Pick an engine** ⚙️\
   Select `engine` as either `legacy` or `cost-effective` depending on whether you prefer the default reliability posture or cost-effective async speed.

7. **Run and watch logs** 🔎\
   Start the run. You’ll see progress messages and logs while it extracts and pushes email rows as they’re found.

8. **Open the dataset & export** 💾\
   After the run, check the **OUTPUT** tab dataset, then export the results (JSON/CSV supported in Apify UI). No coding required—get accurate **crunchbase Email Scraper** outputs in minutes.

***

### Advanced features & SEO optimization

- 🚦 **Keyword-first automation for automated Crunchbase email extraction**: engineered to excel at “find emails from Crunchbase” and “Crunchbase to email list” workflows by using your `keywords` to drive the match context
- 🎯 **Better targeting with customDomains**: by specifying inbox domains like `@gmail.com`, you can run a more focused **Crunchbase contact email scraper** workflow instead of collecting every possible email
- 🧰 **Engine choice for different scraping needs**: use `cost-effective` when you want faster/cost-efficient collection, or `legacy` when you prioritize the alternative engine described as more reliable
- 💾 **Built-in resilience for low-result scenarios**: includes retries and fallbacks designed to help when results are limited or scraping encounters restrictions
- 🔁 **Controlled scale with maxEmails**: helps you run B2B email scraping from Crunchbase without spending unnecessary time once you’ve hit your target volume

***

### Best use cases

- 📈 **Sales development reps building outreach lists**: Quickly create a Crunchbase email outreach list filtered by your keywords and preferred email domains.
- 🧠 **Market researchers profiling startup contact availability**: Compare which niches and keyword themes correlate with more emails discovered from Crunchbase bios.
- 🏢 **Startup teams recruiting talent**: Extract contact emails from Crunchbase-related pages for targeted outreach when building a recruiting pipeline.
- 🎯 **B2B lead generation for specific inbox types**: Use `customDomains` to collect emails that match your outreach strategy (for example, filtering to `@gmail.com`).
- 🔄 **CRM enrichment pipelines**: Automatically push structured rows (`email`, `url`, `keyword`) into your downstream system for faster enrichment.
- 🧾 **Data analysts validating lead quality at scale**: Analyze fields like `keyword`, `title`, and `url` to understand where emails were found.
- 💼 **Prospecting for agencies and consultants**: Generate Crunchbase email scraping tool outputs to support multi-customer lead research.

***

### Technical specifications

- **Supported Input Formats**
  - ✅ JSON input with fields: `keywords`, `location`, `platform`, `customDomains`, `maxEmails`, `engine`, `proxyConfiguration`
  - ✅ `keywords` is required

- **Proxy Support**
  - ✅ `proxyConfiguration` is supported via Apify’s proxy configuration editor
  - ✅ Engine supports different scraping behavior (`cost-effective` vs `legacy`) as described in the input schema

- **Retry Mechanism**
  - ✅ Built with retries and fallbacks for resilience when pages fail or results are limited

- **Dataset Structure**
  - ✅ Each pushed dataset row includes: `network`, `keyword`, `title`, `description`, `url`, `email`, `proxyGroups`

- **Rate Limits & Performance**
  - ✅ No strict per-account guarantees, but runtime can increase for larger searches or higher `maxEmails`
  - ✅ You can extend run time in **Run Options** for large searches (default timeout described as `3600 s / 1 hr` in the input guidance)

- **Limitations**
  - ❌ Results depend on what’s publicly available in Crunchbase bios and related page text
  - ❌ `maxEmails` is a cap—not a guarantee you’ll reach it if fewer matching emails exist

***

### FAQ

#### Is this a Crunchbase email extractor or a full Crunchbase scraper?

✅ It’s a **Crunchbase email extractor**: the actor focuses on scraping email addresses from Crunchbase profile bios and related page text using your provided `keywords` and `customDomains`. It does not claim to extract full Crunchbase profile datasets.

#### What do I need to provide to start?

✅ You must provide `keywords`. Optional inputs like `location`, `customDomains`, `maxEmails`, and `engine` help you control targeting and volume.

#### Can I filter for specific email domains (like @gmail.com)?

✅ Yes. Use `customDomains` to list the domains you want. This is how you run a **Crunchbase company email finder** workflow that’s aligned with your preferred inbox types.

#### Why do I sometimes get fewer emails than expected?

❌ Even with a higher `maxEmails`, the scraper stops when it hits the cap but doesn’t guarantee that many results will exist for your `keywords` and domain filters. If results seem low, the actor’s input guidance recommends re-running with broader keywords and more related terms or more domains.

#### Do I need to write code to use crunchbase Email Scraper?

✅ No. You can run it directly in Apify Console by setting the inputs in the UI or uploading an `input.json`.

#### Does it support proxies for more reliable scraping?

✅ Yes. The actor includes a `proxyConfiguration` input and you can choose an `engine` (`cost-effective` or `legacy`) to match your reliability and speed needs.

#### How is the output saved?

✅ Each discovered email row is pushed to the Apify dataset as JSON with fields like `email`, `url`, `keyword`, and `description`, so you can export results as JSON/CSV from the dataset.

#### What’s the best way to improve email discovery with keywords?

💡 Use specific, relevant keywords and add domains in `customDomains` that match your outreach strategy. If you get low results, widen keyword coverage and include more related terms or additional domains, as suggested in the input guidance.

***

### Support & feature requests

If you’re using **crunchbase Email Scraper** for prospecting, lead gen, or Crunchbase email harvesting, we’d love to hear what works (and what doesn’t). Your feedback helps shape improvements to future versions.

- 💡 **Feature Requests**: Want enhancements like improved export formatting, additional filtering options, or more flexible extraction behavior? Share the idea and expected outcome.
- 📧 **Contact**: Email us at <dataforleads@gmail.com>.

***

### Closing CTA / Final thoughts

*For teams that need fast, structured lead data, **crunchbase Email Scraper** is the most SEO-optimized way to build a Crunchbase email outreach list at scale.* Run it with focused keywords and domain filters to turn public web data into actionable prospects.

***

### Disclaimer

**This tool accesses only publicly accessible sources**. It does not access private profiles, authenticated data, or password-protected pages. Legal compliance (including GDPR, CCPA, spam regulations, and each platform’s Terms of Service) is the user’s responsibility.

For data removal requests, contact us at <dataforleads@gmail.com>. Use **crunchbase Email Scraper** responsibly, ethically, and for legitimate purposes only.

# Actor input Schema

## `keywords` (type: `array`):

A list of keywords to search for.

## `location` (type: `string`):

Location to filter search results.

## `platform` (type: `string`):

Select platform.

## `customDomains` (type: `array`):

List of custom email domains

## `maxEmails` (type: `integer`):

Maximum number of emails to collect. The scraper will stop once this limit is reached. Setting a higher limit allows for more potential results but doesn't guarantee reaching that number. This helps save costs by controlling scraping time.

## `engine` (type: `string`):

Choose scraping engine. 🚀 Cost Effective (New): Uses residential proxies with async requests for faster, cheaper scraping. 🔧 Legacy: Uses GOOGLE\_SERP proxy with traditional selectors - more reliable but slower and more expensive.

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

Configure proxies for this Actor.

## Actor input object example

```json
{
  "keywords": [
    "founder",
    "marketing"
  ],
  "location": "",
  "platform": "Crunchbase",
  "customDomains": [
    "@gmail.com"
  ],
  "maxEmails": 20,
  "engine": "legacy"
}
```

# 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 = {
    "keywords": [
        "founder",
        "marketing"
    ],
    "location": "",
    "customDomains": [
        "@gmail.com"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("solid-scraper/crunchbase-email-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 = {
    "keywords": [
        "founder",
        "marketing",
    ],
    "location": "",
    "customDomains": ["@gmail.com"],
}

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

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

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

```

## CLI example

```bash
echo '{
  "keywords": [
    "founder",
    "marketing"
  ],
  "location": "",
  "customDomains": [
    "@gmail.com"
  ]
}' |
apify call solid-scraper/crunchbase-email-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=solid-scraper/crunchbase-email-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/acts/A0qrkS6Jc5gc6thQG/builds/5F78st4xDnRwHKqHb/openapi.json
