Zillow Search Scraper avatar

Zillow Search Scraper

Pricing

$19.99/month + usage

Go to Apify Store
Zillow Search Scraper

Zillow Search Scraper

Scrape Zillow search results with ease ๐Ÿก๐Ÿ”Ž Extract property details, prices, addresses, agent info, listings, and more from any search. Perfect for real estate research, lead generation, market analysis, and competitor tracking. Get fresh housing data fast ๐Ÿš€

Pricing

$19.99/month + usage

Rating

0.0

(0)

Developer

ScrapePilot

ScrapePilot

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

13 days ago

Last modified

Share

Zillow Search Scraper

The Zillow Search Scraper is a fast, reliable Zillow listings scraper that extracts structured property data from Zillow search results at scale. It solves the pain of manually collecting Zillow search results by automating pagination and map search extraction, making it a powerful Zillow data scraper and Zillow API alternative for researchers, marketers, developers, and analysts. With dynamic-zoom pagination, map markers mode, and HTML fallback, teams can scrape Zillow listings across cities and neighborhoods and build robust Zillow data exports in minutes.

What data / output can you get?

Below are the primary fields the scraper saves for each property. Field names match the dataset records exactly.

Data typeDescriptionExample value
zpidZillow Property ID (string)"55826232"
idAlias of zpid for convenience"55826232"
priceFormatted price string"$1,000,000"
unformattedPriceNumeric price parsed from price1000000
addressFull display address"3810 Hawthorne Ave, Dallas, TX 75219"
addressStreetStreet line extracted from address"3810 Hawthorne Ave"
addressCityCity extracted from address"Dallas"
addressStateState/region code when available"TX"
addressZipcodeZIP code extracted from address"75219"
bedsBedrooms3
bathsBathrooms3.0
areaLiving area (sqft)2622
detailUrlFull URL to the listing page"https://www.zillow.com/homedetails/..."
statusTypeListing status type"FOR_SALE"
statusTextHuman-readable status"House for sale"
imgSrcPrimary image URL"https://photos.zillowstatic.com/..."
latLongGeographic coordinates{"latitude": 32.822216, "longitude": -96.811325}
zestimateZillowโ€™s estimated value (if available)994000

Bonus metadata includes: palsId, rawHomeStatusCd, marketingStatusSimplifiedCd, hasImage, countryCurrency, isUndisclosedAddress, streetViewURL, streetViewMetadataURL, shouldShowRequestOnPrice, isZillowOwned, flexFieldText, contentType, hdpData, isSaved, isUserClaimingOwner, isUserConfirmedClaim, pgapt, sgapt, shouldShowZestimateAsPrice, has3DModel, hasVideo, isHomeRec, hasAdditionalAttributions, isFeaturedListing, isShowcaseListing, list, relaxed, carouselPhotosComposable, isPaidBuilderNewConstruction, foundOnSearchPage, foundFromSearchUrl, and zoomQuadrantSequence. You can export results from the Apify dataset to JSON, CSV, or Excel for downstream analysis.

Key features

  • ๐Ÿงญ Bold dynamic-zoom pagination (API-based)
    Efficiently collect large result sets by splitting map bounds into quadrants when counts exceed Zillowโ€™s usual pagination cap. Ideal for a Zillow map search scraper workflow.

  • ๐Ÿ—บ๏ธ Map markers mode (capped to ~500 results per URL)
    A fast Zillow web scraping bot mode that focuses on map marker results when you only need top-level coverage.

  • ๐Ÿงฉ HTML pagination fallback
    When API-mode isnโ€™t available (e.g., keyword URLs without searchQueryState), the scraper switches to HTML-based parsing to keep your Zillow data extractor pipeline running.

  • ๐Ÿ” Intelligent proxy management
    Starts without proxy and auto-falls back to Apify Residential proxies with retry logic to minimize blocks and maximize reliability.

  • ๐Ÿ“ฅ Live dataset saving
    Listings are pushed to the dataset as soon as theyโ€™re discovered, so you keep results even if a run stops early.

  • ๐Ÿ“ฆ Bulk processing of multiple locations
    Feed in many Zillow search URLs or keywords to scrape Zillow property data across markets in a single run.

  • โš™๏ธ Request pacing & limits
    Configurable limits via maxItems and internal pacing controls to balance speed and stability.

  • ๐Ÿ‘จโ€๐Ÿ’ป Developer friendly
    Built with the Apify SDK (Python). Access results via the Apify API, connect with your Zillow data scraper Python scripts, and integrate into automations (Zapier, Make, n8n, LangChain).

  • ๐Ÿ“ค Easy data export
    Download Zillow data export CSV, JSON, or Excel from the Apify dataset for BI tools, CRMs, or research stacks.

How to use Zillow Search Scraper - step by step

  1. Create or log in to your Apify account at https://console.apify.com.
  2. Open the Zillow Search Scraper actor.
  3. Enter your input:
    • Paste Zillow search URLs (recommended) or keywords/locations (e.g., "dallas-tx") into searchUrls.
    • Choose the Items extraction method:
      • PAGINATION_WITH_DYNAMIC_ZOOM_INCREASE for very large result sets.
      • PAGINATION_WITHOUT_ZOOMING_IN for HTML-based pagination.
      • MAP_MARKERS for a lighter run (up to ~500 results).
    • Set Maximum Items to control how many listings to collect per URL.
    • Configure Proxy Configuration (optional). By default, it starts without proxy and falls back automatically if needed.
  4. Click Run. The actor will log progress and push items as theyโ€™re found.
  5. Monitor the run in real time in the Logs tab.
  6. When finished, go to the Dataset tab to view results.
  7. Export your Zillow property data to JSON, CSV, or Excel.

Pro Tip: Calling the actor via the Apify API lets you feed inputs programmatically and pipe the dataset into your data warehouse, CRM, or a Zillow leads scraper workflow.

Use cases

Use case nameDescription
Real estate market researchAnalyze price trends, inventory, and neighborhoods by exporting structured search results from a Zillow home data scraper.
Investor deal sourcingIdentify properties that meet ROI criteria by filtering beds/baths/area and running bulk location inputs.
Competitive analysisTrack pricing and status changes across ZIP codes to benchmark against competitors using a Zillow search results scraper.
Lead generationBuild a Zillow leads scraper pipeline by exporting listing details and linking to agents or broker pages downstream.
Data enrichment & analyticsFeed a Zillow property data download into analytics tools for dashboards, forecasting, or territory planning.
API/data engineeringOrchestrate a Zillow real estate scraping tool via Apify API and integrate with Make/n8n for recurring pipelines.
Academic & policy researchCollect large, reproducible datasets across cities to study affordability, density, or market dynamics.

Why choose Zillow Search Scraper?

Engineered for precision and scale, this Zillow property data extractor combines dynamic API pagination with robust HTML fallback and proxy resilience.

  • โœ… Accurate, structured outputs: Clean JSON with normalized fields (prices, address parts, coordinates, status, images).
  • ๐ŸŒ Scales across markets: Supports bulk inputs so you can scrape Zillow listings across many regions in one run.
  • ๐Ÿ‘จโ€๐Ÿ’ป Built for developers: Use the Apify API and Python SDK to automate, schedule, and integrate with your stack.
  • ๐Ÿ”’ Safe & reliable operations: Proxy fallback and retry logic reduce blocks for production-grade stability.
  • โšก Faster than manual scraping: Skip brittle browser extensions and unstable tools; leverage a maintained, server-side solution.
  • ๐Ÿ’พ Easy data export: Seamlessly download Zillow data export CSV/JSON/Excel from the dataset.
  • ๐Ÿ”— Workflow-ready: Connect to Zapier, Make, n8n, or LangChain for end-to-end automation.

In short, itโ€™s a production-ready Zillow web scraping bot that outperforms ad-hoc scripts and extensions for teams who need consistency and scale.

Yes โ€” when used responsibly. This actor collects data from publicly available Zillow search pages only and does not access private or password-protected content. You should:

  • Scrape only public information and respect platform terms.
  • Comply with applicable regulations (e.g., GDPR, CCPA).
  • Avoid spam and misuse of contact data.
  • Consult your legal team for edge cases or regulated use.

Users are responsible for ensuring compliance with all laws and terms in their jurisdictions.

Input parameters & output format

Example JSON input

{
"searchUrls": [
"https://www.zillow.com/dallas-tx/?category=SEMANTIC&searchQueryState=%7B%22isMapVisible%22%3Atrue%2C%22mapBounds%22%3A%7B%22north%22%3A33.10483509834637%2C%22south%22%3A32.53008985410089%2C%22east%22%3A-96.3544578671875%2C%22west%22%3A-97.2004051328125%7D%2C%22filterState%22%3A%7B%22sort%22%3A%7B%22value%22%3A%22globalrelevanceex%22%7D%7D%2C%22isListVisible%22%3Atrue%2C%22usersSearchTerm%22%3A%22Dallas%2C%20TX%22%2C%22category%22%3A%22cat1%22%2C%22regionSelection%22%3A%5B%7B%22regionId%22%3A38128%2C%22regionType%22%3A6%7D%5D%7D"
],
"extractionMethod": "PAGINATION_WITH_DYNAMIC_ZOOM_INCREASE",
"maxItems": 20,
"proxyConfiguration": {
"useApifyProxy": false
}
}

Input parameters

  • searchUrls (array, required):
    Description: List of Zillow search URLs (full URLs with searchQueryState) or keywords/locations to search. Supports bulk input. Enter full Zillow URLs (recommended) or keywords like "dallas-tx", "new-york-ny".
    Default: none (must provide at least one)

  • extractionMethod (string, optional):
    Description: Choose the scraping method. Dynamic zoom can go beyond Zillow's normal pagination cap by splitting the map into smaller quadrants (best for large result sets). Pagination without zooming uses HTML pages (good when API is blocked). Map markers is limited to roughly 500 results per search URL.
    Allowed values:

    • PAGINATION_WITH_DYNAMIC_ZOOM_INCREASE
    • PAGINATION_WITHOUT_ZOOMING_IN
    • MAP_MARKERS
      Default: "PAGINATION_WITH_DYNAMIC_ZOOM_INCREASE"
  • maxItems (integer, optional):
    Description: Maximum number of property listings to scrape (1-10000).
    Default: 20

  • proxyConfiguration (object, optional):
    Description: Proxy settings. By default, requests are sent without proxy. If Zillow blocks requests, the actor will automatically fallback to datacenter proxy, then residential proxy with 3 retries.
    Default: {"useApifyProxy": false}

Advanced runtime keys (via API, not shown in UI)

  • delay (integer, optional): Request pacing between steps (seconds). Default: 2.
  • sortOrder (string, optional): If provided, the actor will inject this sort value into the URLโ€™s searchQueryState before scraping.

Example JSON output

{
"zpid": "55826232",
"palsId": null,
"id": "55826232",
"rawHomeStatusCd": "FSBA",
"marketingStatusSimplifiedCd": null,
"providerListingId": "*APID55826232*",
"imgSrc": "https://photos.zillowstatic.com/fp/abc123-p_e.jpg",
"hasImage": true,
"detailUrl": "https://www.zillow.com/homedetails/55826232_zpid/",
"statusType": "FOR_SALE",
"statusText": "House for sale",
"countryCurrency": "$",
"price": "$1,000,000",
"unformattedPrice": 1000000,
"address": "3810 Hawthorne Ave, Dallas, TX 75219",
"addressStreet": "3810 Hawthorne Ave",
"addressCity": "Dallas",
"addressState": "TX",
"addressZipcode": "75219",
"isUndisclosedAddress": false,
"streetViewURL": null,
"streetViewMetadataURL": null,
"shouldShowRequestOnPrice": false,
"beds": 3,
"baths": 3,
"area": 2622,
"latLong": {
"latitude": 32.822216,
"longitude": -96.811325
},
"isZillowOwned": false,
"flexFieldText": null,
"contentType": "Property",
"hdpData": {},
"isSaved": false,
"isUserClaimingOwner": false,
"isUserConfirmedClaim": false,
"pgapt": null,
"sgapt": null,
"zestimate": 994000,
"shouldShowZestimateAsPrice": false,
"has3DModel": false,
"hasVideo": false,
"isHomeRec": false,
"hasAdditionalAttributions": false,
"isFeaturedListing": false,
"isShowcaseListing": false,
"list": true,
"relaxed": false,
"carouselPhotosComposable": {
"baseUrl": "https://photos.zillowstatic.com/fp/{photoKey}-p_e.jpg",
"communityBaseUrl": null,
"photoData": [
{ "photoKey": "abc123" }
],
"communityPhotoData": null,
"isStaticUrls": false
},
"isPaidBuilderNewConstruction": false,
"foundOnSearchPage": 1,
"foundFromSearchUrl": "https://www.zillow.com/dallas-tx/?category=SEMANTIC&searchQueryState=%7B...%7D",
"zoomQuadrantSequence": []
}

Note: Some fields may be missing or null for certain listings if the source doesnโ€™t include them (e.g., zestimate, streetViewURL). The actor always pushes whatever is available from each result.

FAQ

Is there a free trial to test the scraper?

Yes. This actor offers trial minutes on Apify (120 trial minutes are available) so you can validate your workflow and data quality before upgrading. You can start a run directly from the Apify Console.

Do I need to log in to use this Zillow scraper?

No. The Zillow Search Scraper works on publicly available Zillow search pages and does not require login or cookies. It does not access private or authenticated content.

Which extraction method should I choose?

Use PAGINATION_WITH_DYNAMIC_ZOOM_INCREASE when you expect very large result sets; it splits map bounds into quadrants to go beyond typical pagination caps. If API-based requests arenโ€™t viable for a given URL (e.g., keyword-only), the actor automatically falls back to HTML-based pagination. MAP_MARKERS is a light mode capped to roughly 500 results per URL.

How many results can I scrape per run?

You can control volume with maxItems (1โ€“10,000). In dynamic-zoom mode, the scraper can traverse quadrants to uncover more items; map markers mode is limited to about 500 results per search URL.

Can I scrape multiple cities or ZIP codes at once?

Yes. Add multiple entries to searchUrls (full Zillow search URLs or keywords like "dallas-tx") to run bulk collection across locations.

How does proxy fallback work?

The actor starts without a proxy. If requests are blocked, it automatically switches to Apify Residential proxies with retry logic and locks the working proxy for the rest of the run. You can also supply your own proxy settings via proxyConfiguration.

Can I integrate this with Python or my data pipeline?

Yes. Access datasets via the Apify API and connect to your Python scripts. You can also integrate with Make, n8n, Zapier, or LangChain to build an automated Zillow data scraper pipeline.

What data formats can I export?

You can download results from the Apify dataset in JSON, CSV, or Excel formats for BI tools, CRMs, and analysis workflows.

Closing thoughts

The Zillow Search Scraper is built for teams that need reliable, structured Zillow property data at scale. With dynamic-zoom API pagination, HTML fallback, proxy resilience, and bulk inputs, itโ€™s a dependable Zillow real estate scraping tool for researchers, analysts, and developers. Export clean JSON/CSV/Excel, connect via API to your Python or automation stack, and turn Zillow search results into actionable datasets. Start extracting smarter housing data today.