# Zillow Agent Pro Scraper (`spry_frame/zillow-agent-scraper`) Actor

Scrape top-ranked real estate agents from Zillow by city, neighborhood, or zip code. Returns agent name, brokerage, star rating, review count, recent sales, price range, and direct profile URL. Perfect for lead generation, market research, and building referral networks.

- **URL**: https://apify.com/spry\_frame/zillow-agent-scraper.md
- **Developed by:** [COSENT GROUP](https://apify.com/spry_frame) (community)
- **Categories:** Lead generation, Real estate
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.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/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.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js/docs.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/integrations/mcp.md).

If your project is in a different language, use 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

## Zillow Agent Pro Scraper

Extract top-ranked real estate agents from Zillow by city, neighborhood, or zip code. Get agent names, brokerages, ratings, review counts, recent sales stats, and direct profile URLs — ready to export as JSON, CSV, or Excel.

### What data do you get?

Each result includes:

| Field | Description | Example |
|-------|-------------|---------|
| `name` | Agent or team name | `Eric Bramlett` |
| `brokerage` | Brokerage they work with | `Bramlett Residential` |
| `rating` | Zillow star rating (out of 5) | `5` |
| `reviewCount` | Total number of client reviews | `2161` |
| `recentSales` | Sales in the last 12 months | `822` |
| `totalSales` | All-time sales count | `1450` |
| `priceRange` | Typical price range they work in | `$300K - $900K` |
| `isTopAgent` | Whether Zillow has badged them as a top agent | `true` |
| `isTeam` | Whether this is a team listing vs. individual | `false` |
| `profileUrl` | Direct link to their Zillow profile | `https://www.zillow.com/profile/ericbramlett` |
| `imageUrl` | Agent headshot URL | `https://...` |
| `location` | The search location you provided | `78701` |
| `scrapedAt` | Timestamp of when the data was collected | `2026-07-20T22:10:08Z` |

### How to use it

#### Step 1 — Add your search locations

In the **Search Locations** field, enter one location per line. You can use:
- **City + state**: `Austin TX`, `Dallas TX`, `Miami FL`
- **Zip codes**: `78701`, `90210`, `10001`
- **Neighborhoods**: `South Austin TX`, `Brooklyn NY`

> **Tip:** Each location returns the top ~15 agents ranked by Zillow for that area. For broader coverage, add multiple zip codes within a city rather than just the city name. For example, to cover Austin TX thoroughly, add `78701`, `78702`, `78704`, `78745`, `78748` as separate entries — you'll get the top agents for each sub-market.

#### Step 2 — Set filters (optional)

- **Minimum Rating** — Leave at `0` to get all agents, or set to `4.5` to only return highly rated agents
- **Minimum Review Count** — Leave at `0` for all, or set to `50` to filter out agents with very few reviews

#### Step 3 — Configure proxy

Leave the proxy set to **Apify Proxy → Residential**. This is required for Zillow — without residential proxies the scraper will be blocked.

#### Step 4 — Run and export

Click **Start**. The scraper typically finishes in under 10 seconds per location. When done, go to the **Output** tab to preview your data, then click **Export** to download as CSV, Excel, or JSON.

---

### Sample output (JSON)

```json
{
  "name": "Eric Bramlett",
  "brokerage": "Bramlett Residential",
  "rating": 5,
  "reviewCount": 2161,
  "recentSales": 822,
  "totalSales": null,
  "priceRange": "$300K - $750K",
  "isTopAgent": true,
  "isTeam": false,
  "profileUrl": "https://www.zillow.com/profile/ericbramlett",
  "imageUrl": "https://photos.zillowstatic.com/fp/...",
  "location": "78701",
  "scrapedAt": "2026-07-20T22:10:08.561Z"
}
````

***

### Who is this for?

- **Real estate investors** — find the most active agents in your target markets
- **Mortgage brokers** — build a referral network of top producers
- **Real estate coaches & trainers** — prospect for high-volume agents who may need services
- **Title companies & vendors** — identify agents worth partnering with
- **Market researchers** — analyze agent activity and concentration by area

***

### How many results per run?

Each location returns up to 15 agents (the top-ranked results Zillow shows for that search). To get more agents, simply add more locations. 10 zip codes = ~150 agents. 50 zip codes = ~750 agents.

***

### Cost

This actor uses Apify's residential proxy network to access Zillow reliably. A typical run costs approximately **$0.02–$0.05** per location in proxy and compute costs, billed against your Apify usage credits.

***

### Questions or issues?

Open a support ticket via the **Issues** tab on this actor's page. Include the location(s) you searched and a copy of the run log.

# Actor input Schema

## `searchLocations` (type: `array`):

Cities, zip codes, or neighborhoods to search. Each returns the top ~15 agents for that area. For more agents, add more specific locations (e.g. multiple zip codes within a city).

## `minRating` (type: `number`):

Only return agents with a rating at or above this threshold (0 = no filter)

## `minReviews` (type: `integer`):

Only return agents with at least this many reviews (0 = no filter)

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

Proxy settings. Residential proxies strongly recommended for Zillow.

## Actor input object example

```json
{
  "searchLocations": [
    "Austin TX",
    "78701",
    "78704",
    "South Austin TX"
  ],
  "minRating": 0,
  "minReviews": 0,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# 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 = {
    "searchLocations": [
        "Austin TX"
    ],
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ]
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("spry_frame/zillow-agent-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 = {
    "searchLocations": ["Austin TX"],
    "proxyConfiguration": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
    },
}

# Run the Actor and wait for it to finish
run = client.actor("spry_frame/zillow-agent-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 '{
  "searchLocations": [
    "Austin TX"
  ],
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}' |
apify call spry_frame/zillow-agent-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Zillow Agent Pro Scraper",
        "description": "Scrape top-ranked real estate agents from Zillow by city, neighborhood, or zip code. Returns agent name, brokerage, star rating, review count, recent sales, price range, and direct profile URL. Perfect for lead generation, market research, and building referral networks.",
        "version": "1.0",
        "x-build-id": "eeJbkgBVxhJOl4rmv"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/spry_frame~zillow-agent-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-spry_frame-zillow-agent-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/spry_frame~zillow-agent-scraper/runs": {
            "post": {
                "operationId": "runs-sync-spry_frame-zillow-agent-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/spry_frame~zillow-agent-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-spry_frame-zillow-agent-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "searchLocations"
                ],
                "properties": {
                    "searchLocations": {
                        "title": "Search Locations",
                        "type": "array",
                        "description": "Cities, zip codes, or neighborhoods to search. Each returns the top ~15 agents for that area. For more agents, add more specific locations (e.g. multiple zip codes within a city).",
                        "items": {
                            "type": "string"
                        }
                    },
                    "minRating": {
                        "title": "Minimum Agent Rating",
                        "minimum": 0,
                        "maximum": 5,
                        "type": "number",
                        "description": "Only return agents with a rating at or above this threshold (0 = no filter)",
                        "default": 0
                    },
                    "minReviews": {
                        "title": "Minimum Review Count",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Only return agents with at least this many reviews (0 = no filter)",
                        "default": 0
                    },
                    "proxyConfiguration": {
                        "title": "Proxy Configuration",
                        "type": "object",
                        "description": "Proxy settings. Residential proxies strongly recommended for Zillow."
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
