# All Social Media Phone Number Scraper (`solid-scraper/all-social-media-phone-number-scraper`) Actor

📞 Extract verified phone numbers from social media with All Social Media Phone Number Scraper. Target leads by profile, keywords & regions—faster outreach for sales teams, marketers & agencies. 🚀 Clean, reliable, efficient.

- **URL**: https://apify.com/solid-scraper/all-social-media-phone-number-scraper.md
- **Developed by:** [SolidScraper](https://apify.com/solid-scraper) (community)
- **Categories:** Lead generation, Social media, Automation
- **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

### All-in-One Social Media Phone Number Scraper 🔍

**All-in-One Social Media Phone Number Scraper** automatically finds and extracts phone numbers from publicly available sources across many popular social media platforms—helping you turn scattered social profiles and content into usable lead lists. Whether you’re using a social media phone number scraper for lead generation, enrichment, or research, this actor is built for the “scrape phone numbers from social media” workflow. It supports targeted searches using your keywords, an optional location, and a country dial code—so you can focus on the contacts you care about and save hours of manual work.

***

### Why choose All-in-One Social Media Phone Number Scraper? ✅

| Feature | Benefit |
|---|---|
| ✅ **All-in-one platform coverage** | Scrape phone numbers from a wide set of social media platforms in one tool |
| ✅ **Keyword + location targeting** | Use your keywords and an optional location filter to narrow results |
| ✅ **Country dial code focus** | Use the selected country dial code to guide phone number relevance |
| ✅ **Reliability with proxy support** | Built-in proxy support for more consistent scraping outcomes |
| ✅ **Structured data output** | Produces clearly labeled JSON fields for easy import into your pipeline |
| ✅ **Scale via limits** | Collect up to your chosen `maxPhoneNumbers` stop point to control runtime/cost |

***

### Key features

- 📊 **Bulk phone number scraping with a stop limit**: Collects up to `maxPhoneNumbers` phone numbers and stops when the limit is reached
- 🔎 **Keyword-driven social media contact info scraper**: Finds phone numbers tied to your `keywords` from profile text and related content
- 🌍 **Country dial code filtering**: Applies the selected `country` dial code to extract phone numbers in the expected regional format
- 🏷️ **Targeted extraction context**: Optionally uses a `location` string to narrow the search context
- 🧩 **Platform selection built in**: Choose one platform from the supported list (for example, Facebook, Instagram, LinkedIn, Twitter/X)
- 🛡️ **Proxy configuration support**: Uses residential proxies by default to improve success rates
- 💾 **Immediate dataset pushing**: Each found phone number is pushed as a row with rich metadata (platform, keyword, source URL, etc.)
- 🔄 **Resilience-oriented design**: Includes retries and fallbacks for resilience when pages fail or return no data

***

### Input

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

```json
{
  "keywords": ["founder", "digital marketing"],
  "location": "London, UK",
  "platform": "LinkedIn",
  "country": "United Kingdom (+44)",
  "maxPhoneNumbers": 20,
  "proxyConfiguration": {}
}
```

#### Input Fields

| Field | Required | Description |
|---|---:|---|
| `keywords` | Yes | A list of keywords to search for (for example: `marketing job`, `digital marketing`). The scraper uses these terms to find relevant social content where phone numbers may appear. |
| `location` | No | Optional location to narrow down search results. Leave it empty (`""`) to run without a location constraint. |
| `platform` | Yes | Select which social media platform to scrape phone numbers from (e.g., `Facebook`, `Instagram`, `LinkedIn`, `Twitter/X`, etc.). |
| `country` | Yes | Select a country to scrape related phone numbers. Choose the matching entry that includes the dial code (for example: `United Kingdom (+44)`). |
| `maxPhoneNumbers` | No | Maximum number of phone numbers to collect. The scraper stops once this limit is reached (helps you control runtime and cost). Allowed range: 1–10000. Default is `20`. |
| `proxyConfiguration` | No | Proxy settings for this Actor. The scraper uses residential proxies by default for better success rates. |

***

### Output

The actor pushes each discovered phone number as a structured JSON row into the Apify dataset.

Sample output row:

```json
[
  {
    "platform": "LinkedIn",
    "keyword": "digital marketing",
    "title": "Example profile/title from the source page",
    "description": "Example snippet/description text where a phone number was found",
    "url": "https://example.com/source-link",
    "phone_number": "+447700900123",
    "country": "United Kingdom (+44)",
    "dial_code": "+44",
    "location": "London, UK",
    "proxyGroups": []
  }
]
```

#### Output Fields

| Field | Type | Description |
|---|---|---|
| `platform` | string | The selected social media platform for this extraction run |
| `keyword` | string | The keyword that was used as the targeting term |
| `title` | string | Title text captured from the source result/page |
| `description` | string | Description/snippet text where the phone number was identified |
| `url` | string | Source URL where the data was found |
| `phone_number` | string | Extracted phone number formatted in E.164 format |
| `country` | string | The selected country value (including dial code text from your input) |
| `dial_code` | string | The dial code used during extraction (for example `+44`) |
| `location` | string | The location filter provided in input (or empty if not set) |
| `proxyGroups` | array | The proxy configuration groups associated with the run |

After exporting, you can use JSON directly in analysis tools or convert it to CSV for spreadsheets and CRM imports.

***

### How to use All-in-One Social Media Phone Number Scraper (via Apify Console)

1. **Open Apify Console**\
   Log in at https://console.apify.com and navigate to the **Actors** tab.

2. **Find the actor card**\
   Search for **All-in-One Social Media Phone Number Scraper** and open the actor.

3. **Configure your INPUT**\
   In the INPUT section, set:
   `keywords`, `platform`, and `country` first (these are required).
   Optionally add `location`.

4. **Set your collection limit (optional)**\
   If you want to control runtime/cost, set `maxPhoneNumbers` to a value you’re comfortable with (default is `20`).

5. **Configure proxies (optional)**\
   Use `proxyConfiguration` if you want to customize proxy behavior. Residential proxies are used by default for better success rates.

6. **Run the actor**\
   Click **Run**. Monitor the logs while the actor extracts and pushes results row-by-row.

7. **Review the dataset output**\
   After the run completes, open the dataset in the **OUTPUT** tab and export to JSON or CSV.

No coding required—get social media contact info scraper results in minutes.

***

### Advanced features & SEO optimization

- 🧠 **Engineered for “lead generation phone number scraper” workflows**: Use `keywords`, `platform`, and `country` together to focus your results on the right audience and phone format
- 📍 **Better targeting with location + dial code**: Add an optional `location` and choose the correct `country` dial code (like `+44`) for more relevant phone number extraction
- 🧱 **Resilient scraping with retries and fallbacks**: Includes retries and fallbacks to handle temporary failures or empty responses more effectively
- 📌 **Clear, structured dataset rows**: Each record includes the platform, keyword, the source `url`, and the final `phone_number` in E.164 format—ideal for bulk phone number scraper pipelines
- 🔁 **Controls for scale**: The `maxPhoneNumbers` stop point helps you scale up responsibly without losing control of scraping time

***

### Best use cases

- 📈 **Sales teams building targeted outreach lists**: Rapidly compile phone numbers from relevant social profiles to improve contact coverage for outbound campaigns
- 🧑‍💼 **B2B lead generation**: Use keywords aligned to roles and industries to power a social media phone number scraper for contact discovery
- 🔬 **Market research and audience mapping**: Extract and analyze phone contact density by platform and dial code for regional insights
- 🧾 **Data enrichment for CRMs**: Feed extracted phone numbers into your CRM enrichment process as part of a structured dataset workflow
- 🧠 **Research teams conducting contactability studies**: Compare phone availability across platforms using consistent keyword and country filters
- 💻 **Analysts automating lead mining**: Build repeatable pipelines around this automated social media phone number extraction tool for scheduled data refreshes
- 🎯 **Instagram and Facebook focused prospecting**: Run dedicated platform-specific runs (like an instagram phone number scraper tool or facebook page phone number scraper) for tighter targeting

***

### Technical specifications

- **Supported Input Formats**
  - ✅ `keywords`: array of strings
  - ✅ `platform`: one selected platform from the supported list
  - ✅ `country`: one selected country option including dial code text
  - ✅ Optional `location` string
  - ✅ Optional `maxPhoneNumbers` (1–10000)
  - ✅ Optional `proxyConfiguration` object

- **Proxy Support**
  - ✅ Configurable via `proxyConfiguration`
  - ✅ Uses residential proxies by default for better success rates

- **Retry Mechanism**
  - ✅ Includes retries and fallbacks for resilience

- **Dataset Structure**
  - ✅ Each found phone number is pushed as a dataset row with:
    `platform`, `keyword`, `title`, `description`, `url`, `phone_number`, `country`, `dial_code`, `location`, `proxyGroups`

- **Limitations**
  - Phone numbers are extracted from publicly available sources found during the run; results can vary depending on availability on the selected platform and for the chosen keywords/country.
  - Setting a very large `maxPhoneNumbers` (or broad keywords) may increase runtime.

***

### FAQ

#### What does the All-in-One Social Media Phone Number Scraper extract?

✅ It extracts phone numbers from publicly available sources related to your chosen `keywords`, using the selected `platform`, optional `location`, and `country` dial code to guide extraction.

#### Which platforms are supported?

The actor supports a wide list of platforms selectable via the `platform` input, including options such as Facebook, YouTube, Instagram, LinkedIn, Twitter/X, and many more.

#### Do I need to provide a location?

❌ No. `location` is optional. If you leave it empty, the actor runs without that additional location filter.

#### How many phone numbers can it collect in one run?

You control that with `maxPhoneNumbers`. The actor stops once it reaches your limit. The input range is 1–10000 (default is 20).

#### What format will phone numbers be in?

The dataset field `phone_number` contains the extracted phone number formatted in E.164 format.

#### Is there proxy support?

✅ Yes. You can configure `proxyConfiguration`. The scraper uses residential proxies by default for better success rates.

#### Can I export results to CSV or only JSON?

The dataset is produced in a structured JSON row format. You can export from Apify to JSON or CSV depending on your workflow.

#### Is it safe to use for lead generation and outreach?

✅ The actor collects information only from **publicly available sources**. You should still ensure your use complies with applicable laws, platform policies, and regulations relevant to your jurisdiction.

***

### Support & feature requests

If you’re using the **All-in-One Social Media Phone Number Scraper** and want to share feedback, we’d love to hear from you.

💡 **Feature Requests**: You can request enhancements like more output fields, improved targeting options, or export-friendly formatting—tell us what would make your social media phone number scraper workflow smoother.

📧 **Contact**: Reach out at <dataforleads@gmail.com>.

Your feedback helps shape the roadmap for this automated social media phone number extraction tool.

***

### Closing CTA / Final thoughts

*Get the most comprehensive, SEO-optimized way to scrape phone numbers from social media—powered by your keywords, platform selection, and country dial code.*\
If you’re looking for the **All-in-One Social Media Phone Number Scraper**, this is built to help you move from discovery to outreach faster.

***

### Disclaimer

**This tool accesses publicly accessible sources only.** It does not access private profiles, authenticated data, or password-protected pages.

You are responsible for complying with applicable laws (including GDPR/CCPA where relevant), spam regulations, and each platform’s terms of service. Use this actor responsibly for legitimate purposes.

For data removal requests, contact <dataforleads@gmail.com>. Always use the **All-in-One Social Media Phone Number Scraper** ethically and in compliance with the rules that apply to your use case.

# Actor input Schema

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

A list of keywords to search for. (Example: marketing job, digital marketing)

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

Optional location to narrow down search results.

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

Select platform.

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

Select a country to scrape related phone numbers.

## `maxPhoneNumbers` (type: `integer`):

Maximum number of phone numbers 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.

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

Configure proxies for this Actor. Uses residential proxies by default for better success rates.

## Actor input object example

```json
{
  "keywords": [
    "founder",
    "digital marketing"
  ],
  "location": "",
  "platform": "Facebook",
  "country": "United Kingdom (+44)",
  "maxPhoneNumbers": 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": [
        "founder",
        "digital marketing"
    ],
    "location": ""
};

// Run the Actor and wait for it to finish
const run = await client.actor("solid-scraper/all-social-media-phone-number-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",
        "digital marketing",
    ],
    "location": "",
}

# Run the Actor and wait for it to finish
run = client.actor("solid-scraper/all-social-media-phone-number-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",
    "digital marketing"
  ],
  "location": ""
}' |
apify call solid-scraper/all-social-media-phone-number-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

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