๐Ÿก Zillow Detail Scraper avatar

๐Ÿก Zillow Detail Scraper

Pricing

from $4.99 / 1,000 results

Go to Apify Store
๐Ÿก Zillow Detail Scraper

๐Ÿก Zillow Detail Scraper

Extract detailed property data from Zillow listings, including price, address, photos, bedrooms, bathrooms, square footage, Zestimate, property features, agent details, and more. Perfect for real estate research, lead generation, market analysis, and data collection.

Pricing

from $4.99 / 1,000 results

Rating

0.0

(0)

Developer

Scrapier

Scrapier

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

18 hours ago

Last modified

Share

Turn any Zillow detail URL โ€” or even a plain street address โ€” into clean, structured JSON. This Actor pulls the full property record Zillow's own pages use: price and complete price & tax history, beds/baths, living area and lot size, assigned schools, photo galleries, listing agent & MLS facts, nearby homes & comparable sales, and dozens more fields. It works across homes, apartments, buildings and communities.

โญ Why Choose Us?

  • ๐ŸŽฏ Every page type โ€” homedetails, /apartments/, /b/ buildings and /community/ pages, plus free-form addresses.
  • ๐Ÿ’ธ Cost-efficient by design โ€” starts with a direct connection and only escalates the network (datacenter โ†’ residential) when Zillow actually pushes back. No wasted proxy spend.
  • ๐Ÿงฑ Deep, faithful data โ€” you get the same rich object that hydrates Zillow's React app, not a thin scrape of the visible HTML.
  • ๐Ÿ’พ Live results โ€” records are saved one-by-one as they're collected; a stopped run never loses what it already found.
  • ๐Ÿ“Š Per-section output โ€” every record is tagged with the input it came from, so you can group results in the Output tab.

โœจ Key Features

FeatureDescription
๐Ÿ”— Bulk URLsPaste as many detail URLs as you like
๐Ÿ“ Address resolutionType 123 Main St, City, ST โ€” we find the listing
๐Ÿข Building unitsOptionally emit each unit in a building as its own record
๐Ÿ—ƒ๏ธ Dataset inputFeed in a Zillow search-scraper dataset and enrich every row
๐Ÿ›ก๏ธ Smart proxy ladderdirect โ†’ datacenter โ†’ residential, sticky, auto-retry
๐Ÿงพ MLS & agent factsListing agent, broker, MLS id, attribution
๐Ÿ“ˆ HistoryFull price history & tax history
๐Ÿซ Schools & compsAssigned schools, nearby homes, comparable sales

๐Ÿ“ฅ Input

FieldTypeDescription
startUrlsarrayZillow detail URLs (home / apartment / building / community)
addressesarrayFree-form street addresses, resolved automatically
propertyStatusstringFOR_SALE ยท RECENTLY_SOLD ยท FOR_RENT โ€” status hint for your URLs
extractBuildingUnitsstringdisabled ยท all ยท for_sale ยท recently_sold ยท for_rent ยท off_market
searchResultsDatasetIdstringDataset of search results to enrich
proxyConfigurationobjectDatacenter rung of the proxy ladder
{
"startUrls": [
{ "url": "https://www.zillow.com/homedetails/17-Zelma-Dr-Greenville-SC-29617/11026031_zpid/" },
{ "url": "https://www.zillow.com/apartments/san-antonio-tx/westpond/5XkVjF/" }
],
"addresses": ["18 Zelma Dr, Greenville, SC 29617"],
"propertyStatus": "RECENTLY_SOLD",
"extractBuildingUnits": "disabled",
"proxyConfiguration": { "useApifyProxy": true }
}

๐Ÿ“ค Output

Each record is the full Zillow entity plus a few helper fields:

  • sectionIndex / sourceUrl โ€” which input this record came from (for grouping)
  • addressOrUrlFromInput โ€” the exact URL or address you supplied
  • isValid โ€” true when full data was retrieved
  • scrapedAt โ€” ISO timestamp
  • recordType โ€” property or unit
{
"sectionIndex": 1,
"zpid": 11026031,
"streetAddress": "17 Zelma Dr",
"city": "Greenville",
"state": "SC",
"zipcode": "29617",
"homeStatus": "RECENTLY_SOLD",
"homeType": "SINGLE_FAMILY",
"price": 235000,
"bedrooms": 3,
"bathrooms": 2,
"livingArea": 1450,
"resoFacts": { "...": "..." },
"priceHistory": [ "..." ],
"taxHistory": [ "..." ],
"schools": [ "..." ],
"addressOrUrlFromInput": "https://www.zillow.com/homedetails/.../11026031_zpid/",
"isValid": true,
"scrapedAt": "2026-06-07T12:00:00.000Z"
}

๐Ÿš€ How to Use (Apify Console)

  1. Log in at console.apify.com โ†’ Actors.
  2. Open Zillow Detail Scraper.
  3. Add your URLs and/or addresses, set the status & proxy options.
  4. Click Start.
  5. Watch the live logs as records stream in.
  6. Open the Output tab โ€” switch to By Section to group by input.
  7. Export to JSON / CSV / XLSX.

๐Ÿค– Use via API

curl -X POST "https://api.apify.com/v2/acts/YOUR~zillow-detail-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"startUrls":[{"url":"https://www.zillow.com/homedetails/17-Zelma-Dr-Greenville-SC-29617/11026031_zpid/"}]}'

๐ŸŽฏ Best Use Cases

  • Real-estate market research & comps analysis
  • Lead enrichment for agents and investors
  • Building price-history / tax datasets
  • Powering valuation and listing-monitoring tools

๐Ÿ’ฒ Pricing

This Actor uses pay-per-event billing โ€” you're charged per result row written to the dataset, plus standard platform usage. The exact price is shown on the Actor's Store page.

โ“ FAQ

Can I scrape by address instead of URL? Yes โ€” use the addresses field; each one is resolved to its detail page.

What if Zillow blocks a request? The Actor automatically upgrades the network (datacenter โ†’ residential, retried up to 3ร—) and continues. Switches are logged.

Do apartments and buildings work? Yes. Turn on extractBuildingUnits to also get each individual unit as a record.

Will a stopped run lose data? No โ€” records are saved live as they're scraped.

  • Only publicly available data is collected.
  • You are responsible for compliance with Zillow's Terms of Service and applicable laws (GDPR, CCPA, etc.).
  • Use reasonable rate limits and scrape responsibly.

๐Ÿ›Ÿ Support & Feedback

Questions, bugs or feature requests? Reach out at dev.scraperengine@gmail.com ๐Ÿค