Zillow Property & Agent Data Scraper
Pricing
Pay per event
Zillow Property & Agent Data Scraper
Extract Zillow property listings with agent contacts (emails, phones), price history, and 70+ data fields. Three search modes: ZIP codes, ZPID list, or any Zillow URL. 40+ filters including tri-state controls for auctions, foreclosures, and new construction. Volume discounts - save up to 37.5%!
Pricing
Pay per event
Rating
5.0
(1)
Developer

Andrey Afanasenko
Actor stats
3
Bookmarked
61
Total users
14
Monthly active users
0.74 hours
Issues response
7 days ago
Last modified
Categories
Share
What does Zillow Property & Agent Data Scraper do?
Zillow Property & Agent Data Scraper extracts comprehensive property listings and real estate agent contact information from Zillow. This Actor provides one of the most complete Zillow datasets available, with 70+ data fields including property details, agent contacts (emails, phones), price history, Walk/Transit scores, and school information. You can search by ZIP codes, process specific ZPID lists, or use any Zillow search URL with 40+ filters for precise targeting.
Key Features
- Three Search Modes: ZIP code discovery, ZPID enrichment, or Zillow URL search
- 70+ Data Fields: Comprehensive property, agent, financial, and location data
- 40+ Filters: Price, beds/baths, home type, amenities, views, rental-specific filters, and more
- Tri-State Controls: Fine-tune auctions, foreclosures, and new construction (Any/Only/Exclude)
- Agent Contacts: Extract real agent names, emails, phone numbers, and broker details
- Enrichment Options: Optional Walk/Transit/Bike scores and full photo galleries
- Platform Advantages: Built-in monitoring, API access, scheduling, and integrations
Operation Modes
This Actor supports three distinct operation modes, each optimized for different use cases:
| Mode | Input | Filters | Enrichment | Best For |
|---|---|---|---|---|
| ZIP Codes | List of ZIP codes | All 40+ filters apply | Walk Score + Photos available | Discovering new properties in specific areas |
| ZPID List | List of Zillow Property IDs | Ignored | Disabled | Enriching known properties with full details |
| Zillow URL | Zillow search results URL | Embedded in URL | Disabled | Using Zillow's UI to configure filters, then scraping results |
Important Notes:
- In ZPID List and Zillow URL modes, search filters and enrichment options configured in the input are ignored
- Filters are embedded directly in the Zillow URL for URL mode
- Enrichment (Walk Score, Photos) is only available in ZIP code mode
How to scrape Zillow data
Step-by-Step Tutorial
- Choose your operation mode (ZIP codes, ZPID list, or Zillow URL)
- Configure your search:
- For ZIP mode: Enter ZIP codes and set filters
- For ZPID mode: Paste Zillow Property IDs
- For URL mode: Copy a Zillow search URL from your browser
- Set enrichment options (ZIP mode only): Enable Walk Score and/or Photos if needed
- Run the Actor and wait for results
- Download your data in JSON, CSV, Excel, or XML format from the Apify Console
Quick Start Examples
Example 1: Search by ZIP Code (ForSale, exclude auctions)
{"mode": "zip","zipCodes": ["90210"],"status_type": "ForSale","maxPropertiesPerZip": 50,"isAuction": "exclude","hasPool": true}
Example 2: Rental Search with Pet Filters
{"mode": "zip","zipCodes": ["10001"],"status_type": "ForRent","rentMinPrice": 2000,"rentMaxPrice": 5000,"beds_min": 2,"largeDogsAllowed": true,"inUnitLaundry": true}
Example 3: Search by Zillow URL
{"mode": "url","zillowUrl": "https://www.zillow.com/.../rentals/?searchQueryState=..."}
Example 4: Process ZPID List
{"mode": "zpid","zpids": ["20521978", "95547747"]}
Input Reference
Operation Mode
mode(required): Choose"zip","zpid", or"url"
ZIP Code Mode Inputs
zipCodes: Array of ZIP codes to search (e.g.,["90210", "10001"])maxPropertiesPerZip: Maximum properties to process per ZIP code (0 = unlimited)
Search Filters (ZIP Mode Only)
status_type:"ForSale","ForRent", or"RecentlySold"price_min,price_max: Price range for ForSale/RecentlySold propertiesrentMinPrice,rentMaxPrice: Rent range for ForRent propertiesbeds_min,beds_max: Bedroom count rangebaths_min,baths_max: Bathroom count rangedoz: Days on Zillow / Sold in Last -"any","1","7","14","30","90","6m","12m"sort:"Homes_for_You","Price_High_Low","Price_Low_High","Newest"keywords: Search keywords (e.g.,"pool, ocean view")
Home Type Filters
isSingleFamily: Include houses (default:true)isTownhouse: Include townhomes (default:true)isMultiFamily: Include multi-family properties (default:false)isCondo: Include condos/co-ops (default:true)isLotLand: Include lots/land (default:false)isManufactured: Include manufactured homes (default:false)isApartment: Include apartments (default:true)
Listing Type & Status
isForSaleByOwner: Include FSBO listings (default:false)isForSaleByAgent: Include agent-listed properties (default:true)isNewConstruction: Tri-state -"any"(default),"only", or"exclude"isAuction: Tri-state -"any"(default),"only", or"exclude"isForSaleForeclosure: Tri-state -"any"(default),"only", or"exclude"includeForeclosed: Add foreclosed properties (excluded by default)includePreForeclosure: Add pre-foreclosure properties (excluded by default)isPendingUnderContract: Only pending/under contract propertiesisAcceptingBackupOffers: Only properties accepting backup offers
Tri-State Filter Behavior:
"any": Show all properties (no filter applied)"only": Show ONLY matching properties"exclude": Hide all matching properties
Property Features
sqft_min,sqft_max: Square footage rangelotSize_min,lotSize_max: Lot size (e.g.,"1/4 acre/10,890 sqft")built_min,built_max: Year built rangeparkingSpots_min: Minimum parking spotshasGarage: Must have garagehasPool: Must have poolhasAirConditioning: Must have A/CisWaterfront: Waterfront properties onlyisBasementFinished: Finished basement onlyisBasementUnfinished: Unfinished basement onlyhoa_max: Maximum HOA fee per month
View Filters
isCityView: City view propertiesisMountainView: Mountain view propertiesisParkView: Park view propertiesisWaterView: Water view properties
Tour Filters
isOpenHousesOnly: Properties with scheduled open housesis3dHome: Properties with 3D tour
Rental-Only Filters (ForRent Status)
Pet Policies:
largeDogsAllowed: Allows large dogssmallDogsAllowed: Allows small dogscatsAllowed: Allows catsnoPets: No pets allowed
Amenities:
inUnitLaundry: In-unit laundryparkingAvailable: On-site parkingfurnished: Furnished rentalshardwoodFloor: Hardwood floorsutilitiesIncluded: Utilities includeddisabledAccess: Disabled accessshortTermLease: Short-term lease availableoutdoorSpace: Outdoor spacecontrolledAccess: Controlled access buildinghighSpeedInternet: High-speed internetelevator: Has elevatoracceptsApplications: Accepts Zillow applicationsincomeRestricted: Income-restricted rentals
School Filters
schools: School types (comma-separated:"elementary, middle, high, public, private, charter")schoolsRating: Minimum school rating (1-10)includeUnratedSchools: Include schools with no rating (default:true)
ZPID Mode Inputs
zpids: Array of Zillow Property IDs (e.g.,["20521978", "95547747"])
Note: Search filters and enrichment options are ignored in ZPID mode.
URL Mode Inputs
zillowUrl: Full Zillow search results URL (copy from your browser after configuring filters on Zillow)
Note: All filters are embedded in the URL. Search filters and enrichment options configured in the input are ignored.
Enrichment Options (ZIP Mode Only)
enrichWalkScore: Fetch Walk, Transit, and Bike scores for each propertyenrichPhotos: Fetch complete photo gallery (default: only main photo included)
What data can Zillow Property & Agent Data Scraper extract?
This Actor extracts 70+ data fields organized into the following categories:
Core Property Information
| Field | Type | Description |
|---|---|---|
zpid | String | Unique Zillow Property ID |
hdpUrl | String | Link to property on Zillow |
price | Number | Current listing price |
status | String | Property status (ForSale, ForRent, etc.) |
propertyDescription | String | Property description |
homeType | String | Property type (SINGLE_FAMILY, CONDO, etc.) |
Location Data
| Field | Type | Description |
|---|---|---|
streetAddress | String | Full street address |
city | String | City name |
state | String | State code |
zipcode | String | ZIP code |
county | String | County name |
neighborhood | String | Neighborhood name |
latitude | Number | Latitude coordinate |
longitude | Number | Longitude coordinate |
Agent & Broker Information
| Field | Type | Description |
|---|---|---|
agentName | String | Listing agent name |
agentEmail | String | Agent email address |
agentEmailSource | String | Email source (property_details, agent_profile_direct, etc.) |
cellPhone | String | Agent phone number |
coAgentName | String | Co-agent name |
coAgentNumber | String | Co-agent phone |
agentLicenseNumber | String | Agent license number |
brokerName | String | Brokerage name |
brokerPhoneNumber | String | Broker phone number |
Financial Data
| Field | Type | Description |
|---|---|---|
zestimate | Number | Zillow's estimated market value |
rentZestimate | Number | Zillow's estimated rent |
pricePerSqft | Number | Price per square foot |
hoaFee | Number | Monthly HOA fee |
propertyTax | Number | Annual property tax |
priceChange | Number | Recent price change amount |
datePriceChanged | String | Date of last price change |
Property Specifications
| Field | Type | Description |
|---|---|---|
bedrooms | Number | Number of bedrooms |
bathrooms | Number | Total bathrooms |
bathroomsFull | Number | Full bathrooms |
bathroomsHalf | Number | Half bathrooms |
livingArea | Number | Living area in square feet |
lotSize | String | Lot size |
yearBuilt | Number | Year built |
stories | Number | Number of stories |
architecturalStyle | String | Architectural style |
parcelNumber | String | Parcel number |
Lot Information
| Field | Type | Description |
|---|---|---|
lotAreaValue | Number | Lot area value |
lotAreaUnit | String | Lot area unit (sqft, acres, etc.) |
Property Features
| Field | Type | Description |
|---|---|---|
hasPool | Boolean | Has pool |
hasGarage | Boolean | Has garage |
garageSpaces | Number | Number of garage spaces |
parking | String | Parking information |
hasBasement | Boolean | Has basement |
view | String | Property views |
heating | String | Heating type |
cooling | String | Cooling type |
appliances | String | Appliances included |
flooring | String | Flooring type |
roofType | String | Roof type |
laundryFeatures | String | Laundry features |
fireplaceFeatures | String | Fireplace features |
communityFeatures | String | Community amenities |
Media & Engagement
| Field | Type | Description |
|---|---|---|
mainPhoto | String | Main property photo URL |
photos | Array | Full photo gallery (when enrichPhotos enabled) |
has3DModel | Boolean | Has 3D model |
hasVideo | Boolean | Has video |
pageViewCount | Number | Page views |
favoriteCount | Number | Favorites count |
daysOnZillow | Number | Days on Zillow |
History & Activity
| Field | Type | Description |
|---|---|---|
lastSoldDate | String | Last sold date |
lastSoldPrice | Number | Last sold price |
lastTaxPaid | Number | Last tax paid |
lastTaxAssessedValue | Number | Last tax assessed value |
priceHistory | Array | Complete price history (sales, listings, price changes) |
openHouseSchedule | String | Open house schedule |
Scores (When enrichWalkScore Enabled)
| Field | Type | Description |
|---|---|---|
walkScore | Number | Walk Score (0-100) |
transitScore | Number | Transit Score (0-100) |
bikeScore | Number | Bike Score (0-100) |
Additional Data
| Field | Type | Description |
|---|---|---|
schools | Array | Nearby schools information |
listingType | String | Listing type (FSBA, FSBO, Foreclosure, etc.) |
Sample Output (JSON)
{"zpid": "20533889","streetAddress": "123 Palm Dr","city": "Beverly Hills","state": "CA","zipcode": "90210","price": 5500000,"status": "ForSale","homeType": "SINGLE_FAMILY","bedrooms": 5,"bathrooms": 4,"livingArea": 3500,"yearBuilt": 2010,"agentName": "Jane Doe","agentEmail": "jane@example.com","agentEmailSource": "property_details","cellPhone": "310-555-0199","brokerName": "Luxury Real Estate Inc.","zestimate": 5600000,"hoaFee": 500,"hasPool": true,"hasGarage": true,"walkScore": 45,"transitScore": 60,"hdpUrl": "https://www.zillow.com/.../20533889_zpid/","mainPhoto": "https://photos.zillowstatic.com/...","photos": ["https://photos.zillowstatic.com/...", "https://photos.zillowstatic.com/..."],"priceHistory": [{"date": "2024-01-15","price": 5500000,"event": "Listed","pricePerSquareFoot": 1571}]}
How much does it cost to scrape Zillow?
This Actor uses Apify's consumption-based pricing model. You pay only for the Compute Units (CUs) consumed during the run. The cost depends on:
- Number of properties processed: Each property enrichment consumes resources
- Enrichment options: Walk Score and Photos require additional API calls
- Search complexity: Multiple ZIP codes and filters may increase processing time
Free Plan: Get started with free CUs to test the Actor
Paid Plans: Scale up with volume discounts - save up to 37.5% on larger plans
The Actor automatically handles rate limiting and budget management to ensure efficient and compliant data extraction. You can set a maximum budget limit per run to control costs.
Tips for Best Results
Optimizing Your Search
- Use specific filters: Narrow down results with precise filters to reduce processing time and costs
- Limit properties per ZIP: Set
maxPropertiesPerZipto control the number of results - Choose the right mode: Use ZIP mode for discovery, ZPID mode for enrichment, URL mode for Zillow-configured searches
- Enable enrichment selectively: Only enable Walk Score and Photos when needed, as they require additional API calls
Understanding Tri-State Filters
The tri-state filters (isNewConstruction, isAuction, isForSaleForeclosure) provide precise control:
- "any": No filtering (default)
- "only": Show ONLY matching properties
- "exclude": Hide all matching properties
Example: Set "isAuction": "exclude" to hide all auction properties from your results.
Mode-Specific Behavior
- ZIP Mode: All filters apply, enrichment available
- ZPID Mode: Filters ignored, enrichment disabled (properties are enriched with basic data)
- URL Mode: Filters embedded in URL, enrichment disabled
FAQ
Is it legal to scrape Zillow?
Our scrapers are ethical and extract only publicly available property listing data. We do not extract private user data. However, you should be aware that results may contain personal information (agent contacts). Personal data is protected by GDPR in the European Union and other regulations worldwide. You should not scrape personal data unless you have a legitimate reason. If unsure, consult legal counsel.
What's the difference between ZIP, ZPID, and URL modes?
- ZIP Mode: Search by location with full filter control - best for discovering new properties
- ZPID Mode: Process specific properties by ID - best for enriching known listings
- URL Mode: Use Zillow's search interface, then scrape results - best when you want to use Zillow's UI for filtering
Can I get agent emails and phone numbers?
Yes! The Actor extracts agent contact information including names, emails, and phone numbers when available. The agentEmailSource field indicates how the email was obtained.
How do I get a Zillow URL for URL mode?
- Go to Zillow.com and configure your search filters
- Copy the full URL from your browser's address bar
- Paste it into the
zillowUrlinput field
Why are some fields null?
Some properties may not have complete data available. Fields like agentEmail, walkScore, or photos may be null if:
- The data isn't available on Zillow
- Enrichment options weren't enabled (for Walk Score/Photos)
- The property listing is incomplete
Can I schedule runs?
Yes! Use Apify's scheduling feature to run the Actor automatically at set intervals. This is perfect for monitoring new listings or tracking price changes.
How do I access the data via API?
All data is available through Apify's REST API. See the API tab in the Actor detail page for endpoints and examples.
Support
If you encounter any issues or have feature requests:
- Issues Tab: Report bugs or request features in the Actor's Issues tab
- Contact: Reach out directly for custom solutions or enterprise needs
Related Actors
Looking for more real estate data? Check out other Actors in the Apify Store for complementary data sources and tools.