Zillow Rentals Scraper π° From $1.4/1K Β· Apartment Rent Ranges
Pricing
from $1.40 / 1,000 results
Zillow Rentals Scraper π° From $1.4/1K Β· Apartment Rent Ranges
Scrape Zillow rentals by city, ZIP code or URL. Apartment buildings and single rentals in one run, with address and coordinates; a complex found by search also carries its rent range. Floor plans, amenities and leasing contact with property details on. Past the 500-result cap.
Pricing
from $1.40 / 1,000 results
Rating
0.0
(0)
Developer
Muhamed Didovic
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
π Zillow Rentals Scraper
Scrape Zillow rentals by city, ZIP code, or URL. Apartment buildings and single-home rentals come back in the same run with address and coordinates; a building found by a search also carries its rent range in Rent Min and Rent Max.
One row per listing, as JSON, CSV, or Excel. An apartment complex is one row for the whole building, with its floor plans under floorPlans.
β Why use this Zillow rentals scraper?
- Buildings and houses together β a rentals search mixes apartment complexes with individual homes. Both are returned, in the same columns.
- The rent range, not one number β a complex prices per floor plan, so each complex a search returns carries
Rent MinandRent MaxbesidePrice, the headline figure Zillow itself shows as "$1,449+". - Past the 500 cap β turn on Scrape beyond 500 results limit and raise Max Items (default 100), and a dense city is split into smaller map areas so the search is not silently truncated.
- Leasing contact β the building phone number and the listing agent where Zillow exposes one, with details switched on.
- Agent email enrichment (optional) β with Enrich with the agent's contact email and Include property details both on, a single-home rental's listing agent is matched against a 1,200,000+ US agent database for a direct email and phone; apartment-complex rows take the building path and are not enriched.
- Proxies included on paid plans β on any paid Apify plan the run goes out through the actor's own residential pool at no extra cost, and the Proxy configuration input is not read. Free-plan runs use whatever you set there, and Zillow refuses search requests from Apify's default datacenter proxy β which is what you get by leaving it empty β so set Apify RESIDENTIAL or your own residential URLs.
π What data does it extract?
| Field group | Columns |
|---|---|
| Identity | URL, Address, City, State, Latitude, Longitude β on a default run ID and Zip Code arrive empty on apartment-complex rows, which Zillow returns as cluster pins; Include property details fills both from the building record |
| Rental | Price (the search card's own figure), Rent Min and Rent Max on rows a search returned, Status β plus Property Subtype with Include property details on |
| People | Agent Name, Agent Number, Broker Name, Broker Number β on single-home rentals, with Include property details on; an apartment complex has no listing agent of its own, so those four stay empty and its leasing phone arrives with the building record. Enrich with the agent's contact email adds contactEmail, contactPhone and agentEmailSource |
| Optional depth | With Include property details on: details β the full record on a single-home rental; an apartment complex spreads its building record across the row instead, with floor plans under a top-level floorPlans key |
π§Ύ Supported inputs
| Input | Example |
|---|---|
| City | Austin, TX |
| ZIP code | 78704 |
| Rentals search URL | https://www.zillow.com/austin-tx/rentals/ |
| Building page | https://www.zillow.com/apartments/austin-tx/the-janis/CqW86G/ |
A pasted building page has no search card behind it, so that row carries the building's floorPlans and a Price taken from the cheapest plan, but no Rent Min / Rent Max.
π‘ Use cases
- Property managers β track competing rents per floor plan across the submarkets you operate in.
- Investors β compare asking rents against purchase prices to sanity-check yield before buying.
- Relocation & corporate housing β build a shortlist for a city with the real rent range per building.
- Proptech & data teams β feed rental inventory into apps, maps, CRMs, or rent indices.
- Market research β watch rent ranges move month to month by scheduling the same search.
π How it works
The location is resolved to Zillow's own region and queried with forRent through the search API. With Include property details on, apartment entries are then followed to the building record, so the floor-plan list and amenities land on the row; a default run keeps the search-level columns, which already carry the rent range. With Scrape beyond 500 results limit on, a search over 500 matches is split into map quadrants, which takes it far past the cap; the split stops at a depth limit, so a very dense area can still be truncated.
βοΈ Input configuration
| Field | Type | Notes |
|---|---|---|
searchLocation | array | City, neighborhood or ZIP, one per line |
startUrls | array | Or paste a Zillow rentals URL or a building page. The filters above are not applied to a pasted URL |
status | enum | forRent by default; switch to forSale or sold for the same search over other listing types |
moreResults | boolean | Split dense searches past the 500-result cap |
priceMin / priceMax | integer | Monthly rent range |
bedsMin / bathsMin | integer | Minimums |
homeTypes | array | Apartment, house, condo, townhouse, β¦ |
includePropertyDetails | boolean | Adds the full record, amenities and contacts per row |
flatOutput | boolean | A location search needs includePropertyDetails on too; a pasted property or building URL is flattened either way. A single-home rental row then drops the nested blob and gains beds, baths, sq ft and the other flat columns |
enrichEmails | boolean | Agent email and phone from the agents database, on single-home rental rows; a location search needs includePropertyDetails on too, a pasted /homedetails/ URL does not. On a /profile/ agent URL in startUrls it discovers an email from the agent's own site instead. Billed per email found |
maxItems | integer | Stop after this many rentals; 100 by default |
Every field, with its type and default, is also listed on the actorβs own input schema page.
π¦ Output sample
{"URL": "https://www.zillow.com/apartments/austin-tx/bellrock-la-frontera/CtqCKn/","Address": "16304 Fm 1325, Austin, TX","City": "Austin","State": "TX","Latitude": 30.475164,"Longitude": -97.68957,"Price": 1309,"Rent Min": 1125,"Rent Max": 2040,"Status": "FOR_RENT"}
π Key output fields
Rent Min/Rent Maxβ the floor-plan range for a building, read off the search card, so they are on rows a search returned. A single-home rental carries one figure inPriceand no range; a building page pasted into Start URLs carries no range either β read itsfloorPlansfor the per-plan rents.Priceβ the price carried on the search card itself, which is not always the floor of the range: the sample row's card says 1309 while its cheapest floor plan is 1125. ReadRent Minfor the floor. Only when a complex's card carries no price of its own doesPricefall back to the lowest floor-plan rent, and it then equalsRent Min.StatusβFOR_RENTon a rentals sweep.Property Subtypeβ the building's structure type, such asMULTI_FAMILY. Zillow'sbuildingTypesometimes holds a listing status (FOR_RENT) instead of a type; those rows readAPARTMENT_BUILDING. Where the record carries no building or home type at all, the column stays empty. It is filled from the building record, so it needs Include property details on and is empty otherwise.detailsβ the full record on a single-home rental, with Include property details on. An apartment complex instead carries its building record at the top level of the row, with floor plans underfloorPlansβ each plan with its own beds, baths and rent.
Column names are Title Case (Address, Zip Code, Rent Min) so they read cleanly as spreadsheet headers.
β FAQ
Is Price the cheapest floor plan?
Not necessarily. A building has no single rent, and the column carries the figure on Zillow's own search card β 1309 on the sample row above, against a 1125 floor. The full span is in Rent Min and Rent Max.
Can I get individual units?
Floor plans, with their own beds, baths and rent, arrive with the building record when Include property details is on, under a top-level floorPlans key on the complex's row. A building page pasted into Start URLs carries them without the toggle.
Why are amenities and the leasing contact missing? They come from the building record, which is only fetched with Include property details on. A default run stays fast and returns the search-level columns.
Can I use it for sale listings too?
Yes β switch status to forSale or sold and the same search runs over those.
I asked for a whole city and got exactly 500 rows. Turn on Scrape beyond 500 results limit. Without it, Zillow's own cap stops the search at 500 and the rest is never served.
Why did a run stop early? Usually Max Items, which defaults to 100 β raise it and the sweep keeps going. The other cause is the "Maximum cost per run" limit; when that is what cut the run short, the run says so in its status message.
Do I need proxies or an API key? No API key, and no login is used. On a paid Apify plan the actor's own residential proxies are included at no extra cost and the proxy input is not read. On the free plan the run uses Apify's default datacenter proxy, which Zillow refuses, so set Proxy configuration to Apify RESIDENTIAL or your own residential URLs.
π Support
Open an issue on the actor's Issues tab with the run ID and the listing that looked wrong β that is enough to trace it.
π§© Additional services
Need a custom pipeline (specific columns, delivery to your DB/S3/webhook, merged multi-source feeds)? Open an issue describing what you need or contact the author through the actor page.
π Explore more scrapers
Eleven Zillow actors, all maintained by the same author. The six under Listings and properties share the same standard columns as this one, so rows from any of them line up in one sheet β a variant can add columns on top, as this one adds Rent Min and Rent Max. The four under People and contacts are separate scrapers with their own columns.
Listings and properties
- Zillow Scraper β the flagship: search by city, ZIP or filters, for sale, for rent, sold, plus change monitoring.
- Zillow Detail Scraper β the full record for specific properties, by URL, ZPID or plain address.
- Zillow ZIP Code Search Scraper β sweep a list of ZIP codes instead of one area at a time.
- Zillow Open Houses Scraper β upcoming open houses with their exact dates and times.
- Zillow Foreclosure Scraper β pre-foreclosure, auction and bank-owned (REO) records with auction dates and amounts.
- ZILLOW | Bypass Limit of 500 | Search |Agent | with Email β the earlier search build, kept in step with the flagship, with agent email enrichment.
People and contacts
- Zillow Agents Leads β agent contacts pulled from a database of 1,200,000+ US agents.
- Zillow Agents Scraper β agent finder and profile pages, with email discovery.
- Zillow Property Managers Scraper β property managers and owners, with emails.
- Zillow Lenders Scraper β mortgage lenders from Zillowβs own lender directory.
Beyond Zillow: all actors by memo23, 100+ maintained scrapers for real estate, jobs, directories and reviews.
π€ For AI Agents & LLM Apps
This actor is MCP-ready: call it from AI agents (Claude, GPT, LangChain, LlamaIndex, or the Apify MCP server) to answer questions like "what two-bedroom apartments rent for under $2,000 in Austin right now?". The rent range is explicit in Rent Min / Rent Max, so an agent can reason about affordability without parsing a price string.
To wire it up: the ready-made Node.js and Python client snippets call this actor in a few lines, the MCP tab exposes it as a tool to an MCP client, and once you have run the actor you can wire its Integrations tab in your own Apify Console to push each run straight to Google Sheets, Slack, a webhook or your own storage (how integrations work).
β οΈ Disclaimer
This actor is not affiliated with, endorsed by, or connected to Zillow Group. It extracts only publicly visible listing information for lawful purposes such as market research and personal planning; no login is used and no private data is accessed. You are responsible for how you use the data β respect Zillowβs terms and applicable laws. Apifyβs own write-up on the legality of web scraping is a good starting point, and personal data in the output (agent names, phone numbers, emails) falls under rules such as EU Regulation 2016/679.
zillow rentals scraper Β· scrape zillow apartments Β· zillow rent data extractor Β· apartment rent range scraper Β· zillow for rent listings Β· zillow rentals API Β· rental market data Β· export zillow rentals to excel