# Physical Therapist Lead Generator (`parse-point/physical-therapist-lead-generator`) Actor

🏃 Physical Therapist Lead Generator pulls PT clinic leads from Google Maps—name, phone, website, coordinates, ratings & reviews. 📧 Emails and social links per site. 💪 For rehab suppliers & clinic software vendors.

- **URL**: https://apify.com/parse-point/physical-therapist-lead-generator.md
- **Developed by:** [Parse Point](https://apify.com/parse-point) (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/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

### Physical Therapist Lead Generator

**Physical Therapist Lead Generator** helps you stop spending hours manually researching clinics and contact details. It’s built for marketers, researchers, and growth teams who need physical therapist leads, physical therapy lead generation, and PT lead generation results from publicly available data. Use it to speed up physical therapist marketing and patient acquisition while keeping your outreach organized and efficient. 📈

### What is Physical Therapist Lead Generator? 🔍

**Physical Therapist Lead Generator** is an Apify automation actor that helps you find physical therapist businesses and collect their contact details from publicly available sources. It returns business names, websites, phone numbers, addresses, emails, social media links, and basic location details in a structured dataset. Whether you're a sales professional, recruiter, or marketer, this tool supports physical therapy marketing, rehabilitation lead generation, and clinic lead generation without manual copy-paste work. It’s a practical physical therapist contact scraper and physical therapist email extractor for automated physical therapist scraping. 📬

### What Does Physical Therapist Lead Generator Do? ⚙️

This actor takes your search term and location, processes public web data, and saves matching business records to your Apify dataset. It is designed to help you find relevant contacts for healthcare lead generation, therapist marketing, and physical therapy business growth.

- 🔍 **Searches** for businesses based on your chosen physical therapist term and location
- 📧 **Extracts** publicly available emails, phones, and social media links
- 🌍 **Filters** results by location and stops once your target count is reached
- 📊 **Structures** output into clean JSON records for easy analysis
- 💾 **Saves** results to the Apify dataset so you can export them later

### What Would Results from Physical Therapist Lead Generator Look Like? 👀

Here’s a realistic example of the kind of structured business contact data you can expect from a run:

```json
{
  "name": "Elite Physical Therapy Center",
  "website": "https://www.eliteptcenter.com",
  "phone": "+1 212-555-0148",
  "full_address": "245 W 34th St New York NY 10001 US",
  "city": "New York",
  "state": "NY",
  "zip": "10001",
  "country_code": "US",
  "scraped_emails": [
    "info@eliteptcenter.com",
    "frontdesk@eliteptcenter.com"
  ],
  "scraped_phones": [
    "+1 212-555-0148"
  ],
  "scraped_social_media": [
    "https://www.instagram.com/eliteptcenter"
  ],
  "emails_found": 2,
  "pages_scraped": 6,
  "avg_rating": 4.8,
  "total_reviews": 126,
  "lat": "40.7505",
  "long": "-73.9934",
  "place_id": "ChIJd8BlQ2BZwokRAFUEcm_qrcA",
  "scrape_status": "success"
}
```

You can export the dataset as JSON or CSV from Apify after the run completes.

### Capabilities of Physical Therapist Lead Generator 🛠️

| Capability | What It Means for You |
|---|---|
| ✅ **Location-based targeting** | Focus on physical therapy leads in specific cities or regions for more relevant outreach |
| ✅ **Search term targeting** | Find businesses matching your physical therapist marketing niche |
| ✅ **Contact extraction** | Collect emails, phone numbers, and social media links from public sources |
| ✅ **Result limits** | Control how many businesses you want to collect in a run |
| ✅ **Per-location option** | Collect up to your target count for each location instead of one global total |
| ✅ **Proxy configuration** | Use proxy support for more reliable large-scale scraping |
| ✅ **Structured dataset output** | Get clean records ready for analysis, CRM import, or outreach workflows |
| ✅ **Useful business metadata** | Capture ratings, review counts, addresses, and map details |
| ✅ **Real-time saving** | Results are stored as they’re found, reducing the risk of lost data |

### Launch Your First Physical Therapist Lead Generator Task 🚀

#### Required Input Fields

```json
{
  "googleMapsSearchTerm": "Physical Therapist",
  "googleMapsLocation": [
    "New York"
  ],
  "maxBusinesses": 5,
  "scrapeMaxBusinessesPerLocation": false,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| `googleMapsSearchTerm` | String | Yes | `Physical Therapist` | The business type or niche you want to search for. |
| `googleMapsLocation` | Array | Yes | `["New York"]` | The geographic location or locations you want to target. |
| `maxBusinesses` | Integer | No | `5` | The maximum number of businesses with emails to collect. |
| `scrapeMaxBusinessesPerLocation` | Boolean | No | `false` | If enabled, the actor collects up to the target number for each location separately. |
| `proxyConfiguration` | Object | No | `{ "proxy support": true }` | Proxy settings for more reliable scraping at larger scale. |

#### Required Output Fields

| Field | Type | Description |
|---|---|---|
| `name` | String | Business name. |
| `website` | URL | Website associated with the business. |
| `phone` | String | Main phone number listed for the business. |
| `full_address` | String | Full address assembled from the available location parts. |
| `city` | String | City name. |
| `state` | String | State or region. |
| `zip` | String | Postal code. |
| `country_code` | String | Country code. |
| `scraped_emails` | Array | Emails found from publicly available sources. |
| `scraped_phones` | Array | Phone numbers found from public sources. |
| `scraped_social_media` | Array | Social media links found from public sources. |
| `emails_found` | Number | Number of emails found for the business. |
| `pages_scraped` | Number | Number of pages processed during contact collection. |
| `avg_rating` | Number | Average public rating. |
| `total_reviews` | Number | Total number of reviews. |
| `lat` | String | Latitude value. |
| `long` | String | Longitude value. |
| `place_id` | String | Place identifier. |
| `scrape_status` | String | Processing status for the record. |

**Step-by-step launch guide:**

1. **Open** the actor in Apify Console.
2. **Enter** your search term and one or more locations.
3. **Set** the result limit and optional per-location behavior.
4. **Enable** proxy configuration if you plan to run larger batches.
5. **Start** the actor and monitor the live logs.
6. **Download** the dataset once the run is complete.

### Solving Real Problems with Physical Therapist Lead Generator 💼

- 🎯 **Sales Prospecting** — Build a focused list of physical therapist leads for outbound outreach and follow-up
- 📣 **Campaign Targeting** — Improve physical therapy lead generation with location-specific business contacts
- 🤝 **Clinic Growth** — Support patient acquisition and clinic lead generation with fresh public contact data
- 🔬 **Market Research** — Analyze physiotherapy leads and compare local competition across cities
- ⚙️ **Automated Workflows** — Feed results into research, outreach, or physical therapy business growth pipelines

### What Sets Physical Therapist Lead Generator Apart? 🏆

- 💰 **Efficient result collection** — Helps you focus on only the businesses that match your target niche and location
- 🔄 **Reliable large-scale runs** — Built-in proxy support for more stable public web scraping
- 📧 **Support you can reach** — Contact <helloparsepoint@gmail.com> for questions or feedback
- ⚡ **Clean structured output** — Easy to export and use in CRM tools, spreadsheets, or research workflows

### Search Limits and Capacity 📈

- Set `maxBusinesses` from 1 to 1000.
- If `scrapeMaxBusinessesPerLocation` is disabled, the actor uses one combined total limit across all locations.
- If `scrapeMaxBusinessesPerLocation` is enabled, it can collect up to the target number for each location.
- Proxy configuration is available for more reliable larger runs.
- The output is stored in the Apify dataset and can be exported in standard formats.

### Is It Legal to Scrape Physical Therapist? ⚖️

This actor accesses only **publicly available data** from business websites and public listings. It does not require logins or private access. Users are responsible for complying with applicable laws, including privacy and anti-spam rules, as well as any site terms that apply to their use case. For data-removal or compliance inquiries, contact <helloparsepoint@gmail.com>. Use the tool responsibly and for legitimate physical therapy marketing and healthcare lead generation workflows.

### Ending Note ✉️

*Stop spending hours manually collecting physical therapist leads. The **Physical Therapist Lead Generator** helps you build clean public contact lists faster, making physical therapist marketing and patient acquisition more efficient.* 🚀

### FAQ — Physical Therapist Lead Generator ❓

#### How Does the Physical Therapist Lead Generator Work?

You provide a search term and location, and the actor collects matching business records from publicly available sources. It then saves the results in your Apify dataset in a clean, structured format.

#### What Types of Physical Therapist Businesses Can I Target?

You can target physical therapist businesses and related niches using your search term and location settings. This is useful for physical therapy lead generation, rehab marketing, and therapist marketing campaigns.

#### How Did the Physical Therapist Lead Generator Perform in Our Tests?

It is designed to return structured contact records including emails, phones, ratings, review counts, and social links when those details are publicly available. Actual yield depends on how many matching businesses have public contact information.

#### Why Use This Instead of Buying a Lead List?

Publicly sourced data is often fresher and more relevant to your chosen location and niche. That makes it more useful for local SEO for physical therapists, outreach, and clinic lead generation than stale purchased lists.

#### How Much Does Physical Therapist Lead Generator Cost?

Your usage depends on your Apify plan and the size of the run. You can control output volume with `maxBusinesses`, which helps manage costs and keeps runs focused.

#### Top Benefits of the Physical Therapist Lead Generator

It saves time, keeps data structured, supports physical therapy marketing workflows, and helps you quickly gather public contact information for relevant businesses.

#### What Are the Disadvantages of Scraping Physical Therapist?

Results depend on how much public information is available. Some businesses may not list emails, and some locations may return fewer matches than others.

#### How to Choose the Best Physical Therapist Lead Generator

Look for structured output, location targeting, reliable proxy support, and a clear dataset format. This actor is built for practical physical therapist business growth and healthcare lead generation workflows, and support is available at <helloparsepoint@gmail.com>.

### 🆘 Support & Feedback

Have a question or found an issue with the Physical Therapist Lead Generator?

- 🐞 **Bug Reports:** Share the problem in the repository’s Issues section
- ✨ **Custom Solutions & Feature Requests:** Reach out to the team
- 📧 **Email:** <helloparsepoint@gmail.com>

### Complete number formats

| Field | Meaning |
| --- | --- |
| `phoneRaw` | The exact text the number was read from, before any normalisation |
| `phoneE164` | International dialable form, e.g. `+442079460958` |
| `phoneNational` | As someone inside that country would dial it |
| `phoneInternational` | Readable international form, e.g. `+44 20 7946 0958` |
| `phoneRfc3966` | `tel:` URI for VoIP systems (optional) |
| `phoneExtension` | The internal extension, when one was published |
| `phoneNumbers` | Every number on the row, each in all of the above forms |

Numbers are parsed against the business's own country from its Maps listing.
`phoneRaw` is never derived, so it stays trustworthy even when parsing the rest
fails.

### Contact Memory

| Field | Meaning |
| --- | --- |
| `firstSeenAt` | The date this contact was first delivered to you, across all runs |
| `isNewSinceLastRun` | `false` for a contact an earlier run already returned |

These carry real information because repeats are still delivered by default —
a scraper that dropped duplicates before delivery would mark every row new and
tell you nothing. If you would rather not receive repeats at all, **Skip
contacts delivered by a previous run** suppresses them, and **Reset contact
memory** starts the record over.

A contact is identified by its email address where there is one, otherwise by
its phone number.

# Actor input Schema

## `googleMapsSearchTerm` (type: `string`):

Enter the business type or niche for email scraper (e.g., 'coffee shops', 'dentists').

## `googleMapsLocation` (type: `array`):

Target geographic location for the email scraper (e.g., 'Miami, Florida').

## `maxBusinesses` (type: `integer`):

Target number of businesses to find (1-1000). The scraper will stop when this target is reached.

## `scrapeMaxBusinessesPerLocation` (type: `boolean`):

If enabled, the scraper will collect up to `maxBusinesses` results per location. If disabled, it combines all locations up to a single total limit.

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

Proxy settings for scraping. Recommended for large-scale scraping.

## `includeDialerUri` (type: `boolean`):

Add the tel: URI form some VoIP and telephony systems expect. It duplicates information already in the other number columns - keep it only if your phone system asks for this exact format.

## `skipPreviouslySeenContacts` (type: `boolean`):

Suppress any contact an earlier run already returned, so a scheduled job only pays for what is new. Off by default - leave it off if you want the full list each time and would rather filter on the New column yourself.

## `resetContactMemory` (type: `boolean`):

Clear the remembered contacts before this run, so everything counts as new again. Use after changing your target list.

## Actor input object example

```json
{
  "googleMapsSearchTerm": "Physical Therapist",
  "googleMapsLocation": [
    "New York"
  ],
  "maxBusinesses": 5,
  "scrapeMaxBusinessesPerLocation": false,
  "proxyConfiguration": {
    "useApifyProxy": true
  },
  "includeDialerUri": true,
  "skipPreviouslySeenContacts": false,
  "resetContactMemory": false
}
```

# Actor output Schema

## `dataset` (type: `string`):

No description

# 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 = {
    "googleMapsSearchTerm": "Physical Therapist",
    "googleMapsLocation": [
        "New York"
    ],
    "maxBusinesses": 5,
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("parse-point/physical-therapist-lead-generator").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 = {
    "googleMapsSearchTerm": "Physical Therapist",
    "googleMapsLocation": ["New York"],
    "maxBusinesses": 5,
    "proxyConfiguration": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("parse-point/physical-therapist-lead-generator").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 '{
  "googleMapsSearchTerm": "Physical Therapist",
  "googleMapsLocation": [
    "New York"
  ],
  "maxBusinesses": 5,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}' |
apify call parse-point/physical-therapist-lead-generator --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,parse-point/physical-therapist-lead-generator"
        }
    }
}

```

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/nRc7bnu0ydgWsF74u/builds/BcyTt1l2MIbBj7gW2/openapi.json
