Zillow Scraper avatar

Zillow Scraper

Pricing

from $1.50 / 1,000 properties

Go to Apify Store
Zillow Scraper

Zillow Scraper

Zillow homes for sale, for rent and sold, by place, search link or property link: price, Zestimate, beds, baths, days on Zillow; optionally price and tax history, schools, every fact, agent, views and saves, and apartment buildings with each unit's rent. Whole cities.

Pricing

from $1.50 / 1,000 properties

Rating

0.0

(0)

Developer

Steady Scrape

Steady Scrape

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

What does Zillow Scraper do?

Zillow Scraper extracts every home for sale, for rent or recently sold in any US place — a city, a ZIP code, a county, a neighborhood, or any Zillow search link with your filters — with price, Zestimate and Rent Zestimate, beds, baths, square feet, lot, home type, days on Zillow, price cuts, tax assessed value, broker and coordinates. Turn on listing details and each home also comes with its price history, tax history, schools, every fact Zillow lists (heating, cooling, parking, HOA, appliances, construction…), listing agent and broker, page views and saves, description and all photos. Apartment buildings come with each floor plan and every available unit's rent and move-in date.

It reads whole cities. Zillow shows at most 820 listings per search, which is why other scrapers stop there. This one splits the map into cells until each one fits and returns every listing in the area, once: Austin for sale, 5,090 homes in 20 seconds.

Why use it?

  • 🏘️ Real estate investing — every listing of a market with price, Zestimate, rent estimate and days on market, to find deals and estimate yields.
  • 📉 Market analysis — inventory, price cuts and days on Zillow by ZIP code or neighborhood; recently sold homes with their sale price and date for comps.
  • 🏢 Rental research — apartment buildings with every floor plan, each available unit's rent and move-in date, fees, pets and special offers.
  • 🔔 Monitoring — schedule it on a search and see new listings, price changes and homes going pending.
  • 🤖 Feed dashboards, CRMs, sheets and AI agents — JSON, CSV or Excel, or straight into Google Sheets, Make or Zapier through Apify integrations.

Features

  • ✅ By place, search link or property link — type Austin, TX, 78704 or Brooklyn, NY; paste a Zillow search link with any filters (price, beds, baths, home type, keywords, the map area you drew); or paste home and building links, or bare zpids.
  • ✅ For sale, for rent, recently sold — pick the listing type for places; search links carry their own.
  • ✅ Full coverage — past Zillow's 820-result limit, the whole area cell by cell, each property once.
  • ✅ Homes, buildings and new-construction communities — each row says which (kind), with the fields that fit it.
  • ✅ Listing details — price history, tax history, schools with ratings, ~190 facts, agent and broker with phones, MLS id, parcel id, HOA, property tax rate, page views and saves, description, all photos in full size.
  • ✅ Apartment buildings — floor plans with beds, baths, square feet and price range, every available unit with its rent and move-in date, amenities, pets, special offers, walk/transit/bike scores, phone and manager.
  • ✅ Hard limits and fair billing — the maximum per search is a hard stop, the spending limit is checked before any page is read, a property found twice is charged once, and links Zillow does not know are reported and not charged. No start fee.

How to scrape Zillow

  1. Click Try for free.
  2. Type locations and pick for sale, for rent or sold — or paste search links or property links.
  3. Optionally set a maximum per search and turn on Include listing details.
  4. Click Start and download the properties as JSON, CSV or Excel. To monitor, add a schedule.

Input example

{
"locations": ["Austin, TX", "78704"],
"listingType": "forSale",
"searchUrls": ["https://www.zillow.com/homes/for_rent/Austin,-TX_rb/"],
"propertyUrls": ["https://www.zillow.com/homedetails/7560392_zpid/", "https://www.zillow.com/apartments/phoenix-az/seven-(az)/636CVJ/"],
"includeDetails": true,
"maxItemsPerSearch": 0,
"fullCoverage": true
}

Output example

A home, with listing details (lists shortened):

{
"kind": "home",
"id": "7560392",
"zpid": "7560392",
"url": "https://www.zillow.com/homedetails/4048-E-Edgemont-Ave-Phoenix-AZ-85008/7560392_zpid/",
"status": "FOR_SALE",
"address": "4048 E EDGEMONT Avenue, Phoenix, AZ 85008",
"street": "4048 E EDGEMONT Avenue", "city": "Phoenix", "state": "AZ", "zipcode": "85008",
"latitude": 33.479282, "longitude": -111.9934,
"price": 1600000,
"currency": "USD",
"homeType": "SINGLE_FAMILY",
"bedrooms": 5, "bathrooms": 5, "livingArea": 3370, "lotArea": 10685, "lotAreaUnit": "sqft",
"zestimate": null, "rentZestimate": null, "taxAssessedValue": 518600,
"daysOnZillow": 167,
"priceChange": -49000, "priceChangeDate": "2026-09-23",
"listingSubType": ["newConstruction"],
"brokerName": "HomeSmart",
"details": {
"yearBuilt": 2026,
"propertyType": "Single Family",
"lastSoldPrice": 522500, "dateSold": "2024-10-24",
"propertyTaxRate": 0.41,
"county": "Maricopa County", "parcelId": "12601083", "mlsId": "7007889",
"pageViews": 2388, "saves": 246,
"listingAgent": { "name": "Kristina Cat", "phone": "734-306-0569", "email": null, "licenseNumber": null },
"broker": { "name": "HomeSmart", "phone": "602-230-7600" },
"priceHistory": [{ "date": "2026-09-23", "event": "Price change", "price": 1600000, "pricePerSquareFoot": 475, "source": "ARMLS" }],
"taxHistory": [{ "year": 2025, "taxPaid": 1819.7, "assessedValue": 51860 }],
"schools": [{ "name": "Griffith Elementary School", "rating": 3, "distance": 0.9, "grades": "K-5", "level": null, "link": "https://www.greatschools.org/arizona/phoenix/754-Griffith-Elementary-School/" }],
"facts": { "heating": ["ENERGY STAR Qualified Equipment", "Electric"], "cooling": ["Central Air", "Ceiling Fan(s)"], "parkingCapacity": 4, "hasGarage": true, "stories": 1 },
"photos": ["https://photos.zillowstatic.com/fp/d74149e3a77bbdb4db14441e5bd9d0b8-uncropped_scaled_within_1536_1152.jpg"]
},
"building": null
}

An apartment building, with its page:

{
"kind": "building",
"id": "1136159192",
"url": "https://www.zillow.com/apartments/phoenix-az/seven-(az)/636CVJ/",
"status": "FOR_RENT",
"address": "19800 N 7th St, Phoenix, AZ 85024",
"rentMin": 1357, "rentMax": 2052,
"buildingName": "Seven (AZ)",
"availableUnits": 13,
"building": {
"phone": "(928) 440-9094", "manager": "Greystar",
"buildingFacts": ["216 units", "3 stories", "built in 2014"],
"pets": ["Cats", "Large dogs", "Small dogs"],
"specialOffers": ["Four Weeks Base Rent Free When You Move In by 11/1/2026*. Minimum Lease Terms Apply. Costs & Fees Excluded."],
"walkScore": 26, "transitScore": 33, "bikeScore": 37,
"floorPlans": [{ "name": "1X1", "beds": 1, "baths": 1, "sqft": 747, "minPrice": 1374, "maxPrice": 1473, "availableFrom": "2026-10-13", "units": [{ "unitNumber": "Unit 1081", "zpid": "2091638977", "price": 1454, "sqft": 747, "availableFrom": "2026-11-02" }] }]
}
}

Output fields

fieldmeaning
kindhome, building (an apartment building or a multi-unit building) or community (new construction).
id, zpid, urlThe zpid of a home; Zillow's lot or plan id of a building or community.
status, statusTextFOR_SALE, FOR_RENT, SOLD/RECENTLY_SOLD… and Zillow's label ("Active", "House for rent").
address, street, city, state, zipcode, unit, latitude, longitudeWhere it is.
price, priceTextAsking price, monthly rent or sold price, and the price as Zillow shows it. A sold home's price is hidden in search results: turn on listing details to get it.
rentMin, rentMax, availableUnits, buildingNameA building's base rent range (before required fees) and available units; a community's name and builder (brokerName).
homeType, bedrooms, bathrooms, livingArea, lotArea, lotAreaUnitlivingArea in square feet; lotAreaUnit is sqft or acres.
zestimate, rentZestimate, taxAssessedValueZillow's estimates (Zillow hides the Zestimate on many listed homes).
daysOnZillow, priceChange, priceChangeDate, dateSold, listingSubTypeMarket signals; listingSubType lists forSaleByAgent, forSaleByOwner, newConstruction, foreclosure, bankOwned, auction, comingSoon, pending, openHouse.
detailsWith Include listing details, for a home: see the example. facts is every fact Zillow lists, as Zillow names it.
buildingWith Include listing details, for an apartment building: see the example.
searchLocation, resolvedLocation, scrapedAtThe search or link the row came from, where Zillow resolved the place ("Austin TX"), and when (UTC).

The run's SUMMARY record lists, per search, Zillow's own count, how many properties came out and how many requests it took, and any search or link that was refused, not found or not a place (those are not charged).

Limits and tips

  • Zillow covers the United States. A place it cannot find resolves to some city: check resolvedLocation. A place it takes for a single property is reported, not searched.
  • Full coverage reads a city of ~5,000 listings with ~35 requests in about 20 seconds. Rentals are mostly buildings: a big city has tens of thousands of units in a few thousand buildings.
  • Listing details cost one request per property: about 30 homes in 25 seconds. New-construction communities are returned from the search without a page.
  • Prices are in US dollars; rents are monthly.

This Actor reads only data Zillow shows publicly to anyone, without logging in. Listing agents' and brokers' names and phone numbers are the business contacts Zillow publishes with each listing. Scraping public data is generally legal; still, make sure your use complies with Zillow's terms and the laws that apply to you, and use it responsibly. Read Apify's legality of web scraping guide.

Your feedback

Missing a field or a filter? Open an issue on the Issues tab: issues are answered, and the Actor is checked against the live site so it keeps working when Zillow changes.