Zillow Scraper 🏠 (for sale, rent and sold, all-in price)
Pricing
from $1.23 / 1,000 listing scrapeds
Zillow Scraper 🏠 (for sale, rent and sold, all-in price)
Every Zillow search result for a city or ZIP in clean JSON: price, beds, baths, square feet, Zestimate, rent Zestimate, status, days on Zillow, address and coordinates. For sale, for rent or sold, with the filters you would set on the site. One flat price per listing, platform usage included.
Pricing
from $1.23 / 1,000 listing scrapeds
Rating
0.0
(0)
Developer
Tagada Data
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Zillow Scraper: for sale, for rent and recently sold
Type a city or a ZIP code and get every Zillow search result back as clean JSON. Price, bedrooms, bathrooms, square feet, lot size, days on Zillow, status, the full address, latitude and longitude, the brokerage, the photo and the link to the listing, plus the Zestimate, rent Zestimate and county assessed value wherever Zillow publishes them. For sale, for rent, or recently sold, with the same filters you would set on the site.
One flat price per listing delivered. Platform usage (proxies, compute) is already in that price, so the number you see is the number you pay. No API key, no login, no browser.
What it costs against the paid tools
| This actor | Typical Zillow actor on Apify | Zillow's own data | |
|---|---|---|---|
| Price | $1.75 per 1,000 listings, all-in | $2.40 per 1,000 (search), $3.60 per 1,000 (per listing page) | No public API for listing search |
| Platform usage | Included | Usually billed on top | n/a |
| Markets | For sale, for rent, sold, in one actor | Usually one per actor | n/a |
| Zestimate and rent Zestimate | On every row Zillow publishes one for | Often detail-page only | Sign-in |
| Setup | Paste a city name | Paste a city name | Contact sales |
If you have used a scraper that charges per listing page, note the difference: the fields most people actually want (price, beds, baths, sqft, Zestimate, days on market, coordinates) are all in Zillow's search results already. This actor reads those and charges you once. It deliberately does not open each listing's own page, because that page costs about twenty times more to fetch and adds a description and a few facts. Paying detail-page prices for search-page data is the most common way to overspend on this category.
What you get
One record per listing:
| Field | Description |
|---|---|
recordType | Always listing |
zpid | Zillow's property ID |
url | Link to the listing |
status | FOR_SALE, FOR_RENT, SOLD, PENDING, and so on |
statusText | Status in Zillow's own words, e.g. "House for sale" |
listingType | Which market this search read: forSale, forRent or sold |
price | Price as a number. For rentals, monthly rent |
priceText | Price as shown on the card, e.g. $330,000 or $2,101,990+ |
currency | Currency code |
beds | Bedrooms |
baths | Bathrooms |
livingArea | Living area in square feet |
lotAreaValue, lotAreaUnit | Lot size and its unit (sqft or acres) |
homeType | Single family, Condo, Townhouse, Multi family, Lot, Manufactured, Apartment |
zestimate | Zillow's estimated value |
rentZestimate | Zillow's estimated monthly rent |
taxAssessedValue | Assessed value from the county record |
daysOnZillow | How long the listing has been up |
address | Full address on one line |
addressStreet, addressCity, addressState, addressZipcode | The same address split into fields |
isUndisclosedAddress | True when the seller withheld the street address |
latitude, longitude | Coordinates |
brokerName | Brokerage on the listing |
listingAgent | Agent attribution line, when there is one |
isZillowOwned | Zillow-owned listing |
isBuilding | True for a rental building or complex rather than a single unit |
hasImage, imgSrc | Whether there is a photo, and its URL |
searchLocation | The city or ZIP you asked for, so multi-city runs stay sortable |
searchUrl | The exact Zillow URL the row came from |
capturedAt | When the run collected the row (ISO) |
Fields are null when Zillow genuinely does not publish them for that listing, which is common for the Zestimate and the assessed value. Nothing is guessed or filled in.
Who uses this
- Investors and flippers. Pull a whole ZIP for sale and recently sold in two runs, compare asking prices against sold prices and the Zestimate, and find the gap.
- Agents and teams. Watch inventory in your farm area: what came on this week, what is sitting, what sold and at what price.
- Property managers and rental operators. Read the rental market in your city at a given bedroom count and set your own rent from real comparables, with
rentZestimatenext to the asking rent. - Proptech and analysts. Coordinates on every row means the output drops straight into a map, a BI tool, or a model, with no geocoding step.
- iBuyer and renovation lead-gen. Filter old, low-priced, single-family inventory in a metro and get a working list of addresses.
Input examples
Every listing in one city, for sale:
{"locations": ["Austin, TX"],"listingType": "forSale","maxListingsPerSearch": 200}
Several ZIP codes, houses only, in a price band, newest first:
{"locations": ["78704", "78745", "78702"],"listingType": "forSale","minPrice": 400000,"maxPrice": 900000,"minBeds": 3,"homeTypes": ["houses"],"sortBy": "newest","maxListingsPerSearch": 300}
Recently sold comparables for a neighbourhood:
{"locations": ["Austin, TX"],"listingType": "sold","minBeds": 3,"maxListingsPerSearch": 500}
Rentals under a budget, cheapest first:
{"locations": ["Denver, CO"],"listingType": "forRent","maxPrice": 2500,"sortBy": "priceAsc"}
A search you drew on Zillow's map, pasted straight from the browser:
{"locations": ["https://www.zillow.com/austin-tx/?searchQueryState=%7B%22mapBounds%22%3A%7B%22west%22%3A-97.85%2C%22east%22%3A-97.68%2C%22south%22%3A30.19%2C%22north%22%3A30.32%7D%7D"],"maxListingsPerSearch": 200}
Frequently asked questions
How many listings can I get from one city? Zillow itself stops paginating a search at 20 pages, about 820 listings, no matter how many results it says it has. That is a limit on Zillow's side, not on this actor. To go past it, split the area into ZIP codes or add a price band, and run several searches: the run log tells you when a search hit that ceiling.
Does it return sold prices?
Yes. Set listingType to sold and you get recently sold homes with their sale price in price, plus the Zestimate and the county assessed value next to it. That is the comparison most people are after.
Can I search by neighbourhood or by drawing an area?
Yes. Do the search on zillow.com, copy the URL out of the address bar, and paste it into locations. A map-drawn boundary travels with the URL and is used as-is.
Do I need a proxy, an API key or a Zillow login? No. Everything needed to reach Zillow is built in and paid for out of the per-listing price. There is no proxy setting to configure and nothing to sign in to.
Is the Zestimate really included? Yes, on every row Zillow publishes one for, along with the rent Zestimate and the county assessed value. They come straight from Zillow's own search payload, not from an estimate of ours. Zillow does not attach a Zestimate to every listing (on a typical for-sale city page it is roughly a third of rows, and the assessed value is on about seven in ten), so those fields are null where the site itself has nothing.
Why do I sometimes get slightly fewer rows than I asked for? Zillow returns 41 results per page, so a cap of 100 lands mid-page, and a listing that Zillow serves without an ID or a link is dropped rather than shipped half-empty. You are only charged for rows you actually receive.
What happens if Zillow blocks the run? Zillow uses PerimeterX. This actor rotates its exit and its browser fingerprint on every retry, and if pages are still being refused it stops instead of running up your bill, and says so in the run status. Re-running a few minutes later almost always clears it.
Is scraping this legal? The actor reads only public listing pages that Zillow serves to any visitor, and collects no personal data about buyers, sellers or agents beyond the brokerage attribution printed on the listing. Check Zillow's terms and your own use case before you build a product on it.
Related actors
Doing comparables or yield work in other markets? See our Rightmove scraper for the UK, ImmobilienScout24 for Germany, and the French set (SeLoger, PAP, DVF sold prices).
Keywords: zillow scraper, zillow api, zillow data extractor, zillow listings, zillow sold prices, zillow rentals, real estate scraper, mls data alternative, property data, zestimate api, housing market data, real estate comps, zip code home search.