Zillow Property Detail Scraper — No Login · By URL avatar

Zillow Property Detail Scraper — No Login · By URL

Pricing

$4.00 / 1,000 property scrapeds

Go to Apify Store
Zillow Property Detail Scraper — No Login · By URL

Zillow Property Detail Scraper — No Login · By URL

Give it Zillow property URLs, get structured data back: address, price, bedrooms, living area, coordinates, status. No login. $0.004 per property, unbilled if delisted.

Pricing

$4.00 / 1,000 property scrapeds

Rating

0.0

(0)

Developer

Gio

Gio

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

10 days ago

Last modified

Categories

Share

Zillow Property Detail Scraper

Give it one or more Zillow property-detail URLs and get back structured listing data for each: address, city, state, ZIP, price, currency, bedrooms, living area, coordinates, property type and listing status. No login, no API key, one URL in and one record out.

Why use this scraper

Zillow does not offer a public API for individual property lookups, and most "Zillow scraper" tools are built around keyword search, not a direct, predictable URL-to-record lookup. This Actor:

  • Takes a list of exact property URLs and returns exactly one record per URL — no search, no fuzzy matching, no guessing which listing you meant.
  • Needs no login, no session cookie, no Zillow account.
  • Reads the structured data Zillow itself embeds on the page for search engines, so it is fast and does not depend on fragile page layout parsing.
  • Charges only for properties that come back with real structured data; a delisted or blocked URL does not get billed.

Overview

For each propertyUrls entry, the Actor fetches the Zillow property-detail page and extracts the structured listing information Zillow embeds in it: address, city, state, ZIP code, price, currency, availability status, property type, bedroom count, living area in square feet, latitude/longitude and the original URL. One run can process a list of property URLs in a single call, each one billed independently.

Because each URL is looked up individually and billed on its own, this Actor fits naturally into a pipeline step rather than a one-off report: pass in whatever list of property URLs your own process produces this week, and only pay for the ones that come back with real data.

Supported inputs

