Zillow ZIP Code Search Scraper Pro
Pricing
$29.00/month + usage
Zillow ZIP Code Search Scraper Pro
Extract Zillow property listings in seconds. Search rentals, sales & sold properties by zip code or city with 15+ filters: price ranges, home types, days on market, foreclosures & more. Process 1000 listings in <10 seconds. $29/month unlimited usage. No Zillow account needed.
0.0 (0)
Pricing
$29.00/month + usage
0
1
0
Last modified
a day ago
🏡 Zillow ZIP Code Search Scraper Pro | Lightning-Fast Property Data Extraction (2025)
The most advanced Zillow ZIP Search property scraper - Extract rental, sale, and sold listings with 15+ advanced filters in under 10 seconds.
Process 1000 listings in less than 10 seconds with batch location support, advanced property filters, and unlimited monthly usage. Search by zip code or city name across rentals, sales, and recently sold properties with precision filtering for price ranges, home types, listing status, and time on market.
⚡ Blazing Fast | 📉 Price Drop Tracking | 🎯 15+ Filters | 💰 $29/Month
💰 Rental Pricing - Simple & Predictable
$29 per month - Unlimited locations, unlimited results, unlimited runs, no hidden fees.
- ✅ Unlimited listings per month - No per-result charges
- ✅ Unlimited runs - Schedule as often as needed
- ✅ All premium features - 15+ filters, batch processing, proxy support
- ✅ All property types - Rentals, sales, sold properties
- ✅ Cancel anytime - No long-term contracts
Perfect for real estate investors, data analysts, property managers, and market researchers who need reliable, high-volume property data without breaking the bank.
⚡ Key Features
Lightning-Fast Performance
- Sub-10-second extraction - Process 1000 listings in under 10 seconds
- Batch location processing - Scrape multiple zip codes or cities in a single run
- Parallel execution - Concurrent location processing for maximum speed
- Smart pagination - Efficiently handle large result sets (up to 1000 per location)
- Reliable proxy support - Built-in Apify proxy integration for consistent access
📊 Complete Data Extraction
- Three property types - For Rent, For Sale, Recently Sold
- Raw API responses - Complete property data with all available fields
- Metadata enrichment - Timestamps, location tracking, pagination info
- Full listing details - Addresses, prices, features, photos, agent info
- Market statistics - Total available listings, result counts per location
🎯 Advanced Filtering System
- Price ranges - Min/max monthly rent or sale prices
- Home types - Houses, condos, apartments, townhomes, multi-family, manufactured, land
- Property features - Living area (sqft), bedrooms (min/max)
- Listing types - Agent listed, FSBO, new construction, foreclosures, auctions
- Time-based filters - Days on Zillow (1 day to 36 months)
- Status filters - Price reductions, pending/under contract, backup offers
- Space preferences - Entire places vs. room rentals (for rentals)
- Flexible sorting - Recommended (priority score), recently changed, newest, price, bedrooms, bathrooms
🔄 Smart Location Handling
- Multiple format support - Zip codes ("77494") or city names ("New York NY")
- Automatic resolution - Converts locations to geographic boundaries
- Batch processing - Process dozens of locations efficiently
- Error tolerance - Continues processing if individual locations fail
- Result tracking - Detailed success/failure reporting per location
📉 Price Change Tracking
- Instant deal finder - Filter exclusively for price reductions with
showOnlyPriceReductions - Price drop alerts - Every listing includes exact reduction amount and date changed
- Motivated seller identification - Find properties with recent price cuts
- Market trend analysis - Track pricing adjustments across neighborhoods
- Competitive intelligence - Monitor when competitors adjust pricing
🚀 Quick Start
Note: If you don't specify propertyType, the actor defaults to forRent (rental listings).
Basic - Rental Search by Zip Code
{"locations": ["77494", "90210"],"propertyType": "forRent"}
🎯 Use Cases
For Real Estate Investors
- Price drop opportunities - Use
showOnlyPriceReductionsto instantly find motivated sellers and negotiate better deals - Identify investment opportunities - Find undervalued properties with price reduction filters
- Market trend analysis - Compare prices across multiple zip codes and neighborhoods
- Foreclosure tracking - Monitor foreclosures, auctions, and pre-foreclosures
- New construction discovery - Track new developments and coming-soon listings
- ROI calculations - Analyze sold properties to estimate potential returns
- Portfolio expansion - Scout new markets with comprehensive location searches
For Data Analysts & Researchers
- Market research - Extract bulk property data for statistical analysis
- Price trend analysis - Analyze price change patterns, frequency of reductions, and market elasticity
- Price modeling - Build predictive models with historical sold data
- Trend identification - Track market movements across time periods
- Competitive analysis - Compare inventory and pricing across regions
- Custom dashboards - Export data to BI tools for visualization
- Academic research - Gather datasets for housing market studies
For Property Managers & Real Estate Professionals
- Rental market insights - Monitor rental prices and availability by neighborhood
- Competitor pricing intelligence - Track when competing properties reduce prices to optimize your pricing strategy
- Competitive positioning - Track competitor listings and pricing strategies
- Client prospecting - Identify sellers and buyers in target markets
- Market reports - Generate comprehensive property reports for clients
- Inventory tracking - Monitor days on market and listing status changes
- Neighborhood analysis - Compare property features across zip codes
Advanced Searches
Investment Property Search
{"locations": ["Miami FL", "Orlando FL"],"propertyType": "forSale","listingTypes": ["foreclosure", "foreclosed", "auction"],"minPrice": 100000,"maxPrice": 300000,"homeTypes": ["singleFamily"],"daysOnZillow": "1_week","sortBy": "price_low"}
Complete - Targeted Rental Analysis
{"locations": ["New York NY", "Brooklyn NY", "Queens NY"],"propertyType": "forRent","homeTypes": ["singleFamily", "townhome"],"minPrice": 2500,"maxPrice": 4000,"minBedrooms": 3,"maxBedrooms": 4,"minLivingAreaSqft": 1500,"maxLivingAreaSqft": 2500,"includeRoomForRent": false,"daysOnZillow": "1_month","sortBy": "price_low"}
📝 Input Parameters
| Parameter | Type | Description | Default |
|---|---|---|---|
| locations | array | Zip codes (e.g., "77494") or city names with state (e.g., "New York NY") | Required |
| propertyType | string | Type of listings: forRent, forSale, or sold | forRent |
| homeTypes | array | Property types to include: singleFamily, condo, apartment, townhome, multiFamily, manufactured, land. Leave empty for "Any". | Optional |
| listingTypes | array | For Sale only: fsba (Agent Listed), fsbo (Owner/FSBO), newConstruction, comingSoon, auction, foreclosure, foreclosed, preforeclosure | Optional |
| minPrice | integer | Minimum price (monthly rent for rentals, total price for sales/sold) | Optional |
| maxPrice | integer | Maximum price (monthly rent for rentals, total price for sales/sold) | Optional |
| minBedrooms | integer | Minimum number of bedrooms | Optional |
| maxBedrooms | integer | Maximum number of bedrooms | Optional |
| minLivingAreaSqft | integer | Minimum living area in square feet | Optional |
| maxLivingAreaSqft | integer | Maximum living area in square feet | Optional |
| daysOnZillow | string | Time filter: 1_day, 1_week, 2_weeks, 1_month, 3_months, 6_months, 12_months, 24_months, 36_months | Optional |
| sortBy | string | Sort order: rentalPriorityScore (Recommended), recentlyChanged, newest, price_high, price_low, bedrooms, bathrooms | rentalPriorityScore |
| showOnlyPriceReductions | boolean | For Sale only: Show only listings with price drops | false |
| includePendingAndUnderContract | boolean | Include pending or under contract listings | false |
| includeAcceptingBackupOffers | boolean | Include listings accepting backup offers | false |
| includeRoomForRent | boolean | Rentals only: Include room-for-rent listings (false = entire places only) | false |
| maxResultsPerLocation | integer | Maximum results to scrape per location (1-1000) | 1000 |
Home Types by Property Type
For Rentals (4 types available):
- Houses (
singleFamily) - Condos/Co-ops (
condo) - Apartments (
apartment) - Townhomes (
townhome)
For Sales & Sold (7 types available):
- Houses (
singleFamily) - Multi-family (
multiFamily) - Manufactured (
manufactured) - Lots/Land (
land) - Condos/Co-ops (
condo) - Apartments (
apartment) - Townhomes (
townhome)
Note: Invalid home types for the selected property type are automatically filtered.
Sort Order Options
The actor supports multiple sorting options with Recommended (Priority Score) as the default:
rentalPriorityScore(Recommended) - Zillow's algorithm for optimal listing relevance based on multiple quality signalsrecentlyChanged- Listings with recent updates (price changes, status updates)newest- Most recently listed properties firstprice_high/price_low- Sort by price (descending/ascending)bedrooms/bathrooms- Sort by number of rooms (most to least)
Tip: Use the default rentalPriorityScore for balanced results, or switch to price_low/price_high for budget-focused searches.
📊 Understanding the Data Structure
Each scraped item follows this structure:
item├── rawData│ ├── property ← All property details here│ │ ├── zpid ← Zillow Property ID│ │ ├── location ← {latitude, longitude}│ │ ├── address ← {streetAddress, city, state, zipcode}│ │ ├── media ← Photos, videos, VR tours│ │ ├── rental ← Rental-specific info│ │ ├── price ← {value, pricePerSquareFoot}│ │ ├── listing ← {listingStatus, marketingStatus}│ │ ├── estimates ← {zestimate, rentZestimate}│ │ └── ... 40+ more fields│ └── resultType ← "property" or "propertyGroup"├── scrapedAt ← ISO timestamp└── location ← Search location
Quick Access Examples:
// Access property detailsconst zpid = item.rawData.property.zpid;const address = item.rawData.property.address.streetAddress;const price = item.rawData.property.price.value;// Check if it's an apartment complexconst isComplex = item.rawData.resultType === "propertyGroup";// Get metadataconst scrapedTime = item.scrapedAt;const searchLocation = item.location;
📤 Output
Zillow ZIP Code Search Scraper Pro returns complete, unmodified API responses with all available property data. Each result includes:
Top-Level Structure
rawData- Complete API response containing all property informationscrapedAt- ISO 8601 timestamp of when the data was extractedlocation- The search location (zip code or city)resultType- Either "property" (individual listing) or "propertyGroup" (apartment complex)
Property Data (within rawData.property)
All data is nested under rawData.property and includes:
- Identification:
zpid(Zillow Property ID),ssid,providerListingID - Location:
locationobject (latitude/longitude),addressobject (street, city, state, zipcode, optional buildingId) - Pricing:
- Individual properties:
price.value,price.pricePerSquareFoot - Apartment complexes:
minPrice,maxPrice,minBaseRent,maxBaseRent,unitsGrouparray
- Individual properties:
- Property Details:
bedrooms,bathrooms,livingArea,propertyType,factsAndFeatures - Media: Complete
mediaobject withpropertyPhotoLinks,allPropertyPhotos(high-resolution URLs),thirdPartyPhotoLinks(Street View, satellite), VR/video flags - Rental Info:
rentalobject withareApplicationsAccepted,isRoomForRent,isBuildToRent,baseRent,marketingTreatments - Listing Status:
listingobject withlistingStatus,marketingStatus,listingSubType - Time Info:
listingDateTimeOnZillow,daysOnZillow,bestGuessTimeZone - Estimates:
estimatesobject withzestimate,rentZestimate(Zillow's automated valuations) - Tax Info:
taxAssessmentobject withtaxAssessedValue,taxAssessmentYear - Display Info:
hdpView,propertyDisplayRules,listCardRecommendation,personalizedResult - Flags:
isFeatured,isShowcaseListing,isUnmappable,isPreforeclosureAuction,hasFloorPlan - Additional:
currency,country,region,zillowOwnedProperty
Apartment Complexes (resultType: "propertyGroup") include additional fields:
title- Complex namegroupType- "apartmentComplex"matchingHomeCount- Number of available unitsunitsGroup- Array of unit configurations with bedrooms and price ranges
Output Example - Rental Property (Single Family Home)
{"rawData": {"property": {"zpid": 117506944,"location": {"latitude": 29.735218,"longitude": -95.79938},"address": {"streetAddress": "4530 Ferndale Meadows Dr","zipcode": "77494","city": "Katy","state": "TX"},"media": {"propertyPhotoLinks": {"highResolutionLink": "https://photos.zillowstatic.com/fp/63c087a2f63d388fe431ea21526fbdbc-p_f.jpg"},"thirdPartyPhotoLinks": {"streetViewLink": "https://maps.googleapis.com/maps/api/streetview?size=1440x448&location=...","satelliteLink": "https://maps.googleapis.com/maps/api/staticmap?...","streetViewMetadataLink": "https://maps.googleapis.com/maps/api/streetview/metadata?..."},"hasVRModel": false,"hasVideos": false,"hasIMX": false,"hasApprovedThirdPartyVirtualTour": false,"allPropertyPhotos": {"highResolution": ["https://photos.zillowstatic.com/fp/63c087a2f63d388fe431ea21526fbdbc-p_f.jpg","https://photos.zillowstatic.com/fp/6d0e2ebd8b0528dc247c754687c694ce-p_f.jpg","https://photos.zillowstatic.com/fp/62c5e4112544eda2e3c7feed5c464bc8-p_f.jpg"]}},"isFeatured": true,"isShowcaseListing": false,"rental": {"areApplicationsAccepted": true,"isRoomForRent": false,"isBuildToRent": false,"isRentByBed": false,"marketingTreatments": ["paid","zillowRentalManager"],"baseRent": 2290.0,"hasVirtualTour": false},"currency": "usd","country": "usa","listingDateTimeOnZillow": 1759972785555,"bestGuessTimeZone": "America/Chicago","isUnmappable": false,"listCardRecommendation": {"flexFieldRecommendations": [{"displayString": "Apply instantly","flexFieldType": "unknown","contentType": "frZillowApplication"},{"displayString": "28 days ago","flexFieldType": "unknown","contentType": "timeOnInfo"}]},"bathrooms": 2.0,"factsAndFeatures": {"fullBathroomCount": 2},"bedrooms": 3,"livingArea": 2253,"propertyType": "singleFamily","listing": {"listingStatus": "forRent","marketingStatus": "active","palsId": "100066001_a8be5a8f9646e36ebf645c0856841e3a92f092c8052869854262d7a38742dc33","providerListingID": "4ux8tfwuxmywg","listingSubType": {}},"daysOnZillow": 28,"isPreforeclosureAuction": false,"price": {"value": 2290,"pricePerSquareFoot": 1},"estimates": {"zestimate": 390800,"rentZestimate": 2284},"zillowOwnedProperty": {"isZillowOwned": false},"taxAssessment": {"taxAssessedValue": 417269,"taxAssessmentYear": "2025"},"hdpView": {"listingStatus": "forRent","price": 2290,"hdpUrl": "/homedetail/MobileAppHDPShopperPlatformServicePage.htm?fromApp=true&p=android&variant=FOR_RENT#zpid=117506944"},"region": {},"personalizedResult": {"isViewed": false,"userRecommendation": {"isRecommendedForYou": false,"homeInsight": "Formal dining room"}},"propertyDisplayRules": {"canShowAddress": true,"canShowOnMap": true,"agent": {},"mls": {},"builder": {},"soldByOffice": {},"listingCategory": "category2"},"ssid": 100066,"hasFloorPlan": false},"resultType": "property"},"scrapedAt": "2025-11-06T11:13:30.918003+00:00","location": "77494"}
Output Example - Rental Property (Apartment Complex)
{"rawData": {"property": {"zpid": 344571164,"location": {"latitude": 29.761017,"longitude": -95.88191},"address": {"streetAddress": "2011 Texas Heritage Pkwy","zipcode": "77494","city": "Katy","state": "TX","buildingId": 2747705420},"media": {"propertyPhotoLinks": {"highResolutionLink": "https://photos.zillowstatic.com/fp/80ed47c4da42c813fe0e43391e8ac485-p_f.jpg"},"hasVRModel": false,"hasVideos": false,"hasIMX": false,"hasApprovedThirdPartyVirtualTour": false,"allPropertyPhotos": {"highResolution": ["https://photos.zillowstatic.com/fp/80ed47c4da42c813fe0e43391e8ac485-p_f.jpg","https://photos.zillowstatic.com/fp/fef34c2667fb8643014fd2935c8fb87f-p_f.jpg"]}},"title": "The Vic at Jordan Ranch","isFeatured": true,"isShowcaseListing": false,"rental": {"areApplicationsAccepted": false,"isRoomForRent": false,"isBuildToRent": false,"marketingTreatments": ["trustedListing","paid","multiFamilySalesListing","paidMultifamily","multifamilyPremium"]},"currency": "usd","country": "usa","groupType": "apartmentComplex","listingDateTimeOnZillow": 1762363709562,"bestGuessTimeZone": "America/Chicago","isUnmappable": false,"listCardRecommendation": {"flexFieldRecommendations": [{"displayString": "22 available units","flexFieldType": "unknown","contentType": "frUnitsAvailable"}]},"matchingHomeCount": 22,"listingStatus": "forRent","providerListingID": "3bbwshytbu75j","minPrice": 1246.0,"maxPrice": 2294.0,"unitsGroup": [{"bedrooms": 0,"minPrice": 1246,"isRoomForRent": false},{"bedrooms": 1,"minPrice": 1299,"isRoomForRent": false},{"bedrooms": 2,"minPrice": 1902,"isRoomForRent": false}],"minBaseRent": 1246.0,"maxBaseRent": 2294.0},"resultType": "propertyGroup"},"scrapedAt": "2025-11-06T11:13:30.918003+00:00","location": "77494"}
Note: Apartment complexes return resultType: "propertyGroup" with multiple units, while individual properties return resultType: "property". The structure differs slightly - property groups have minPrice/maxPrice and unitsGroup arrays instead of single price values.
Output Example - For Sale Property
{"rawData": {"property": {"zpid": 245008087,"location": {"latitude": 40.68856,"longitude": -73.99047},"address": {"streetAddress": "251 Pacific St APT 17","zipcode": "11201","city": "Brooklyn","state": "NY","buildingId": 135520},"media": {"propertyPhotoLinks": {"highResolutionLink": "https://photos.zillowstatic.com/fp/7639f4703e7be99316f1ec99684f843d-p_f.jpg"},"thirdPartyPhotoLinks": {"streetViewLink": "https://maps.googleapis.com/maps/api/streetview?size=1440x448&location=...","satelliteLink": "https://maps.googleapis.com/maps/api/staticmap?...","streetViewMetadataLink": "https://maps.googleapis.com/maps/api/streetview/metadata?..."},"hasVRModel": false,"hasVideos": false,"hasIMX": false,"hasApprovedThirdPartyVirtualTour": false,"allPropertyPhotos": {"highResolution": ["https://photos.zillowstatic.com/fp/7639f4703e7be99316f1ec99684f843d-p_f.jpg","https://photos.zillowstatic.com/fp/baafda5dd67d9a248d5844da17990d6b-p_f.jpg","https://photos.zillowstatic.com/fp/802dc45863f191b35f2a264718046700-p_f.jpg"]}},"isFeatured": false,"isShowcaseListing": false,"rental": {"areApplicationsAccepted": false,"hasVirtualTour": false},"currency": "usd","country": "usa","listingDateTimeOnZillow": 1756771200000,"bestGuessTimeZone": "America/New_York","isUnmappable": false,"listCardRecommendation": {"flexFieldRecommendations": [{"displayString": "Open: Sun 2:30-3:30pm (11/9)","flexFieldType": "openHouse","contentType": "openHouse"},{"displayString": "Price cut: $26,000 (11/4)","flexFieldType": "priceCut","contentType": "priceCut"},{"displayString": "Modern fixtures","flexFieldType": "homeInsight","contentType": "homeInsight"}]},"bathrooms": 1.0,"factsAndFeatures": {"halfBathroomCount": 0,"fullBathroomCount": 1},"bedrooms": 1,"livingArea": 0,"yearBuilt": 1914,"propertyType": "condo","listing": {"listingStatus": "forSale","marketingStatus": "active","palsId": "6955001_S1787428","listingSubType": {"isOpenHouse": true,"isFSBA": true}},"daysOnZillow": 65,"isPreforeclosureAuction": false,"openHouseShowingList": [{"startTime": 1762716600000,"endTime": 1762720200000}],"price": {"value": 899000,"changedDate": 1762232400000,"priceChange": -26000},"estimates": {"rentZestimate": 4210},"zillowOwnedProperty": {"isZillowOwned": false},"taxAssessment": {"taxAssessedValue": 2406000,"taxAssessmentYear": "2018"},"hdpView": {"listingStatus": "forSale","price": 899000,"hdpUrl": "/homedetail/MobileAppHDPShopperPlatformServicePage.htm?fromApp=true&p=android&variant=FOR_SALE#zpid=245008087"},"region": {},"personalizedResult": {"isViewed": false},"propertyDisplayRules": {"canShowAddress": true,"canShowOnMap": true,"agent": {},"mls": {"brokerName": "Listing by: Corcoran","mustDisplayBrokerName": true},"builder": {},"soldByOffice": {},"listingCategory": "category1"},"ssid": 6955,"hasFloorPlan": false},"resultType": "property"},"scrapedAt": "2025-11-06T11:27:16.812270+00:00","location": "New York NY"}
Output Example - Sold Property
Note: Sold properties have similar structure to For Sale properties, with additional fields like dateSold, listPrice, and priceChange showing the sales history.
{"rawData": {"property": {"zpid": 456789123,"location": {"latitude": 25.7907,"longitude": -80.1300},"address": {"streetAddress": "321 Ocean Boulevard","city": "Miami Beach","state": "FL","zipcode": "33139"},"media": {"propertyPhotoLinks": {"highResolutionLink": "https://photos.zillowstatic.com/fp/example-photo.jpg"},"hasVRModel": false,"hasVideos": false,"allPropertyPhotos": {"highResolution": ["https://photos.zillowstatic.com/fp/example-photo-1.jpg","https://photos.zillowstatic.com/fp/example-photo-2.jpg"]}},"bedrooms": 3,"bathrooms": 3.0,"livingArea": 2200,"yearBuilt": 2018,"propertyType": "condo","listing": {"listingStatus": "sold","marketingStatus": "sold"},"daysOnZillow": 67,"price": {"value": 1250000,"listPrice": 1395000,"priceChange": -145000,"dateSold": 1733961600000},"estimates": {"zestimate": 1265000},"hdpView": {"listingStatus": "sold","price": 1250000,"hdpUrl": "/homedetail/MobileAppHDPShopperPlatformServicePage.htm?fromApp=true&p=android&variant=SOLD#zpid=456789123"},"propertyDisplayRules": {"canShowAddress": true,"canShowOnMap": true}},"resultType": "property"},"scrapedAt": "2025-11-06T11:27:16.812270+00:00","location": "Miami FL"}
💡 Advanced Usage
Price Drop Monitoring for Investment Opportunities
Track properties with recent price reductions to identify motivated sellers:
{"locations": ["Los Angeles CA", "San Diego CA", "San Francisco CA"],"propertyType": "forSale","showOnlyPriceReductions": true,"minLivingAreaSqft": 1500,"maxPrice": 800000,"daysOnZillow": "3_months","sortBy": "recentlyChanged"}
Foreclosure & Auction Discovery
Find distressed properties for investment:
{"locations": ["Phoenix AZ", "Las Vegas NV", "Tucson AZ"],"propertyType": "forSale","listingTypes": ["foreclosure", "foreclosed", "auction", "preforeclosure"],"homeTypes": ["singleFamily", "multiFamily"],"maxPrice": 350000,"sortBy": "price_low"}
Luxury Rental Market Analysis
Research high-end rental inventory:
{"locations": ["90210", "90211", "90077"],"propertyType": "forRent","homeTypes": ["singleFamily"],"minPrice": 10000,"minBedrooms": 4,"minLivingAreaSqft": 4000,"includeRoomForRent": false,"sortBy": "price_high","maxResultsPerLocation": 500}
Recently Sold Comparative Market Analysis
Analyze recent sales for pricing insights:
{"locations": ["Seattle WA", "Bellevue WA"],"propertyType": "sold","homeTypes": ["singleFamily", "townhome"],"minBedrooms": 3,"maxBedrooms": 5,"daysOnZillow": "6_months","sortBy": "price_low"}
New Construction Tracker
Monitor new developments and coming-soon listings:
{"locations": ["Austin TX", "Round Rock TX", "Cedar Park TX"],"propertyType": "forSale","listingTypes": ["newConstruction", "comingSoon"],"minBedrooms": 3,"sortBy": "newest"}
🔌 API Integration
Python
from apify_client import ApifyClient# Initialize the Apify clientclient = ApifyClient("your_apify_token")# Prepare actor inputrun_input = {"locations": ["77494", "90210", "Miami FL"],"propertyType": "forRent","homeTypes": ["singleFamily", "townhome"],"minPrice": 2000,"maxPrice": 4000,"minBedrooms": 3,"sortBy": "price_low"}# Run the actorprint("Starting Zillow scraper...")run = client.actor("your-actor-id").call(run_input=run_input)# Fetch results from the datasetprint("Fetching results...")for item in client.dataset(run["defaultDatasetId"]).iterate_items():prop = item["rawData"]["property"]# Handle both individual properties and apartment complexesif item["rawData"].get("resultType") == "propertyGroup":print(f"Complex: {prop.get('title', 'N/A')}")print(f"Address: {prop['address']['streetAddress']}")print(f"Price Range: ${prop['minPrice']} - ${prop['maxPrice']}")print(f"Available Units: {prop['matchingHomeCount']}")else:print(f"Address: {prop['address']['streetAddress']}")print(f"Price: ${prop['price']['value']}")print(f"Beds/Baths: {prop['bedrooms']}/{prop['bathrooms']}")print(f"Sqft: {prop.get('livingArea', 'N/A')}")print(f"Days on Zillow: {prop['daysOnZillow']}")print(f"Location: {prop['address']['city']}, {prop['address']['state']}")print(f"Scraped: {item['scrapedAt']}")print("-" * 50)
JavaScript/TypeScript
import { ApifyClient } from 'apify-client';// Initialize the Apify clientconst client = new ApifyClient({token: 'your_apify_token',});// Prepare actor inputconst input = {locations: ['77494', '90210', 'Miami FL'],propertyType: 'forSale',listingTypes: ['foreclosure', 'auction'],maxPrice: 300000,homeTypes: ['singleFamily'],daysOnZillow: '1_week',sortBy: 'price_low'};// Run the actorconsole.log('Starting Zillow scraper...');const run = await client.actor('your-actor-id').call(input);// Fetch results from the datasetconsole.log('Fetching results...');const { items } = await client.dataset(run.defaultDatasetId).listItems();items.forEach((item) => {const prop = item.rawData.property;// Handle both individual properties and apartment complexesif (item.rawData.resultType === "propertyGroup") {console.log(`Complex: ${prop.title || 'N/A'}`);console.log(`Address: ${prop.address.streetAddress}`);console.log(`Price Range: $${prop.minPrice} - $${prop.maxPrice}`);console.log(`Available Units: ${prop.matchingHomeCount}`);} else {console.log(`Address: ${prop.address.streetAddress}`);console.log(`Price: $${prop.price.value}`);console.log(`Beds/Baths: ${prop.bedrooms}/${prop.bathrooms}`);console.log(`Sqft: ${prop.livingArea || 'N/A'}`);console.log(`Days on Zillow: ${prop.daysOnZillow}`);}console.log(`Location: ${prop.address.city}, ${prop.address.state}`);console.log(`Scraped: ${item.scrapedAt}`);console.log('-'.repeat(50));});
Node.js with Scheduled Runs
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'your_apify_token' });// Create a scheduled run (daily at 9 AM)const schedule = await client.schedules().create({name: 'Daily Zillow Market Monitor',actorId: 'your-actor-id',cronExpression: '0 9 * * *', // Daily at 9 AMtimezone: 'America/New_York',input: {locations: ['New York NY', 'Brooklyn NY'],propertyType: 'forRent',minPrice: 2500,maxPrice: 5000,sortBy: 'recentlyChanged'}});console.log(`Schedule created: ${schedule.id}`);
📊 Data Export
Export your scraped property data in multiple formats:
- JSON - Perfect for programmatic analysis, API integration, and data pipelines
- CSV - Import directly into spreadsheets for sorting, filtering, and reporting
- Excel - Create professional reports with formatting and formulas
- RSS - Set up real-time feeds for monitoring new listings
🤖 Automation
Scheduled Runs
Set up automated scraping on your schedule:
- Daily monitoring - Track new listings and price changes every morning
- Weekly reports - Generate comprehensive market reports every Monday
- Monthly analysis - Deep-dive market trends on the 1st of each month
Webhooks
Receive real-time notifications when scraping completes:
- Integration endpoints - Send data directly to your business intelligence tools
- Slack notifications - Get alerts in your team channels
- Email reports - Automated delivery of scraped data
API Access
Build custom workflows and integrations:
- Pipeline integration - Feed data into your analytics platforms
- CRM sync - Automatically update your customer relationship management system
- Dashboard updates - Power real-time property market dashboards
🎯 Best Practices
Performance Optimization
- Use specific zip codes instead of broad city names for more specific results
- Batch similar locations together in a single run for efficiency
- Use time-based filters (
daysOnZillow) to focus on recent listings
Real Estate Investment
- Combine
showOnlyPriceReductionswithdaysOnZillowfilters to find motivated sellers - Track foreclosures and auctions with
listingTypesfilters - Use
soldproperty type to analyze recent comparables for valuation - Monitor multiple zip codes in target investment areas
- Set up scheduled runs to catch new opportunities immediately
Market Research & Analysis
- Scrape both
forRentandforSaleto understand market dynamics - Use bedroom and sqft filters to segment property classes
- Export data to CSV/Excel for statistical analysis
- Compare multiple cities or neighborhoods in parallel
- Track price changes over time with scheduled runs
Rental Property Management
- Filter for entire places only with
includeRoomForRent: false - Use price ranges to find properties in your target demographic
- Monitor competitor listings with
recentlyChangedsort order - Track days on market to identify pricing issues
- Set up alerts for new listings in your service area
❓ FAQ
Q: What data does the Zillow ZIP Code Search Scraper Pro extract? A: The actor extracts complete property information including zpid, address, price, bedrooms, bathrooms, square footage, lot size, property type, listing status, days on Zillow, photos, agent details, and much more.
Q: How many properties can I scrape? A: You can scrape up to 1000 properties per location. With unlimited monthly runs at $29/month, you can extract millions of listings without additional costs.
Q: Do I need a Zillow account? A: No Zillow account or login is required. The actor extracts publicly available listing data.
Q: What's the cost? A: The Zillow ZIP Code Search Scraper Pro uses a simple rental pricing model: $29 per month for unlimited locations, unlimited listings, and unlimited runs. No hidden fees or per-result charges.
Q: How current is the data? A: Data is extracted in real-time from Zillow's live listings. Properties reflect the current state at the time of scraping.
Q: Are there rate limits? A: The actor includes built-in rate limit handling with automatic retries and proxy support to ensure reliable extraction without manual intervention.
Q: Can I filter by specific criteria? A: Yes! The actor supports 15+ filter parameters including price ranges, home types, bedrooms, square footage, listing types, days on market, and more. See the Input Parameters section for complete details.
Q: What's the difference between home types for rentals vs. sales? A: Rentals support 4 home types (Houses, Condos, Apartments, Townhomes), while For Sale and Sold properties support all 7 types (adds Multi-family, Manufactured, Lots/Land). Invalid types are automatically filtered based on your property type selection.
Q: Can I search multiple locations at once?
A: Absolutely! The locations parameter accepts arrays of zip codes and city names. The actor processes them in parallel for maximum efficiency.
Q: How long does scraping take? A: The actor usually processes 1000 listings in under 10 seconds.
Q: Can I track price reductions?
A: Yes! Use the showOnlyPriceReductions parameter (For Sale only) to filter exclusively for listings with recent price drops - perfect for finding motivated sellers.
Q: What formats can I export data in? A: You can export in JSON, CSV, Excel, and RSS formats directly from the Apify platform.
Q: Can I schedule automated runs? A: Yes! Set up scheduled runs (daily, weekly, monthly) through the Apify platform to automatically monitor markets and track changes over time.
Q: Is proxy support included? A: Yes, the actor includes built-in Apify proxy support for reliable access.
Q: How do I access the property data from the results?
A: All property data is nested under rawData.property. Here's how to access common fields:
// JavaScript/TypeScriptconst property = item.rawData.property;const address = property.address.streetAddress;const price = property.price.value;const zpid = property.zpid;
# Pythonproperty_data = item["rawData"]["property"]address = property_data["address"]["streetAddress"]price = property_data["price"]["value"]zpid = property_data["zpid"]
See the "Understanding the Data Structure" section above for a complete overview.
🚀 Getting Started
1. Account Setup
- Sign up for Apify (free tier available, no credit card required)
- Subscribe to Zillow Scraper Pro for $29/month
- Get your API token from account settings
2. Configure Your First Run
- Add locations - Enter zip codes or city names (e.g., "77494", "New York NY")
- Select property type - Choose For Rent, For Sale, or Recently Sold
- Apply filters - Set price ranges, home types, bedrooms, square footage, etc.
- Set limits - Define
maxResultsPerLocation(default: 1000)
3. Run & Monitor
- Click "Start" to begin extraction
- Monitor progress in real-time through the run log
- Download results in your preferred format (JSON, CSV, Excel)
- Review data quality and adjust filters as needed
4. Integrate & Automate
- Use the Apify API to integrate with your applications
- Set up webhooks for real-time notifications
- Create scheduled runs for automated monitoring
- Build custom dashboards with exported data
- Scale to multiple locations and property types
📧 Support
- Email: max@mapa.slmail.me
- Issues: GitHub Issues tab
- Feature Requests: Email or submit via issues
- Response Time: Typically within 24 hours
⚖️ Legal Compliance
This actor extracts publicly available property listing data from Zillow. Users are responsible for complying with Zillow's Terms of Service and applicable data protection regulations (GDPR in the EU, CCPA in the US).
Responsible Use: This tool is intended for legitimate real estate research, market analysis, and investment purposes. Do not use scraped data for spam, harassment, or any activities that violate privacy laws or platform terms of service.
🚀 Start Extracting Zillow Property Data Now
Unlock powerful real estate insights with the most advanced Zillow ZIP Code Search scraper - process 1000 listings in under 10 seconds, leverage 15+ advanced filters, and enjoy unlimited monthly usage for one predictable price.
On this page
Share Actor:
