Zillow Property Listings Scraper
Pricing
from $0.07 / 1,000 item extracteds
Zillow Property Listings Scraper
Scrape public Zillow sale, rent, and sold property search results with prices, addresses, beds, baths, brokers, images, and map coordinates.
Pricing
from $0.07 / 1,000 item extracteds
Rating
0.0
(0)
Developer
Hanna Nosova
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
20 hours ago
Last modified
Categories
Share
Scrape public Zillow property search results and export structured sale, rental, or recently sold listings to CSV, JSON, Excel, or the Apify API.
Use it to monitor housing inventory, collect comparable properties, enrich market research, build relocation shortlists, or track public listing changes by city or Zillow search URL.
Who is it for?
- Real-estate investors tracking prices, inventory, and comparable homes.
- Agents and brokerages monitoring public listings in target markets.
- Proptech and data teams building internal dashboards from public property search results.
- Relocation teams creating shortlists across multiple cities.
- Market researchers comparing public sale and rental inventory over time.
Example input
{"locations": ["San Francisco, CA"],"listingType": "for_sale","maxItems": 25,"maxPages": 1,"proxy": { "useApifyProxy": true }}
You can also paste Zillow search result URLs directly:
{"startUrls": [{ "url": "https://www.zillow.com/homes/for_rent/Austin,-TX_rb/" }],"maxItems": 50,"maxPages": 2}
Output example
{"zpid": "12345678","url": "https://www.zillow.com/homedetails/12345678_zpid/","address": "123 Market St, San Francisco, CA 94103","price": "$1,250,000","unformattedPrice": 1250000,"currency": "USD","beds": 3,"baths": 2,"area": 1450,"propertyType": "SINGLE_FAMILY","homeStatus": "FOR_SALE","latitude": 37.7749,"longitude": -122.4194,"brokerName": "Example Realty","imageUrl": "https://photos.zillowstatic.com/...jpg","daysOnZillow": 12,"isFeatured": false,"listingType": "for_sale","sourceUrl": "https://www.zillow.com/homes/for_sale/San-Francisco,-CA_rb/","scrapedAt": "2026-07-08T08:00:00.000Z"}
Input settings
| Field | Type | Description |
|---|---|---|
startUrls | array | Public Zillow search result URLs to scrape. |
locations | array | City or area names. The actor creates Zillow search URLs from them. |
listingType | string | for_sale, for_rent, or sold for generated location searches. |
maxItems | integer | Maximum unique listings to save. |
maxPages | integer | Maximum result pages to request per search source. |
proxy | object | Apify Proxy settings. Recommended for Zillow because blocks can occur. |
Output fields
The dataset includes listing identity, URL, address, formatted and raw price, currency, beds, baths, living area, property type, home status, latitude, longitude, broker name, image URL, days on Zillow, featured flag, source URL, listing type, and scrape timestamp.
Pricing
This actor uses pay-per-event pricing:
- Start: $0.005 per run
- Property listing saved: tiered from $0.00012508 to $0.000030455 per listing, with the Bronze tier at $0.00010877 per listing.
At the Bronze tier, 1,000 saved listings cost about $0.11 plus the run start fee.
Tips and limits
- Start with a small
maxItemsvalue for your first run. - Zillow can block automated requests. Keep
maxPagesconservative and use Apify Proxy. - Only public listing/search data is extracted. The actor does not access private accounts, messages, saved homes, or owner-only data.
- If Zillow returns a CAPTCHA/block page, the run stops with a clear error rather than producing empty rows.
API usage
Run the actor from cURL:
curl "https://api.apify.com/v2/acts/fetch_cat~zillow-property-listings-scraper/runs?token=$APIFY_TOKEN" \-H 'Content-Type: application/json' \-d '{"locations":["San Francisco, CA"],"listingType":"for_sale","maxItems":20}'
Run it from Node.js:
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('fetch_cat/zillow-property-listings-scraper').call({locations: ['San Francisco, CA'],listingType: 'for_sale',maxItems: 20,});console.log(run.defaultDatasetId);
Run it from Python:
from apify_client import ApifyClientimport osclient = ApifyClient(os.environ['APIFY_TOKEN'])run = client.actor('fetch_cat/zillow-property-listings-scraper').call(run_input={'locations': ['San Francisco, CA'],'listingType': 'for_sale','maxItems': 20,})print(run['defaultDatasetId'])
MCP and agents
Use this actor from Apify MCP-compatible agents with:
https://mcp.apify.com/?tools=fetch_cat/zillow-property-listings-scraper
Add it to Claude Desktop or Claude Code with a command like:
$claude mcp add apify-zillow --url "https://mcp.apify.com/?tools=fetch_cat/zillow-property-listings-scraper"
Example MCP server JSON config:
{"mcpServers": {"apify-zillow": {"url": "https://mcp.apify.com/?tools=fetch_cat/zillow-property-listings-scraper"}}}
Example prompts:
- "Scrape up to 20 Zillow for-sale listings in San Francisco and summarize median price."
- "Collect rental listings for Austin and return address, price, beds, baths, and URL."
- "Compare public Zillow inventory for Denver and San Francisco using this actor."
Legality and responsible use
This actor extracts public listing/search information that is visible without logging in. Do not use it to collect private account data, bypass paywalls, or violate applicable laws or website terms. Keep request volume reasonable, use the built-in limits, and store only the data you are allowed to process.
FAQ
Does this actor need a Zillow account? No. It is designed for public search result pages only.
Can it scrape rentals and sold properties?
Yes. Use listingType for location inputs or paste matching Zillow search URLs in startUrls.
Why did my run stop with a block message?
Zillow may block automated traffic. Lower maxPages, keep concurrency low, and use Apify residential proxy settings.
Can I use exact Zillow filter URLs?
Yes. Paste the filtered public Zillow search URL into startUrls.
Does it scrape property detail pages? The first version focuses on search-result listing data. Detail-page enrichment can be added later if demand and reliability justify it.
Related actors
Support
If you need help, share your run ID or run URL, input JSON, expected output, and actual output so we can reproduce the issue.
Changelog
- 2026-07-08: Initial version for public Zillow property search listings.