Zillow Search Scraper: Past the 820 Limit
Pricing
from $0.56 / 1,000 homes
Zillow Search Scraper: Past the 820 Limit
Every home of a Zillow search, past the 820 Zillow shows, checked against its count. $0.80 per 1,000 homes. 3,482 of 3,483 in a test. For sale, rent or sold.
Pricing
from $0.56 / 1,000 homes
Rating
0.0
(0)
Developer
Luzi
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Get every home of a Zillow search, not just the 820 Zillow shows you: for sale, for rent or recently sold, for a city, ZIP code, county, neighborhood or any search link with your own filters and map area. The run's last message checks the homes saved against Zillow's own count for each search. No Zillow account, login or cookies needed.
Tested daily. Latest check: Ada County, Idaho, 3,482 of the 3,483 homes for sale Zillow counted, in 6 minutes.
What does this Actor do?
You give it places (as you would type them in Zillow's search box) or links to Zillow searches. For each search it saves one row per home, until it has every home Zillow counts for that search or reaches your limit.
Zillow's own site stops at 20 pages of 41 homes (820) for any search. This Actor keeps going until it has every home in the search, so a whole city or county comes back in one run, and its final message says, per search, whether it got all of Zillow's count ("3,482 of 3,483").
Each row comes with:
- the Zillow id (zpid), the home's link, its status (for sale, for rent, sold, coming soon, under contract) and the listing type (by agent, by owner, new construction, foreclosure, auction)
- price, price as shown, the sold price and sold date for sold homes, the last price change and its date, the Zestimate, the rent Zestimate and the tax-assessed value
- the address (street, unit, city, state, ZIP) and its latitude and longitude
- beds, baths, living area, home type and lot size
- days on Zillow, open house times, the brokerage, the listing agent and MLS id where Zillow shows them
- every photo link of the listing card, and the main photo
- for rentals: the building name, each unit type with its price and beds, available units, the move-in date, required monthly fees, the leasing office phone where Zillow shows it, and highlights such as "7 available units"
- the search it came from, the region's name and Zillow's count for the search
Why use it?
- Every home, not 820. A search with more homes than Zillow shows is read to its end; the run tells you for each search how many of Zillow's count it saved.
- Sale, rent and sold in one Actor, from a place name or any Zillow search link with your filters (price, beds, home type, days on Zillow, map area, sort).
- Over 100 fields a home, the card's every fact, flat and ready for a spreadsheet.
- $0.80 per 1,000 homes, and nothing per search.
How to use it
- Type one or more places under Locations and pick Listing status, or paste Zillow search links under Search links.
- Set Max homes per search (1,000 by default). To get a whole search, set it above the number Zillow shows for it.
- Start the run, then download the homes as JSON, CSV or Excel.
Run it with no input to see a sample: up to 100 homes for sale in Boise, ID, charged as usual.
Input
| Field | What it is |
|---|---|
locations | Places, one per line: Boise, ID, 83702, Ada County, ID, a neighborhood |
listingStatus | for_sale (default), for_rent or sold, for the locations |
startUrls | Zillow search links with your filters, map and sort; each keeps its own status |
maxHomesPerSearch | 1 to 50,000, default 1,000 |
Example:
{"locations": ["Boise, ID", "83702"],"listingStatus": "for_sale","maxHomesPerSearch": 5000}
A link to one home, a building page or an agent page is refused before the run starts, with the link named.
Output
One row per home (a rental building with several units is one row, its units
listed inside it). Fields Zillow does not show for a home are null or an
empty list.
| Field | What it is |
|---|---|
zpid | Zillow's id for the home (for a rental building, Zillow's id for its spot) |
url | The home's (or building's) Zillow page |
status_type, status_text, home_status, raw_home_status | FOR_SALE, FOR_RENT or SOLD; the card's label ("House for sale"); Zillow's detailed status |
listing_category, listing_subcategory, marketing_status, listing_sub_types | How it is listed: by agent or owner, new construction, foreclosure, open house, coming soon |
contingent_listing_type | UNDER_CONTRACT and the like, where shown |
price, price_text, listing_page_price, currency | The price (sold price for sold homes, monthly rent for rentals) |
sold_at | The sale date, for sold homes |
price_change, price_changed_at, price_reduction_text | The last price change |
zestimate, rent_zestimate, tax_assessed_value | Zillow's estimates and the assessed value |
address, street, unit, city, state, zipcode, country | The address |
latitude, longitude, is_undisclosed_address, is_unmappable | Where it is |
beds, baths, full_baths, half_baths, living_area, home_type | The home |
lot_area_value, lot_area_unit | The lot |
has_fireplace, has_air_conditioning, has_spa, has_pool | Rentals' features, where shown |
days_on_zillow, time_on_zillow_ms, coming_soon_on_market_at | Time on the market |
open_house, open_house_text, open_house_showings | Open house times |
broker_name, listing_agent, mls_id, attribution_logo_url | Who lists it, where Zillow shows it |
pals_id, provider_listing_id | Zillow's listing ids |
flex_text, flex_type, highlights | The card's highlight lines |
contact_phone, actions | A rental's phone and buttons, where shown |
amenity_insight | A rental's standout amenity, as Zillow rates it |
building_name, is_building, lot_id, units, available_units, available_from | Rental buildings and units |
min_base_rent, max_base_rent, required_monthly_fee_min, required_monthly_fee_max, price_includes_required_fees, is_rental_with_base_price | Rent and required fees |
is_instant_tour_enabled, is_contactable, marketing_treatments | A rental's tour and contact options and its listing package |
image_url, photos, photo_count, street_view_url | Photos |
has_image, has_video, has_3d_model | Media on the listing |
is_featured, is_showcase, should_highlight, is_zillow_owned, is_premier_builder, is_paid_builder_new_construction, is_non_owner_occupied, is_preforeclosure_auction, is_home_rec, is_user_claiming_owner, is_user_confirmed_claim, has_additional_attributions, shows_request_on_price, shows_zestimate_as_price | Zillow's flags for the listing |
search_url, search_region, search_region_id, search_total | The search the row came from and Zillow's count for it |
Agents' and leasing offices' names and phone numbers are personal data in many places: check that your use is allowed where you are.
How much does it cost?
No surcharges and no paid options; an item that fails is not charged.
This Actor is priced per home saved:
- $0.80 per 1,000 homes ($0.0008 a home). Each home is charged once per run.
- No start fee, and nothing per search.
So 1,000 homes cost $0.80. If you set a maximum cost for a run, the Actor stops when it reaches it and keeps every home saved so far.
How long does a run take?
About two minutes per 1,000 homes (3,482 homes in 6 minutes in a test). A search over 820 homes takes a few more pages than its homes alone would. For more than about 5,000 homes, raise the run's timeout under Run options before you start.
Good to know
- Zillow's count. For homes for sale and sold homes, the final message compares the homes saved with Zillow's count for each search. Zillow counts rental units, while a rental building is one row, so rentals are never compared.
- A home in two of your searches (a city and its county, say) is saved once, under the first search that reached it.
- Order. A search under 820 homes comes back in Zillow's order; a larger one comes back area by area.
- Sold prices. Some states do not disclose sale prices; there Zillow shows sold homes without a price, and so does this Actor.
- Details pages are not read. You get what Zillow's search results show for each home, not the home's own page (description, price history, schools).
- The United States only, as Zillow.
More Actors from us
- Airbnb Scraper: Every Stay, Past the 15-Page Limit: Every stay of an Airbnb search, past the 15 pages Airbnb shows, checked against its count.
- Alibaba Products Scraper: Price Tiers & Suppliers: Alibaba.com products by keyword or link, with price tiers in US dollars on every row.
- AliExpress Product Scraper: Search Results & Prices: Every product of an AliExpress search to its last page, with exact sold counts and ratings.
- Amazon Product Scraper: Search Results & Prices: Every product on Amazon's search pages to the last page, sponsored marked, with monthly sales.
- App Store Reviews Scraper: All Reviews, Not 500: Every written App Store review of an app, not just the newest 500.
- Woolworths Coles ALDI Scraper: AU Grocery Prices: Woolworths, Coles and ALDI products for any search in one run, every results page to the end.
Use it from an AI agent or the API
One call starts a run and returns its items (Apify waits up to 300 seconds; for a
longer run, start it with POST /v2/acts/…/runs and read its dataset):
POST https://api.apify.com/v2/acts/luzivanlt~zillow-listings-scraper/run-sync-get-dataset-items?token=<YOUR_APIFY_TOKEN>
With the sample input as its JSON body:
{"locations": ["Boise, ID"],"listingStatus": "for_sale","maxHomesPerSearch": 100}
Its inputs, in the order of the input form:
| Input | What it takes | Default |
|---|---|---|
locations (Locations) | Places to search, one per line, as you would type them in Zillow's search box: a city and state (Boise, ID), a ZIP code, a county or a neighborhood, up to 120 characters each. | — |
listingStatus (Listing status) | Which homes to get for the locations above: for sale (the default), for rent, or recently sold. | "for_sale" |
startUrls (Search links) | Zillow search results links, copied from your browser after you set the filters, map area and sort you want (https://www.zillow.com/boise-id/?searchQueryState=…). | — |
maxHomesPerSearch (Max homes per search) | Stop each search after this many homes, from 1 to 50,000 (1,000 by default). | 1000 |
Apify's MCP server, https://mcp.apify.com, lists it as luzivanlt/zillow-listings-scraper. To give an
AI agent this Actor as a tool, add the server to the agent's MCP config:
{"mcpServers": {"apify": {"url": "https://mcp.apify.com?tools=luzivanlt/zillow-listings-scraper"}}}
The client signs in with OAuth, or add "headers": { "Authorization": "Bearer <APIFY_TOKEN>" }.
Charged per home delivered; the sample input above costs at most $0.08.
FAQ
Can I get every home in a big city? Yes. Set Max homes per search above Zillow's count; the final message tells you how many of Zillow's count were saved.
Can I use my own filters? Yes. Set them on Zillow, copy the link from your browser and paste it under Search links.
Is it legal to scrape Zillow?
This Actor reads pages anyone can open without an account. Check Zillow's terms and the laws where you are before you use the data, especially the personal data of agents.
Support
Open an issue on the Actor's page and describe the search and what you expected.