FieldTypeDescription
propertyUrlsarray of strings (required)List of zillow.com/homedetails/*_zpid/ property URLs to look up

Use cases

  1. Investment screening — feed a shortlist of property URLs gathered elsewhere (a Zillow search export, an email alert, an agent's list) and get structured price/size/location data back for a side-by-side comparison.
  2. Comps building — pull structured data for a set of comparable properties in a neighborhood to support a valuation or an offer.
  3. Lead and listing monitoring — re-run the same property URL on a schedule to track price or availability changes over time.
  4. Data enrichment pipelines — combine with a Zillow search Actor: use the search Actor to find candidate property URLs, then this Actor to pull the full structured detail record for each one.

How it works

  1. The Actor deduplicates propertyUrls and fetches each property-detail page.
  2. It parses the RealEstateListing JSON-LD block Zillow embeds in the page HTML for search-engine indexing, the same structured data Google itself reads.
  3. Address, price, bedrooms, living area, coordinates, property type and availability are extracted directly from that structured block, with a zpid and scrapedAt timestamp added to each record.
  4. If a page does not expose that JSON-LD block, for example because the listing has been delisted or Zillow serves a block page for that request, the record comes back with a warning field explaining why instead of guessed or empty property fields.

Input configuration — 3 examples

Mode 1 — single property:

{
"propertyUrls": [
"https://www.zillow.com/homedetails/3020-Dona-Emilia-Dr-Studio-City-CA-91604/20031321_zpid/"
]
}

Mode 2 — a short list for comps:

{
"propertyUrls": [
"https://www.zillow.com/homedetails/3020-Dona-Emilia-Dr-Studio-City-CA-91604/20031321_zpid/",
"https://www.zillow.com/homedetails/1600-Pennsylvania-Ave-SE-Washington-DC-20003/9512050_zpid/"
]
}

Mode 3 — larger batch from a saved search export:

{
"propertyUrls": [
"https://www.zillow.com/homedetails/3020-Dona-Emilia-Dr-Studio-City-CA-91604/20031321_zpid/",
"https://www.zillow.com/homedetails/1600-Pennsylvania-Ave-SE-Washington-DC-20003/9512050_zpid/",
"https://www.zillow.com/homedetails/4-Charles-St-APT-11G-New-York-NY-10014/30798592_zpid/"
]
}

Output sample

Real output from a smoke run against two property URLs, unedited:

{
"zpid": "20031321",
"address": "3020 Dona Emilia Dr",
"city": "Studio City",
"state": "CA",
"zipCode": "91604",
"price": 4200000,
"currency": "USD",
"availability": "SoldOut",
"propertyType": "SingleFamilyResidence",
"bedrooms": 6,
"livingAreaSqft": 5811,
"latitude": 34.12619,
"longitude": -118.37645,
"url": "https://www.zillow.com/homedetails/3020-Dona-Emilia-Dr-Studio-City-CA-91604/20031321_zpid/",
"scrapedAt": "2026-10-15T09:27:35.143Z"
}
{
"zpid": "9512050",
"address": "12628 W Lake Rd",
"city": "East Springfield",
"state": "PA",
"zipCode": "16411",
"price": 189500,
"currency": "USD",
"availability": "SoldOut",
"propertyType": "SingleFamilyResidence",
"bedrooms": 3,
"livingAreaSqft": 1400,
"latitude": 41.983868,
"longitude": -80.43096,
"url": "https://www.zillow.com/homedetails/1600-Pennsylvania-Ave-SE-Washington-DC-20003/9512050_zpid/",
"scrapedAt": "2026-10-15T09:28:48.022Z"
}

Key output fields

FieldTypeDescription
zpidstringZillow's internal property identifier
addressstringStreet address
citystringCity name
statestringState abbreviation
zipCodestringZIP / postal code
pricenumberListing or last-known price
currencystringCurrency code, typically USD
availabilitystringListing status as Zillow's structured data reports it, e.g. SoldOut
propertyTypestringProperty type, e.g. SingleFamilyResidence
bedroomsintegerNumber of bedrooms
livingAreaSqftnumberLiving area in square feet
latitude / longitudenumberProperty coordinates
urlstringThe input URL, echoed back
scrapedAtstringISO timestamp of the extraction
warning / messagestringPresent only when the page did not expose structured listing data (delisted, blocked, or unsupported page type)

Pricing

Pay per event, no subscription.

EventPriceWhen
Property scraped$0.004Per property returned with real structured data

Example: a batch of 25 property URLs where 22 return real data costs 22 × $0.004 = $0.088; the 3 that come back with a warning are not charged.

What makes this richer than the competition

Compared with the two closest listings for the same target on the Apify Store:

  • vs. maxcopell/zillow-detail-scraper (1,162 users/30d): the highest-traffic direct-URL detail scraper on the Store; this Actor is a narrower, single-purpose alternative when you specifically need a fast, structured-data-only lookup without the surrounding Zillow-scraper ecosystem maxcopell builds its listing around.
  • vs. api-ninja/zillow-property-details-scraper (102 users/30d): that listing advertises tax history, interior/building specs, lot info, schools and photos on top of the core fields; this Actor covers the core price/location/size fields only, at a simpler input (just a URL list) and a lower per-item commitment if you do not need the extra layers.

Notes & limitations

  • Reads only the structured data (JSON-LD) Zillow embeds on the page. Fields not present in that block (bathrooms, year built, Zestimate, tax history, photos, agent/broker details) are not included.
  • If a URL is delisted, redirected, or the page does not expose a RealEstateListing structured block, that record comes back with warning: "no-listing-data" and a message field instead of property data, and is not billed.
  • availability reflects exactly the status string Zillow's own structured data reports (e.g. a property that has already sold still shows under its original zpid with a status like SoldOut); it is not re-derived or guessed.
  • This Actor looks up properties by direct URL only; it does not perform keyword or location search. Pair it with a Zillow search Actor if you need to discover property URLs first.
  • price reflects the last price Zillow's structured data carries for that property, whether the listing is currently active, pending, or already sold; check availability alongside it before treating the number as a current asking price.

FAQ

Do I need a Zillow account or API key? No. The Actor reads the same structured data a search engine reads from the public property page.

What if a property has been sold or taken off the market? You still get a record with whatever structured data Zillow kept on the page (often the last known price and status); if Zillow removed the structured block entirely, you get a warning instead.

Can I pass a search URL instead of a property URL? No, propertyUrls must be direct zillow.com/homedetails/*_zpid/ links. Use a Zillow search Actor to find those URLs first.

How many URLs can I pass in one run? There is no hard cap in the input schema; for very large batches, split across multiple runs to keep individual run times manageable.

Why are some fields like bathrooms or Zestimate missing? They are not present in the structured data block this Actor reads; only the fields listed in Key output fields are extracted.

For AI Agents & LLM Apps

This Actor is Apify MCP-compatible and can be called directly from an LLM agent:

  • Via Apify MCP (mcp.apify.com): add gio21/zillow-property-detail-scraper as a tool and pass {"propertyUrls": ["https://www.zillow.com/homedetails/3020-Dona-Emilia-Dr-Studio-City-CA-91604/20031321_zpid/"]} as the call arguments.
  • Via API (no MCP needed):
curl -X POST "https://api.apify.com/v2/acts/gio21~zillow-property-detail-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"propertyUrls": ["https://www.zillow.com/homedetails/3020-Dona-Emilia-Dr-Studio-City-CA-91604/20031321_zpid/"]}'

Disclaimer

This Actor is an independent tool that reads publicly available Zillow property-detail pages. It is not affiliated with, endorsed by, or sponsored by Zillow Group, Inc. "Zillow" and related marks are trademarks of Zillow, Inc. Use this Actor in accordance with Zillow's Terms of Service and applicable data protection law; only public data is collected.

SEO Keywords

zillow scraper, zillow property detail scraper, scrape zillow listing, zillow api alternative, zillow zpid lookup, real estate data scraper, zillow price data api, no login zillow scraper, zillow listing data extraction, zillow comps scraper