Zillow Property Listings Scraper
Pricing
from $2.49 / 1,000 results
Zillow Property Listings Scraper
Zillow Scraper SD - Zillow Scraper is a real estate data tool that extracts public Zillow listings for sale, for rent or sold by location or search URL: price, address, beds, baths, area, Zestimate, photos, broker, plus optional details and price history.
Pricing
from $2.49 / 1,000 results
Rating
0.0
(0)
Developer
Neuro Scraper
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
21 days ago
Last modified
Categories
Share
Zillow Scraper - homes for sale, rentals and sold homes from Zillow
The Zillow Scraper extracts public Zillow listings by location or by any Zillow search URL: price, address, beds, baths, living area, Zestimate, rent Zestimate, days on Zillow, broker, coordinates and photos. Turn on details to add the description, facts, year built, MLS attribution, HOA fee and (where Zillow shows it) the price history. No Zillow account or login is used.
Input
| Field | Type | Default | Meaning |
|---|---|---|---|
searchTerms | list | Austin, TX (prefill) | Locations as you would type them on Zillow: city + state, ZIP code, county, neighborhood |
listingType | select | for_sale | for_sale, for_rent or sold - applies to searchTerms |
startUrls | list | empty | Zillow search URLs with your own filters, or listing (/homedetails/..._zpid/) URLs |
maxItems | integer | 50 | Total listings to return |
includeDetails | boolean | false | Open each listing page for details (one extra request per listing) |
proxyConfiguration | proxy | Apify RESIDENTIAL | Proxy used for Zillow |
Output (one row per listing)
| Field | Meaning |
|---|---|
zpid, url | Zillow property id and listing URL |
statusType, statusText, homeStatus, homeType | For sale / for rent / sold, Zillow status, home type |
price, priceMax, priceText, currency | Price (rent buildings: lowest and highest rent), as shown, USD |
address, street, city, state, zipcode, latitude, longitude | Location |
beds, baths, livingArea, lotAreaValue, lotAreaUnit | Size |
daysOnZillow, zestimate, rentZestimate, taxAssessedValue | Zillow estimates and tax value |
brokerName, isBuilding, buildingName, units | Broker; apartment-building rows with their unit prices |
imageUrl, photos, hasVideo, has3DModel, isFeaturedListing, openHouse, flexText | Media and badges |
details: description, yearBuilt, facts, atAGlanceFacts, priceHistory, mlsId, mlsName, listingAgentPhone, brokerageName, monthlyHoaFee, propertyTaxRate, datePosted, dateSold, lastSoldPrice, pageViewCount, favoriteCount, detailPhotos ... | Only with includeDetails or listing URLs |
searchTotal, page, source, scrapedAt | Result count Zillow reported, page number, the input that produced the row, time |
Measured limits (2026-10-03, local runs)
- 41 listings per page; about 1,000 listings per search (Zillow stops serving pages after ~24). Split a big city into ZIP codes, neighborhoods or price ranges (filters in a copied search URL) for more.
- 50 listings in 3 s, 150 rentals in 5 s (4 pages); with details about 1.5 s per listing.
- Price history is in the page only for some listings (Showcase listings); for-sale and sold pages without it
return
priceHistory: null. - Tested without proxy from one residential IP; Zillow's PerimeterX did not challenge. A challenge is never solved: the Actor retries on a new IP, then skips the target with an error in the log.
Example
{"searchTerms": ["Miami, FL", "90210"], "listingType": "for_rent", "maxItems": 200, "includeDetails": false}