Zillow Scraper — Zillow Listings, Prices & Zestimates avatar

Zillow Scraper — Zillow Listings, Prices & Zestimates

Pricing

from $50.00 / 1,000 property listings

Go to Apify Store
Zillow Scraper — Zillow Listings, Prices & Zestimates

Zillow Scraper — Zillow Listings, Prices & Zestimates

Zillow scraper for Zillow listings: US homes from search URLs or ZIP codes with price, beds, baths, square feet and Zestimates. Market data for real estate research, not investment advice.

Pricing

from $50.00 / 1,000 property listings

Rating

0.0

(0)

Developer

NexGenData

NexGenData

Maintained by Community

Actor stats

1

Bookmarked

4

Total users

0

Monthly active users

8 days ago

Last modified

Share

A Zillow scraper for Zillow listings: search URLs or ZIP codes in, homes out with price, beds, baths, sqft and Zestimate.

Scrape US home listings from Zillow — prices, beds, baths, sqft and Zestimates. Market data for your research, not investment advice.

Market data for your research. Not investment, valuation or financial advice.

📊 Sample Output

1 real rows delivered by Zillow Scraper — US Real Estate Listings & Prices API — run kv1qeueIK5dPAqoZD on build 0.0.74

statusaccepted_field_namesmessage
no_input{'searchUrls': ['searchUrls', 'urls', 'startUrls', 'pages', 'searchUr…Provide searchUrls or zipCodes to scrape Zillow listings.

Real rows from run kv1qeueIK5dPAqoZD on build 0.0.74 (2026-09-25), unedited apart from masked emails/phones and shortened long text; fields the source does not publish are empty.

⚙️ Sample inputs

This is the Store example input — the same input Apify's automated check runs — so it is proven to return rows on the current build. Paste it into the input form, or send it through the API, CLI or a schedule:

{
"maxListings": 50
}

🔧 Input reference

FieldTypeDefaultWhat it does
searchUrls['array', 'string']Zillow search URLs to scrape. Accepts a list of URLs OR a single URL string OR a comma/newline-separated list. Also accepts these alternative field names: urls, startUrls, pages,…
zipCodes['array', 'string']US zip codes to search Zillow for listings. Accepts a list OR a single zip code string OR a comma/newline-separated list. Also accepts these alternative field names: zips, postalC…
maxListingsinteger50Max listings per search (1-500).
urls['array', 'string']Alternative name for searchUrls. Accepts a list OR a single string OR comma/newline-separated.
startUrls['array', 'string']Alternative name for searchUrls. Accepts a list OR a single string OR comma/newline-separated.
pages['array', 'string']Alternative name for searchUrls. Accepts a list OR a single string OR comma/newline-separated.
searchUrlstringAlternative — a single value when you only need one. Comma-separated values are auto-split.
urlstringAlternative — a single value when you only need one. Comma-separated values are auto-split.
zips['array', 'string']Alternative name for zipCodes. Accepts a list OR a single string OR comma/newline-separated.
postalCodes['array', 'string']Alternative name for zipCodes. Accepts a list OR a single string OR comma/newline-separated.
zipcodes['array', 'string']Alternative name for zipCodes. Accepts a list OR a single string OR comma/newline-separated.
zipCodestringAlternative — a single value when you only need one. Comma-separated values are auto-split.
zipstringAlternative — a single value when you only need one. Comma-separated values are auto-split.

🧾 JSON sample record

One real record from run kv1qeueIK5dPAqoZD (emails/phones masked, long text shortened):

{
"status": "no_input",
"accepted_field_names": {
"searchUrls": [
"searchUrls",
"urls",
"startUrls",
"pages",
"searchUrl",
"url"
],
"zipCodes": [
"zipCodes",
"zips",
"postalCodes",
"zipcodes",
"zipCode",
"zip"
]
},
"message": "Provide searchUrls or zipCodes to scrape Zillow listings."
}

💰 Pricing

EventPrice (USD)When it is charged
Actor Start (apify-actor-start)$0.005Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event).
Property listing (apify-default-dataset-item)$0.05Single result in the default dataset.

Pay-per-event: you pay only for what the run delivers. A run that delivers nothing bills no result events (only the actor-start event, when the actor defines one). Example: a run that delivers 100 results costs 100 × $0.05 = $5.00 plus the start fee.

More from the NexGenData Real estate family:

Full catalog: NexGenData on Apify.

Prices and listings move constantly. Schedule a daily sweep (0 7 * * *) and track changes over time — an always-on listing feed.

📊 What you get

Clean JSON, one record per listing (full output has 15 fields):

  • zpid — Zpid
  • address — Address
  • city — City
  • state — State
  • zip — Zip
  • price — Price
  • beds — Beds
  • baths — Baths
  • sqft — Sqft
  • home_type — Home type

Pricing: $0.05 per listing (Pay-Per-Event) — about 20 per $1. Actor start fee $0.005 per run. Live prices are in the Pricing table below.

🤖 Use with AI agents

Point Claude, the OpenAI Agents SDK, an n8n flow or any MCP-aware client at it and pull data on demand.

Agentic payments (x402): Supports agentic payment via x402 — agents can call this actor with USDC, no API key required.

Global property data — listings and prices across seven markets:

Redfin (US) · Rightmove (UK) · MagicBricks (India) · Boliga (Denmark) · Centaline (Hong Kong) · Singapore URA · Singapore HDB

Agent front doors: Real Estate MCP · Redfin MCP


Public web data, assembled for research and monitoring.