# Facebook B2b Email Scraper (`scrapers-hub/facebook-b2b-email-scraper`) Actor

📧 Facebook B2B Email Scraper extracts business emails from Facebook pages for targeted outreach. 🚀 Fast, accurate results to power lead generation, sales, and recruitment. 🏢 Get verified contacts and grow your pipeline efficiently!

- **URL**: https://apify.com/scrapers-hub/facebook-b2b-email-scraper.md
- **Developed by:** [Scrapers Hub](https://apify.com/scrapers-hub) (community)
- **Categories:** Lead generation, Automation, Social media
- **Stats:** 1 total users, 0 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.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

### Facebook B2b Email Scraper 🔍

**Facebook B2b Email Scraper** helps you extract business email addresses from public Facebook sources using keyword-driven discovery by country and content type. If you’re searching for a **facebook lead email scraper**, a **facebook b2b email scraper**, or a tool to **extract email addresses from facebook**, this actor is designed to save you hours of manual lead hunting—especially when you’re building outreach lists at scale.

Whether you’re a marketer, recruiter, sales development rep, or data enthusiast, you can use this actor to automate email discovery for B2B workflows like prospecting, enrichment, and research, producing structured results you can export and analyze.

***

### Why choose Facebook B2b Email Scraper? ✅

| Feature | Benefit |
|---|---|
| ✅ **Keyword-based discovery** | Find relevant leads using your input keywords, then scrape matching public contacts |
| ✅ **Flexible “Scrape From” scope** | Target specific Facebook content types (Profiles, Posts, Groups, and more) or scrape everything |
| ✅ **Engine selection for performance vs reliability** | Choose **cost-effective** or **legacy** scraping behavior based on your needs |
| ✅ **Reliability built in** | Includes resilience patterns (retries and fallbacks) to handle intermittent blocking |
| ✅ **Structured dataset output** | Get clean, tabular fields ready for spreadsheets, CRMs, and analytics |
| ✅ **Scale-friendly automation** | Use max-email limits to control output size while running large keyword batches |

***

### Key features 🚀

- 📌 **Accurate business email extraction**: Focuses on B2B-style contact signals to help you collect email addresses for outreach
- 🧩 **Input flexibility (keywords + country + content type)**: Tune your results with `keywords`, `country`, and `scrapeFrom`
- 🛡️ **Resilient scraping engine options**: Switch between `cost-effective` and `legacy` modes to match your reliability needs
- 🔄 **Retry and fallback behavior**: Built for robustness when public pages are inconsistent or temporarily unavailable
- 📊 **Complete, structured results**: Every record includes `keyword`, `title`, `url`, `description`, `email`, `email_domain`, `scrape_from`, and `country`
- 💾 **Real-time dataset writing**: Data is pushed into the Apify dataset as it’s collected (reduces risk of data loss)
- 🌐 **Email-domain ready fields**: Includes both the full `email` and the derived `email_domain` for easier filtering

***

### Input

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

```json
{
  "keywords": ["fitness", "gym", "workout"],
  "country": "United States",
  "scrapeFrom": "All",
  "engine": "legacy",
  "maxEmails": 20
}
```

#### Input Fields

| Key | Required | Description |
|---|---:|---|
| `keywords` | ✅ | One or more keywords to search for on Facebook. Use multiple keywords to broaden lead discovery. |
| `country` | ✅ | Select the country to target for the lead discovery run. |
| `scrapeFrom` | ✅ | Choose which Facebook content types to scrape: `All`, `Profiles`, `Reels`, `Posts`, `Groups`, `Videos`, `Photos`, `Events`, or `Marketplace`. |
| `engine` | ❌ | Pick the scraping engine: `cost-effective` (faster/cheaper approach) or `legacy` (traditional approach). Default is `legacy`. |
| `maxEmails` | ✅ | The maximum number of emails to collect (between 1 and 10000). Default is `20`. |

***

### Output

After execution, the actor saves each profile’s data in JSON format in the dataset **Scraped Emails**.

```json
[
  {
    "keyword": "fitness",
    "title": "Example Fitness Studio",
    "url": "https://www.facebook.com/examplepage",
    "description": "Example contact description text from the public source.",
    "email": "contact@example.com",
    "email_domain": "example.com",
    "scrape_from": "Profiles",
    "country": "United States"
  }
]
```

#### Output Fields

| Field | Required | Description |
|---|---:|---|
| `keyword` | ✅ | The keyword that produced this result. |
| `title` | ✅ | The title extracted from the public source. |
| `url` | ✅ | A link to the Facebook source for this record. |
| `description` | ✅ | The descriptive text associated with the record (as scraped from the public source). |
| `email` | ✅ | The extracted email address (if found). |
| `email_domain` | ✅ | The domain part of the email (e.g., `example.com`) for easy filtering. |
| `scrape_from` | ✅ | Indicates which content type was scraped (based on your `scrapeFrom` setting). |
| `country` | ✅ | The country used for this run. |

> Export note: You can export the dataset from Apify’s **OUTPUT** tab as JSON/CSV depending on your workflow (e.g., onboarding into a CRM or further analysis in a spreadsheet).

***

### How to use Facebook B2b Email Scraper (via Apify Console) 🧭

1. **Open Apify Console**\
   Log in at [console.apify.com](https://console.apify.com) and navigate to the **Actors** page.

2. **Find Facebook B2b Email Scraper**\
   Search for **Facebook B2b Email Scraper** and open the actor details page.

3. **Go to the INPUT panel**\
   Paste your `input.json` values into the built-in input form (or switch to JSON mode if available).

4. **Set your discovery inputs**\
   Enter `keywords` (one or more), choose a `country`, and set `scrapeFrom` to target the content type you care about (for example, `Profiles` or `Groups`).

5. **Choose an engine (optional but recommended)**\
   If you want faster runs and cost control, set `engine` to `cost-effective`. If you want the more traditional approach, use `legacy` (default).

6. **Control volume with maxEmails**\
   Set `maxEmails` to cap how many emails the actor collects for this run.

7. **Run the actor & monitor progress**\
   Start the run. You’ll see logs while it collects results and writes them to the dataset, including handling for intermittent failures via retries and fallbacks.

8. **Open the dataset & export**\
   After completion, open the dataset **Scraped Emails** to view and export your results (great for **facebook lead email scraper** and **facebook outreach email list scraper** workflows).

No coding required — get accurate results in minutes with this **facebook b2b leads email tool**.

***

### Advanced features & SEO optimization ✨

- ⚙️ **Engine choice for your budget and reliability needs**: Use `engine: cost-effective` for a more cost-efficient approach, or `engine: legacy` when you prefer the traditional scraping behavior.
- 🔎 **Engineered for lead generation use cases**: Built to excel at “facebook b2b email scraper” workflows like automated facebook email finder for b2b and automated facebook email scraping.
- 🧠 **Input normalization through your keyword strategy**: Your `keywords`, `country`, and `scrapeFrom` settings directly shape what gets scraped and returned.
- 📋 **Email + domain separation**: The dataset includes both `email` and `email_domain`, which makes filtering and enrichment easier for outreach campaigns.

***

### Best use cases 🎯

- 📈 **Sales teams building outbound pipelines**: Generate a targeted **facebook b2b leads email tool** dataset for new account outreach in specific regions
- 🧑‍💼 **Recruiters sourcing industry talent**: Build lists of businesses and organizations connected to your search keywords to reach hiring managers
- 🎯 **Marketing teams running partner outreach**: Extract business emails tied to relevant Facebook content to contact agencies, vendors, and partners faster
- 🧠 **Data analysts enriching lead research**: Use the structured dataset fields (`email`, `email_domain`, `country`, `scrape_from`) for segmentation and quality checks
- 🛠️ **CRM and automation developers**: Feed the **Facebook B2b Email Scraper** output into your pipeline for deduping and workflow triggers
- 🧾 **Market researchers mapping contact channels**: Compare email domains across regions to understand where B2B contact info is publicly discoverable
- 👥 **Community-focused lead generation**: Scrape from `Groups` or `Events` (via `scrapeFrom`) to find organizations that publicly list contact emails

***

### Technical specifications 🧰

- **Supported Input Formats**
  - ✅ `keywords` (array of strings)
  - ✅ `country` (string from the provided enum list)
  - ✅ `scrapeFrom` (string: `All`, `Profiles`, `Reels`, `Posts`, `Groups`, `Videos`, `Photos`, `Events`, `Marketplace`)
  - ✅ `engine` (`cost-effective` or `legacy`)
  - ✅ `maxEmails` (integer, min 1, max 10000)

- **Proxy Support**
  - ✅ Includes built-in proxy support for reliable scraping

- **Retry Mechanism**
  - ✅ Includes retries and fallbacks for resilience when data access is inconsistent

- **Dataset Structure**
  - ✅ Dataset: **Facebook Email Data**
  - ✅ Dataset view: **Scraped Emails**
  - ✅ Fields: `keyword`, `title`, `url`, `description`, `email`, `email_domain`, `scrape_from`, `country`

- **Rate Limits & Performance**
  - ✅ Controlled output volume using `maxEmails`
  - ✅ Designed to handle real-world variability with resilience patterns

- **Limitations**
  - ❌ Results depend on publicly available content and whether emails are discoverable
  - ❌ Not every record will necessarily include an email, depending on source content

***

### FAQ ❓

#### Is Facebook B2b Email Scraper suitable for B2B lead generation?

✅ Yes. **Facebook B2b Email Scraper** is designed to collect business email addresses from publicly available Facebook sources using your `keywords`, `country`, and `scrapeFrom` settings—making it a practical option for **facebook lead email scraper** and **facebook b2b email scraper** use cases.

#### What kinds of Facebook content can it scrape?

It supports `scrapeFrom` values including `All`, `Profiles`, `Reels`, `Posts`, `Groups`, `Videos`, `Photos`, `Events`, and `Marketplace`, so you can narrow results to the formats most relevant to your outreach.

#### What does the dataset contain?

The actor saves results to a dataset view called **Scraped Emails**, with fields such as `keyword`, `title`, `url`, `description`, `email`, `email_domain`, `scrape_from`, and `country`.

#### Do I need to code to use it?

✅ No coding is required. You can configure inputs in Apify Console and run the actor directly, then export the dataset as needed.

#### Can I control how many emails I collect?

Yes. Use `maxEmails` to set the maximum number of emails the actor will collect for your run (range: 1–10000).

#### How do the engine options differ?

You can choose `engine` as `cost-effective` or `legacy`. `cost-effective` is intended to be more cost-efficient, while `legacy` provides the traditional behavior. If you want the safest default, `legacy` is the default value.

#### Is it legal to use scraped emails for outreach?

💡 The tool is designed to work with **publicly accessible sources**. However, whether you can use the data for outreach depends on applicable laws (for example, GDPR/CCPA), platform rules, and email/spam regulations—so it’s your responsibility to ensure compliant usage.

#### Can I remove data after scraping?

If you need data removal, contact <dataforleads@gmail.com>.

***

### Support & feature requests 🤝

Want to improve **Facebook B2b Email Scraper** for your **facebook b2b email scraper** workflow? Send feedback and ideas—your input helps shape the roadmap.

- 💡 **Feature Requests**: Examples include adding more export-friendly options (like CSV formatting improvements), additional filtering options for domains, or enhancements for data shaping.
- 📧 **Contact**: Reach out via <dataforleads@gmail.com>.

***

### Closing CTA / Final thoughts 🚀

*Get a faster path to reliable B2B contact discovery with this most comprehensive, SEO-optimized **Facebook B2b Email Scraper**.*\
*Set your keywords and country, choose your `scrapeFrom`, and export structured results for your outreach and analysis.*

***

### Disclaimer

**This tool accesses publicly accessible sources.** It does not access private profiles, authenticated data, or password-protected pages. It is your responsibility to comply with applicable laws (including GDPR/CCPA where relevant), platform terms of service, and email/spam regulations before using the extracted data.

For data removal requests, contact <dataforleads@gmail.com>. Always use this tool responsibly, ethically, and for legitimate purposes only.

# Actor input Schema

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

Enter one or more keywords to search for on Facebook.

## `country` (type: `string`):

Specify the country to target for Google search results.

## `scrapeFrom` (type: `string`):

Choose one option — All, Profiles, Reels, Posts, Groups, Videos, Photos, Events, or Marketplace.

## `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.

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

Enter the maximum number of emails to collect.

## Actor input object example

```json
{
  "keywords": [
    "fitness",
    "gym",
    "workout"
  ],
  "country": "United States",
  "scrapeFrom": "All",
  "engine": "legacy",
  "maxEmails": 20
}
```

# 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": [
        "fitness",
        "gym",
        "workout"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapers-hub/facebook-b2b-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": [
        "fitness",
        "gym",
        "workout",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("scrapers-hub/facebook-b2b-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": [
    "fitness",
    "gym",
    "workout"
  ]
}' |
apify call scrapers-hub/facebook-b2b-email-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/acts/NjyPVJECkRg3FKnr9/builds/S86BU9F6dSFRXPJzl/openapi.json
