Zillow Agent Leads Finder
Pricing
from $2.39 / 1,000 results
Zillow Agent Leads Finder
Find real estate agent leads on Zillow by ZIP, city, state, or profile URL. Get email, phone, website, brokerage, license, reviews, sales stats, and full past sales and listings. Export as JSON, CSV, or Excel.
Pricing
from $2.39 / 1,000 results
Rating
0.0
(0)
Developer
ParseBird
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Security
Limited permissionsShare
Zillow Agent Leads Finder
Find real estate agent leads on Zillow by ZIP code, city, state, or profile URL, with email, phone, website, brokerage, license numbers, reviews, and sales history.
| Turn Zillow's agent directory into a clean lead list: filter by location, specialty, language, Top Agent badge, rating, and review count, then export contact details and every past sale for each agent. |
Copy to your AI assistant
Copy this block into ChatGPT, Claude, Cursor, or any LLM to start using this actor.
Apify actor "parsebird/zillow-agent-leads-finder" (Zillow Agent Leads Finder) returns real estate agent contact data from Zillow. Call it with the apify-client package: client.actor("parsebird/zillow-agent-leads-finder").call(run_input={"locations": ["Austin, TX"], "maxItems": 100}). Provide at least one of: locations (array of strings; ZIP codes or "City, ST"), states (array of two-letter state codes, walked city by city), startUrls (array of {url}; https://www.zillow.com/professionals/real-estate-agent-reviews/99501/ or https://www.zillow.com/profile/Michael-Kayem). Optional: maxItems (integer, default 20, 0 = no limit), enrichEmails (boolean, default false; finds contactEmail on the agent's website), getPastSales, getActiveListings, getRentalListings (booleans, default false), maxCataloguePerAgent (integer, default 20, 0 = no limit), agentName (string), topAgentsOnly, helpsBuyers, helpsSellers, requireEmail, requirePhone (booleans), specialties, languages (arrays of Zillow filter keys such as "luxury-homes", "spanish"), minRating (string such as "4.5"), minReviews (integer). Output, one row per agent: name, email, phone, website, businessName, city, state, postalCode, rating, reviewCount, salesLast12Months, totalSales, averagePrice, priceRange, yearsInIndustry, specialties, languages, licenseNumbers, memberSince, isTopAgent, isPremium, url, encodedZuid, phoneNumbers, businessAddress, salesStats, reviewsSummary, reviewsData, featuredListings, pastSales, serviceAreas, mlsIDs, plus pastSalesHistory, activeListingsHistory, rentalListingsHistory, contactEmail, contactWebsite, emailEnrichment when requested. Pay per event: apify-actor-start, result, past-deals, additional-data, contact-email. API docs: https://apify.com/parsebird/zillow-agent-leads-finder/api. Get a token: https://console.apify.com/settings/integrations
What is Zillow Agent Leads Finder?
Zillow Agent Leads Finder is a Zillow agent scraper that collects public agent profiles from the Zillow agent directory and returns them as a structured lead list. It works as a Zillow agents API alternative: type a ZIP code or a city, press Start, and download the results.
Each row is one agent, with the email, phone number, website, brokerage, and business address shown on the profile, along with ratings, sales figures, licenses, and specialties. Zillow profile emails are included in the base price.
What can Zillow Agent Leads Finder do?
- 📍 Search by location. Enter ZIP codes or cities such as
78701orAustin, TX. - 🗺️ Walk whole states. Pick any US state or DC. The Actor moves city by city through Zillow's nearby-city links and keeps agents whose business address is in that state, along with agents who list no address.
- 🔗 Paste Zillow URLs. Agent directory URLs, including ones with filters, and direct profile URLs both work.
- 🔎 Go past Zillow's search limit. Zillow shows 25 pages, about 375 agents, per search. Larger locations are automatically searched again by specialty and language to reach more agents.
- ✉️ Find a second email. Optionally visit each agent's own website for a contact address that differs from the profile email.
- 🏠 Get full sales and listing histories. Optionally page through an agent's complete sold, for-sale, and for-rent lists instead of the few shown on the profile. The default is 20 per list; raise the cap or remove it to get them all.
- 🎯 Filter leads. Use Zillow's filters (name, Top Agent, buying, selling, specialty, language) and lead filters (has email, has phone, minimum rating, minimum reviews).
On the Apify platform you can also schedule runs to refresh your lead list, call the Actor through the API, connect it to Make, Zapier, Google Sheets, and other integrations, and export in JSON, CSV, Excel, XML, or HTML.
What data can you extract from Zillow agent profiles?
| Field | Description |
|---|---|
name, screenName | Agent or team name |
email | Email shown on the Zillow profile |
phone, phoneNumbers | Best phone number, plus cell, business, and brokerage numbers when listed |
website | Agent's website |
businessName, businessAddress, city, state, postalCode | Brokerage and business address |
rating, reviewCount, reviewsSummary, reviewsData | Rating, review count, Zillow's AI review summary when available, and recent reviews |
salesLast12Months, totalSales, averagePrice, priceRange, salesStats | Sales figures as shown on the profile |
yearsInIndustry, specialties, languages, memberSince | Experience and focus |
licenseNumbers, agentLicenses, otherLicenses, mlsIDs | License numbers and MLS identifiers |
isTopAgent, isPremium | Zillow Top Agent badge and premium profile status |
featuredListings, forSaleListings, forRentListings, pastSales | Recent listings and sales embedded in the profile |
teamDisplayInformation, serviceAreas, businessCard, professionalInformation | Team, service areas, branding, and profile details |
pastSalesHistory | Add-on: the agent's sold properties with address, price, date, and buyer or seller side |
activeListingsHistory, rentalListingsHistory | Add-on: every for-sale and for-rent listing |
contactEmail, contactWebsite, emailEnrichment | Add-on: email found on the agent's website and the page it came from |
Some agents leave profile fields blank, and those come back empty. Not every field is shown for every agent.
How to scrape Zillow agent leads
- Open Zillow Agent Leads Finder and go to the Input tab.
- Enter ZIP codes or cities in Locations, pick Whole states, or paste Zillow URLs.
- Set Max agents to control the run size and cost.
- Turn on any add-ons you need, such as Find contact emails on agent websites or Get full past sales.
- Press Start and wait for the run to finish.
- Download your leads in JSON, CSV, Excel, XML, or HTML from the Output tab.
Input parameters
Provide at least one of locations, states, or startUrls.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| locations | array | No | — | ZIP codes or cities, such as 78701 or Austin, TX |
| states | array | No | — | Two-letter state codes to walk city by city |
| startUrls | array | No | — | Zillow agent directory or profile URLs |
| maxItems | integer | No | 20 | Maximum agents in the run. 0 means no limit |
| enrichEmails | boolean | No | false | Look for a contact email on the agent's website |
| getPastSales | boolean | No | false | Add the agent's sold history |
| getActiveListings | boolean | No | false | Add all for-sale listings |
| getRentalListings | boolean | No | false | Add all rental listings |
| maxCataloguePerAgent | integer | No | 20 | Cap for each of the three lists above, per agent. Raise it for longer histories. 0 means no limit |
| agentName | string | No | — | First or last name. Zillow matches whole names |
| topAgentsOnly | boolean | No | false | Only agents with the Top Agent badge |
| helpsBuyers | boolean | No | false | Only agents listed as helping with buying |
| helpsSellers | boolean | No | false | Only agents listed as helping with selling |
| specialties | array | No | — | Specialty keys such as luxury-homes. An agent must match all |
| languages | array | No | — | Language keys such as spanish |
| requireEmail | boolean | No | false | Save only agents with a profile email |
| requirePhone | boolean | No | false | Save only agents with a phone number |
| minRating | string | No | — | Minimum average rating, such as 4.5 |
| minReviews | integer | No | — | Minimum number of reviews |
| splitLargeSearches | boolean | No | true | Run extra searches by specialty and language above Zillow's per-search limit |
| maxConcurrency | integer | No | 10 | Agents processed at the same time, up to 30 |
| maxRequestRetries | integer | No | 10 | Retries per page, each from a new IP address |
Example input:
{"locations": ["Austin, TX", "99501"],"topAgentsOnly": true,"requireEmail": true,"enrichEmails": true,"maxItems": 100}
Output example
Long fields are shortened here. Download results in JSON, CSV, Excel, XML, or HTML.
{"name": "Michael Kayem","email": "homes@agentmichael.com","phone": "(310) 739-8029","website": "http://www.agentmichael.com","businessName": "Estate Properties","city": "Culver City","state": "CA","postalCode": "90292","rating": 5,"reviewCount": 161,"salesLast12Months": 5,"totalSales": 266,"averagePrice": "$1.2M","priceRange": "$575K-$2.4M","yearsInIndustry": 25,"specialties": ["Buyer's Agent", "Listing Agent", "Foreclosure", "Property Management", "Investment Properties"],"languages": ["French"],"licenseNumbers": ["01320892", "01310892"],"memberSince": "04/30/2011","isTopAgent": false,"isPremium": false,"url": "https://www.zillow.com/profile/Michael-Kayem","encodedZuid": "X1-ZUz91ogaatrqq1_9tzap","phoneNumbers": { "cell": "(310) 739-8029" },"businessAddress": { "address1": "124 Washington Blvd", "address2": null, "city": "Culver City", "state": "CA", "postalCode": "90292" },"salesStats": { "salesLastTwelveMonths": "5", "totalSales": "266", "priceRange": "$575K-$2.4M", "averagePrice": "$1.2M", "teamDisclaimer": "Sales numbers represent all team members" },"pastSalesHistory": [{"zpid": "20438572","attributes": [{ "value": "3", "label": "bd" }, { "value": "3", "label": "ba" }, { "value": "1,435", "label": "sqft" }],"badges": ["Buyer", "Seller"],"fullAddressText": "5215 Sepulveda Blvd Unit 5A, Culver City, CA 90230","priceText": "$1,000,000","url": "https://www.zillow.com/homedetails/5215-Sepulveda-Blvd-UNIT-5A-Culver-City-CA-90230/20438572_zpid/"}],"source": "https://www.zillow.com/profile/Michael-Kayem","scrapedAt": "2026-11-07T00:00:00+00:00"}
Use cases
- Real estate software and services sales: build outreach lists of active agents by market, specialty, or sales volume.
- Recruiting for brokerages: find productive agents by city, using sales figures and reviews.
- Partnerships: find agents for mortgage, staging, photography, inspection, or relocation referrals.
- Market research: compare agent activity, price ranges, and brokerages across cities.
- CRM enrichment: refresh phone, website, brokerage, and license details for agents you already know, using profile URLs.
How to use the Zillow agents API in Python and JavaScript
Python, using the Apify API client for Python:
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("parsebird/zillow-agent-leads-finder").call(run_input={"locations": ["Austin, TX"],"requireEmail": True,"maxItems": 100,})for agent in client.dataset(run["defaultDatasetId"]).iterate_items():print(agent["name"], agent["email"], agent["phone"])
JavaScript, using the Apify API client for JavaScript:
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });const run = await client.actor('parsebird/zillow-agent-leads-finder').call({locations: ['Austin, TX'],requireEmail: true,maxItems: 100,});const { items } = await client.dataset(run.defaultDatasetId).listItems();items.forEach((agent) => console.log(agent.name, agent.email, agent.phone));
How much does it cost to scrape Zillow agents?
This Actor uses pay-per-event pricing. Compute and proxy costs are included in the event prices, and your Apify plan sets your discount tier.
| Event | What it covers | Free | Bronze | Silver | Gold |
|---|---|---|---|---|---|
| apify-actor-start | Once per run, per GB of memory (minimum one; one at the default 512 MB) | $0.005 | $0.005 | $0.005 | $0.005 |
| result | Each agent saved, including the profile email | $2.99 / 1,000 | $2.79 / 1,000 | $2.59 / 1,000 | $2.39 / 1,000 |
| past-deals | Each past sale in pastSalesHistory | $0.69 / 1,000 | $0.59 / 1,000 | $0.59 / 1,000 | $0.49 / 1,000 |
| additional-data | Each listing in activeListingsHistory or rentalListingsHistory | $0.99 / 1,000 | $0.89 / 1,000 | $0.79 / 1,000 | $0.79 / 1,000 |
| contact-email | Each new email found on an agent's website | $39 / 1,000 | $34 / 1,000 | $29 / 1,000 | $24 / 1,000 |
On the Free tier, a run of 1,000 agents with no add-ons costs $2.995: the $0.005 start fee plus $2.99 for the agents. Add-on events are charged only when you turn on that option. A contact-email is charged only when the lookup returns an address different from the profile email. Failed lookups and addresses already on the profile are free. Use Maximum cost per run to cap your spending: the Actor stops when the limit is reached.
How does Zillow Agent Leads Finder work?
- It opens Zillow's agent directory for each location and collects agent profiles page by page, removing duplicates across all your searches.
- For larger locations it runs extra filtered searches, and for states it follows nearby-city links.
- It reads each agent's public profile and saves the fields as one row.
- If you turned on the add-ons, it pages through the agent's sold and active listings, and reads the agent's website homepage and contact pages to find an email.
FAQ
Are the emails included in the base price?
Yes. If the Zillow profile shows an email, it is in the email field at no extra charge. The paid contact-email event only applies to the optional website lookup.
How many agents come with an email and phone number? In our test runs of 4,457 agents across Los Angeles, Tampa, Delaware, and Texas, all 4,457 had a profile email, 4,456 had a phone number, and about 88% listed a website. Results vary by market, and agents far down Zillow's rankings may have less complete profiles.
Why would I use the website email lookup if the profile already has an email?
Some profile emails are lead-routing or team inboxes. The agent's website can show a more direct or business address, often a general one such as info@. It is saved separately as contactEmail, and emailEnrichment.sourcePage shows where it was found. Only addresses that match the agent's name or are general business inboxes on the agent's own site are returned, so many lookups end with no result: in a test of 100 agents in Tampa, 28 lookups found an address and 13 of those differed from the profile email. Only those 13 would be billed.
Can I get every agent in a state? You can walk a state city by city with Whole states, and the number of agents you reach depends on how many cities and search pages Zillow exposes. For example, a complete walk of Delaware visited 71 cities and returned 1,357 agents. Zillow does not offer a full state export, so this Actor cannot guarantee every licensed agent, and very large states take long runs. Set Max agents to size the run.
Why are some agents from other states in my results? Zillow's location search also returns agents who serve an area but are based elsewhere. The Whole states option leaves out agents whose business address is in another state. The Locations option returns them as Zillow does.
Are the sales figures for one agent or a whole team?
Some profiles report team totals. When they do, salesStats.teamDisclaimer carries Zillow's notice, such as "Sales numbers represent all team members".
Do I need to set up a proxy? No. The Actor manages its own proxies, and that cost is included in the event prices.
Can I schedule recurring runs? Yes. Use Apify Schedules to run daily, weekly, or at any interval, then send results to your tools through integrations or the API.
Something is not working. What should I do? Open a ticket in the Issues tab with your run link, and we will look into it.
Other real estate and lead generation Actors
- Realtor.com Scraper: US property listings from Realtor.com
- Homes.com Scraper: property listings from Homes.com
- LoopNet Commercial Property Scraper: commercial real estate listings
- Realtor.ca Property Scraper: Canadian property listings
- YellowPages USA Lead Generator: US local business leads
- Website Email, Phone Numbers & Social Media Profiles Finder: contact details from any website
- LinkedIn B2B Phone Number Scraper: B2B phone numbers from LinkedIn
Is it legal to scrape Zillow agent data?
This Actor collects only information that agents publish on their public Zillow profiles and their own websites. It does not log in or access private data. However, results can include personal data such as names, email addresses, and phone numbers, which laws such as the GDPR and CCPA protect, and outreach is subject to rules such as CAN-SPAM and the TCPA. You are responsible for having a lawful basis for your use, respecting Zillow's terms, and following the rules that apply to you. If you are unsure, consult a lawyer. You can read more in Apify's post on the legality of web scraping.