Zillow Scraper — Listings, Prices, Agents
Pricing
from $0.80 / 1,000 results
Zillow Scraper — Listings, Prices, Agents
Scrape Zillow for-sale / for-rent / sold listings by city: price, price history, Zestimate, beds/baths, sqft, address, coordinates, MLS id + broker, photos, and more.
Pricing
from $0.80 / 1,000 results
Rating
0.0
(0)
Developer
Arpit Gandhi
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
🏡 Zillow Scraper — Listings, Prices, Zestimates & Agents
Pull thousands of Zillow listings for a whole city in one run — with prices, Zestimates, beds/baths, addresses, coordinates, photos, brokers, and deep property details — no listing URLs required.
Most Zillow tools make you feed in property URLs one by one (and run a separate search tool first just to collect them). This one is different: give it a city and a listing type, and it finds and extracts every matching home for you — for sale, for rent, or recently sold — and can enrich each one with full property detail. Discovery and detail, in a single actor.
⭐ Why this scraper
- 🔎 Search by city, not URLs — type
"Austin, TX", get every listing. No URL wrangling, no second tool. - 💰 Zestimate + Rent Zestimate on every home — Zillow's own valuation, which most scrapers return empty.
- 📈 Full‑market coverage — it automatically sweeps a city in tiles to blow past Zillow's on‑screen result limit, so a single run returns thousands of unique listings, deduped.
- 🧾 Rich fields out of the box — price + price‑change, tax‑assessed value, beds/baths, sqft, lot, year built, exact coordinates, MLS id, broker, full photo galleries.
- 🔬 Detailed mode — flip one switch to add parking, heating/cooling, HOA, school districts, walk/bike scores, amenities, home‑insight highlights, and the full listing description per home.
- ⬇️ Any format — export to JSON, CSV, Excel, or XML, or pull straight from the API.
📦 What data you get
Every listing (bulk):
| Group | Fields |
|---|---|
| 💲 Price & valuation | price, pricePerSqFt, priceChange + priceChangeDate, zestimate, rentZestimate, taxAssessedValue, taxAssessmentYear |
| 🛏️ Home facts | beds, baths (fullBaths/halfBaths), livingArea (sqft), lotSize, yearBuilt, homeType |
| 📍 Location | streetAddress, city, state, zipcode, country, latitude, longitude |
| 🏷️ Status & dates | listingStatus (sale/rent/sold), listingSubType (FSBA/FSBO…), listingDate, daysOnZillow, isZillowOwned |
| 🧑💼 Listing source | mlsId, mlsName, brokerName |
| 🖼️ Media | photoCount, coverPhoto, photos[] (30+/home), hasVideos, has3DTour |
| 🔗 Links | detailUrl, zpid |
🔬 With Detailed mode on, each home also gets:
description · parkingFeatures + garage/covered capacity · heating · cooling · hasPrivatePool · fireplaces · hoaFee · school districts (elementary/middle/high) · walkScore / bikeScore / transitScore · homeInsights (highlight phrases) · atAGlanceFacts · otherFacts (water/sewer, security, community — when Zillow lists them) · streetViewUrl · high‑res photo keys · agent/broker attribution (when provided)
⚙️ Input
| Field | Type | Default | Description |
|---|---|---|---|
locations | array of strings | — (required) | Cities/areas to scrape, e.g. ["Austin, TX", "Phoenix, AZ"]. Each is geolocated and swept for full coverage. |
status | select | forSale | forSale, forRent, or sold. |
detailed | boolean | false | Add the deep per‑home fields (parking, HVAC, schools, amenities, description…). Richer, but slower (one extra request per home). |
maxItems | integer | (all) | Cap the total number of listings. |
proxyConfiguration | proxy | Residential | Apify Proxy (residential recommended). |
Example input:
{"locations": ["Austin, TX"],"status": "forSale","detailed": true,"maxItems": 500}
📤 Output
One row per listing. Here's a real for‑sale result (detailed mode on):
{"zpid": 84380951,"price": 259900,"currency": "usd","pricePerSqFt": 145,"zestimate": 253000,"rentZestimate": 1904,"taxAssessedValue": 252139,"taxAssessmentYear": 2025,"beds": 4,"baths": 3,"fullBaths": 2,"halfBaths": 1,"livingArea": 1794,"yearBuilt": 1992,"homeType": "singleFamily","streetAddress": "112 Rock Point Dr","city": "Del Valle","state": "TX","zipcode": "78617","latitude": 30.133451,"longitude": -97.56978,"listingStatus": "forSale","listingSubType": { "isFSBA": true },"listingDate": "2026-07-06","daysOnZillow": 1,"brokerName": "Compass RE Texas, LLC","photoCount": 15,"photos": ["https://photos.zillowstatic.com/fp/..."],"detailUrl": "https://www.zillow.com/homedetails/84380951_zpid/","description": "Exceptional Investment Opportunity in the Heart of Del Valle!...","parkingFeatures": ["Driveway", "Parking Lot"],"garageSpaces": 2,"heating": ["Electric", "Solar"],"cooling": ["Electric"],"fireplaces": 1,"hoaFee": null,"elementarySchoolDistrict": "Bastrop ISD","highSchoolDistrict": "Bastrop ISD","walkScore": 12,"bikeScore": 30,"homeInsights": ["Spacious lot", "Generously sized bedrooms", "Open-concept flow"],"atAGlanceFacts": { "Type": "Single Family Residence", "Parking": "2 Covered spaces", "Lot": "10,497 sqft", "Price/sqft": "$145" }}
Export as JSON, CSV, Excel, or XML from the Storage tab, or via the Apify API.
🎯 Use cases
- Lead generation — build prospect lists of homes + brokers by city, filtered by price, beds, and days‑on‑market.
- Market & pricing analysis — track inventory, price cuts, days‑on‑market, and Zestimate vs list price across whole metros.
- Investor sourcing — surface
forSale+soldcomps with tax‑assessed value, lot size, and rent Zestimate for rental math. - Multi‑city research — run the same query across many cities to compare markets and spot opportunities.
- Feed your own app — pipe fresh listing data into a CRM, dashboard, or ML pipeline via webhooks/integrations.
❓ FAQ
Do I need to provide listing URLs? No — that's the whole point. Give it a city; it finds the listings. (Most Zillow tools require you to collect URLs with a separate search step first.)
How many listings can I get per city?
Thousands. It sweeps each city in tiles to get past the on‑screen result cap, and dedupes by property id. Use maxItems to cap.
Does it include Zestimate?
Yes — both zestimate and rentZestimate on every home.
What's "Detailed mode"? An optional toggle that fetches each home's full detail page for the deep fields (parking, HVAC, HOA, school districts, walk/bike scores, amenities, description). It's richer but does one extra request per home, so it's slower — leave it off for fast bulk pulls, turn it on when you need depth.
Can I scrape multiple cities and for‑sale/for‑rent/sold?
Yes — pass several locations, and pick the status. Run per status if you want all three.
What export formats and integrations are supported? JSON, CSV, Excel, XML — plus Make, Zapier, Google Sheets, Slack, webhooks, and the Apify API.