Zillow Scraper API — Listings, Zestimate, Leads & Emails avatar

Zillow Scraper API — Listings, Zestimate, Leads & Emails

Pricing

from $1.30 / 1,000 listing scrapeds

Go to Apify Store
Zillow Scraper API — Listings, Zestimate, Leads & Emails

Zillow Scraper API — Listings, Zestimate, Leads & Emails

Zillow scraper and Zillow API alternative: for-sale, for-rent and sold listings, property details, Zestimate with its 30-day trend, all photos, 3D tours, open houses, emails, price & tax history, schools, MLS attribution, FSBA/FSBO/foreclosure flags and agent contacts. From $1.30/1k.

Pricing

from $1.30 / 1,000 listing scrapeds

Rating

0.0

(0)

Developer

Raven

Raven

Maintained by Community

Actor stats

1

Bookmarked

9

Total users

6

Monthly active users

11 days ago

Last modified

Share

Zillow Scraper — Listings, Property Details, Zestimate® & Agents 🏡

Scrape Zillow from $2 per 1,000 listings (from $1.30 per 1,000 on paid plans) — no login, no Zillow API key, no code, and no proxies to configure. Point this actor at a city, a ZIP code, a Zillow search URL, or specific property pages and get clean, structured JSON, CSV, or Excel in one run.

One actor covers the whole Zillow surface: search listings (for sale, for rent, sold), full property details with 180+ MLS facts, Zestimate® home values, and real-estate agent profiles with contact data. Whether you're doing real-estate market research, building a lead list, feeding a CRM, comparing prices, or tracking inventory across a metro area — it's all here.


Zillow Scraper on Apify — every listing every zestimate as structured JSON

Raven · Real-estate suite   •  Zillow, Realtor.com, Apartments.com, Idealista
 Zillow Scraper
➤ You are here
 Realtor.com Scraper
Listings, details, agents
 Apartments.com
Rentals, prices, emails
 Idealista Scraper
Properties, prices, agencies

What does this Zillow Scraper do?

Zillow doesn't offer an open, free public API for bulk listing data — the official Zillow APIs are gated behind partner approval, key limits, and restricted fields. This actor is a practical Zillow API alternative (an unofficial Zillow API): it reads the same publicly visible data the website shows and returns it as a structured dataset, with no approval process and no daily call ceiling.

Pick a mode — or just paste any Zillow URL and let the actor auto-detect it:

ModeWhat you point it atWhat you get back
🔎 Search listingsA city, ZIP, county, neighborhood, or Zillow search URLEvery home matching your filters — for sale, for rent, or recently sold — 60+ fields per card, open houses and price cuts included
🏠 Property detailsZillow /homedetails/ URLs or ZPIDsFull property record: 180+ facts, all photos, price & tax history, schools, Walk Score, climate risk, foreclosure & auction detail, comps, HOA, and the listing agent's name, email and phone
💰 Zestimate®A URL, ZPID, or plain street addressHome value and rent estimate, its dollar confidence range, the 30-day change, and up to 10 years of value history
🧑‍💼 Agent profilesAn agent profile URL or a location to discover agents inAgent name, email, phones, rating, licence, bio, team roster, active listings, and past sales

Auto-detect: drop a mix of Zillow URLs into Start URLs and the actor routes each one — search page → search, property page → details, profile page → agent — automatically.


Why use this Zillow Scraper?

  • Four scrapers in one — search, property details, Zestimate®, and agents, instead of stitching three separate actors together.
  • Data no other Zillow actor returns — climate risk with FEMA zone and insurance guidance, the full foreclosure/auction table down to the trustee and recorded documents, and the neighborhood ZHVI forecast.
  • Beats Zillow's ~500-result on-screen cap — for large metros the actor recursively splits the map into quadrants so you can pull thousands of listings per search (details below).
  • Every filter Zillow has — price, beds, baths, sqft, lot size, year built, HOA, days on market, keywords, home type, plus pool / garage / A-C / waterfront / 3D-tour / basement / price-reduced toggles.
  • All listing categories — for-sale-by-agent, FSBO, new construction, coming soon, auctions, and foreclosures, plus for-rent and recently-sold.
  • 180+ fields per property on detail mode — every non-null reso_* fact Zillow publishes for that listing (heating, cooling, appliances, parking, roof, flooring, view, HOA, green certifications, lease terms, and more), mirrored as-is instead of a hand-picked subset.
  • Listing-agent & broker contact data — name, phone, email, license number, brokerage, MLS ID (when Zillow exposes them).
  • One-click enrichment — flip on fetchDetails to turn any search into full property records in a single run.
  • Pure HTTP, no headless browser — browser-grade TLS fingerprint impersonation + residential-proxy rotation with automatic retries, so it's efficient and reliable without a slow, heavy browser.
  • Spreadsheet-ready — flip on flatOutput for clean CSV/Excel columns; export as JSON, CSV, Excel, XML, or HTML.

This actor vs. the official API vs. typical Zillow scrapers

Official Zillow APITypical Zillow scraperThis actor
AccessPartner approval + API keyUsually one narrow job per actorNo key, no login, one actor
CoverageRestricted, limited fieldsUsually search or details or agentsSearch + details + Zestimate® + agents
Result capRate/quota limitedOften stops at Zillow's on-screen capMap-quadrant split past the cap
Fields per propertyLimited setBasic card fields180+ facts + photos + history + schools + Walk Score
FiltersVariesA handfulAll Zillow filters + category toggles
OutputJSONJSONJSON, CSV, Excel, XML, HTML
PricingUsage tiers / negotiatedVariesFrom $2 / 1,000 (free plan), $1.30 / 1,000 paid

Competitor-column claims are generalized; individual actors vary.


What data can you extract from Zillow?

Search & property detail data, grouped:

CategoryFields
IdentityZPID, detail URL, MLS ID, parcel ID, county FIPS
Address & locationStreet, city, state, ZIP, county, neighborhood, latitude, longitude, time zone
ListingStatus (for sale / for rent / sold), price, price label, last sold price, days on Zillow, time on Zillow, page views, favorites
Property specsBeds, baths, living area, lot size, year built, home type, stories, levels, condition
FinancialsZestimate®, Rent Zestimate®, confidence range in dollars and %, tax-assessed value, annual tax, property tax rate, monthly HOA, price/sqft, and today's 30-year fixed / 15-year fixed / 5-1 ARM mortgage rates
Interior & buildingHeating, cooling, appliances, flooring, fireplace, parking, roof, foundation, construction materials, architectural style
Agent & brokerAgent name, email, phone, license number, brokerage, co-agent, MLS name
HistoryFull price history and tax history (date, price, event, source), plus up to 10 years of monthly Zestimate® values
CommunityAssigned and nearby schools with rating, grades, distance, level, district, enrollment and students-per-teacher; Walk Score, Transit Score and Bike Score; nearby cities, neighborhoods and ZIP codes; subdivision; zoning
Climate riskFlood, fire, heat, wind and air — each with a 1-10 score and label, the FEMA flood zone, Zillow's insurance recommendation, historic event counts, and the probability series out to 30 years
Distressed / foreclosureStage flags (pre-foreclosure, bank owned, was foreclosed) plus the full table: foreclosing bank, amount, auction date/time/location, defaulted loan and originator, past-due and unpaid balances, prior sale — and the trustee, legal description, APN and recorded documents
Comps & neighborhood valuesNearby comparable homes with price, beds/baths, area and coordinates; the neighborhood ZHVI, its year-over-year change and Zillow's forecast
MediaAll listing photos (highest resolution) — the full search-card carousel, not just the cover — main image, street-view image, static map, 3D tour / video walkthrough links, photo count, 3D-model / video flags
Listing category flagsisForSaleByAgent, isForSaleByOwner, isPending, isNewHome, isForeclosure, isComingSoon, isBankOwned, isForAuction, isPreforeclosureAuction, isShowcaseListing, isPremierBuilder, isFeatured, isNonOwnerOccupied, isUndisclosedAddress
Open housesEvery scheduled open house with start and end time
At-a-glance factsZillow's own label/value fact list (type, year built, heating, cooling, parking, lot, days on Zillow, price/sqft), plus the same values lifted into named reso_* fields
Bathroom breakdownFull, half, three-quarter, quarter and partial bathroom counts
Attribution & complianceMLS name and disclaimer, provider logo, listing office(s) and agent(s), listing agreement, buyer agent/brokerage on sold homes, last-checked and last-updated timestamps
TrendZestimate® and Rent Zestimate® 30 days ago and the 30-day change in dollars, so you get the short-term direction without a second run
Zillow insightshomeInsights — Zillow's own AI highlight phrases for the home — plus its "selling soon" percentile, interactive floor plan, 3D-tour view count and any builder or landlord promotion
RentalsAvailability date, unit number, lease term, deposit and pet rules, laundry, furnished flag, and whether the rent shown is a base price

Per record type — field counts:

  • Search listing60+ fields per home (address, price, beds/baths, area, lot, lat/long, home type, days on Zillow, time on Zillow, Zestimate®, Rent Zestimate®, tax-assessed value, broker name and phone, every carousel photo, the listing-category flags, marketing/status codes, the 3D/video flags — plus the open house schedule, price cut, sold price and rental availability date straight off the card).
  • Property detail180+ fields per home (everything above, plus every non-null reso_* fact Zillow ships for that listing — appliances, flooring, roof, foundation, lot features, green certifications, HOA fees, lease terms — atAGlanceFacts[], the bathroom breakdown, open houses, 3D-tour links, MLS attribution, photos[], priceHistory[], taxHistory[], schools[], assignedSchools[], homeInsights[], homeValueHistory[], mortgageRates, and optional Walk / Transit / Bike Score). Turn on Include climate risk, foreclosure & comps and it adds climateRisk, the foreclosure table with trustee and recorded documents, nearbyHomes[], rooms[] and marketValues230+ fields.
  • Zestimate®30 fields (Zestimate® with its low/high bound in dollars, the 30-day change, Rent Zestimate® and its 30-day change, price, last sold price and date, tax-assessed value, annual tax, property tax rate, price/sqft, monthly HOA, 10-year value history + address and specs).
  • Agent profile34 fields: name, business name, email, cell/brokerage/business phones, rating average & count, business address, licence(s) and brokerage licence, service areas, for-sale/for-rent counts, past-sales total, bio, team name and full team roster, Zillow's AI summary of the agent, professional info, websites, MLS IDs, coordinates, plus forSaleListings[], pastSales[], and optional reviews[].

How to scrape Zillow step by step

  1. Create a free Apify account — it takes a minute and comes with $5 in free monthly credits (≈ 2,500 listings a month, free).
  2. Open the Zillow Scraper and choose a Mode (or just paste Zillow URLs into Start URLs).
  3. Add your target — a location like Austin, TX, a ZIP like 90210, a Zillow search URL, or property/agent URLs.
  4. Apply filters — price, beds, baths, home type, days on market, features, and set Max results.
  5. Click Start and watch the run.
  6. Download your data — JSON, CSV, Excel, XML, or HTML from the Dataset tab, or pull it via the Apify API.

Zillow only shows about 500 homes on screen for any single search, and its underlying query returns at most 20 pages × 41 results = 820 per query. This actor works around that automatically:

  1. It resolves your location or URL to the map bounds Zillow uses.
  2. It paginates that region to the query limit.
  3. When a region holds more than 820 results, it recursively splits the map into four quadrants and repeats — zooming in until each rectangle fits under the cap.

The result: set Max results to 0 (unlimited) or a large number, and the actor keeps subdividing to pull far beyond the on-screen 500-home cap — thousands of listings from a single dense metro. No manual zooming, no copy-pasting map tiles.


Enrich every listing with full property details

Search cards carry 60+ fields. Turn on fetchDetails and, for every listing found, the actor also pulls its full property record to add year built, price & tax history, assigned schools, listing-agent contact, all photos, and the 180+ reso_* facts — merged into the same record. One run, search → enriched dataset. (Each enriched listing adds a property-detail charge — see pricing.)


Input parameters

ParameterTypeDescription
modeselectsearch, propertyDetail, zestimate, or agent.
startUrlsarrayAny Zillow URLs — search, property, or agent. Auto-routed to the right mode.
searchUrlsarrayZillow search / region URLs (including ?searchQueryState= URLs).
locationsarrayFree text: "Austin, TX", "90210", "Los Angeles County, CA".
listingTypeselectforSale, forRent, or sold.
forSaleByAgent, forSaleByOwner, newConstruction, comingSoon, auction, foreclosuresbooleanFor-sale category toggles.
priceMin / priceMaxintegerPrice (or monthly rent) range.
bedsMin / bedsMax, bathsMin / bathsMaxintegerBed / bath range.
sqftMin / sqftMax, lotSizeMin / lotSizeMaxintegerLiving-area / lot-size range (sqft).
yearBuiltMin / yearBuiltMaxintegerYear-built range.
hoaMaxintegerMax monthly HOA fee.
homeTypesarrayhouses, townhomes, condos, apartments, multiFamily, manufactured, lotsLand.
daysOnZillowselect1, 7, 14, 30, 90, 6m, 12m, 24m, 36m (or empty for any).
keywordsstringFree-text keywords (max 99 chars), e.g. "pool, view, remodeled".
hasPool, hasGarage, hasAirConditioning, isWaterfront, has3DTour, hasBasement, priceReducedOnlybooleanFeature toggles.
sortselectrelevance, newest, price_desc, price_asc, beds, baths, sqft, lot, yearBuilt, priceReduced.
maxItemsintegerCap on listings. 0 = unlimited (auto-splits the map).
fetchDetailsbooleanEnrich each search listing with its full property page.
propertyUrls, zpidsarrayTargets for Property details / Zestimate mode.
zestimateItemsarrayZestimate lookups: URL, ZPID, or address.
includePhotos, includeHistory, includeSchools, includeResoFactsbooleanToggle detail sections (all on by default).
includeWalkScoresbooleanAdd Walk Score, Transit Score and Bike Score. One extra request per home; off by default.
includeExtendedDetailsbooleanAdd climate risk, foreclosure & auction detail, nearby comps, room dimensions and the neighborhood ZHVI. One extra request per home; off by default.
agentUrlsarrayAgent profile URLs, or a location to discover agents in.
includeAgentListings, includeAgentPastSales, includeAgentReviewsbooleanAgent output sections.
maxAgentsPerLocationintegerCap agents discovered per location.
flatOutputbooleanFlatten nested fields for CSV/Excel.
maxConcurrencyintegerPages fetched in parallel (default 6, max 30).
maxRetriesintegerRetries per blocked request (each rotates the proxy).
proxyConfigurationobjectProxy settings. US residential is strongly recommended (default).

Ready-to-paste input recipes

1. All homes for sale in a city, under $750k, 3+ beds

{
"mode": "search",
"locations": ["Austin, TX"],
"listingType": "forSale",
"priceMax": 750000,
"bedsMin": 3,
"maxItems": 500
}

2. Rentals under $3,000 with a pool (LA condos & apartments)

{
"mode": "search",
"locations": ["Los Angeles, CA"],
"listingType": "forRent",
"priceMax": 3000,
"hasPool": true,
"homeTypes": ["condos", "apartments"]
}

3. Recently sold homes in a ZIP, fully enriched with details

{
"mode": "search",
"locations": ["78701"],
"listingType": "sold",
"fetchDetails": true,
"maxItems": 100
}

4. Foreclosures & price reductions across a metro (unlimited)

{
"mode": "search",
"locations": ["Phoenix, AZ"],
"listingType": "forSale",
"forSaleByAgent": false,
"forSaleByOwner": false,
"newConstruction": false,
"comingSoon": false,
"auction": false,
"foreclosures": true,
"priceReducedOnly": true,
"sort": "newest",
"maxItems": 0
}

5. Full details for specific properties

{
"mode": "propertyDetail",
"propertyUrls": [
"https://www.zillow.com/homedetails/20224-W-Marlow-Ln-Northridge-CA-91326/442607266_zpid/"
]
}

6. Home-value (Zestimate®) lookups by address, URL, or ZPID

{
"mode": "zestimate",
"zestimateItems": [
"1600 Pennsylvania Ave, Washington, DC",
"442607266",
"https://www.zillow.com/homedetails/509-Gothic-Ave-Crested-Butte-CO-81224/113419231_zpid/"
]
}

7. Agents in a city, with active listings and past sales

{
"mode": "agent",
"agentUrls": ["Los Angeles, CA"],
"maxAgentsPerLocation": 25,
"includeAgentListings": true,
"includeAgentPastSales": true
}

Output examples

Search listing

{
"zpid": "113419231",
"url": "https://www.zillow.com/homedetails/509-Gothic-Ave-Crested-Butte-CO-81224/113419231_zpid/",
"statusType": "FOR_SALE",
"statusText": "House for sale",
"price": 2950000,
"priceLabel": "$2,950,000",
"address": "509 Gothic Avenue, Crested Butte, CO 81224",
"city": "Crested Butte",
"state": "CO",
"zipcode": "81224",
"beds": 3,
"baths": 3,
"area": 1660,
"lotAreaValue": 6098.4,
"latitude": 38.8718,
"longitude": -106.98193,
"homeType": "SINGLE_FAMILY",
"daysOnZillow": 4,
"zestimate": 2810200,
"rentZestimate": 3572,
"taxAssessedValue": 2422570,
"has3DModel": true
}

Property detail (abbreviated — the full record carries 180+ fields)

{
"zpid": "442607266",
"url": "https://www.zillow.com/homedetails/.../442607266_zpid/",
"streetAddress": "20224 W Marlow Ln",
"city": "Northridge",
"state": "CA",
"zipcode": "91326",
"homeStatus": "FOR_SALE",
"price": 1195000,
"zestimate": 1180400,
"rentZestimate": 4900,
"bedrooms": 4,
"bathrooms": 3,
"livingArea": 2456,
"yearBuilt": 1972,
"monthlyHoaFee": 0,
"propertyTaxRate": 1.19,
"description": "Beautifully remodeled single-story home ...",
"agentName": "Jane Doe",
"agentPhoneNumber": "(818) 555-0142",
"agentLicenseNumber": "01234567",
"brokerName": "Pinnacle Estate Properties",
"reso_heating": ["Central"],
"reso_cooling": ["Central Air"],
"reso_parking": ["Garage - 2 spaces"],
"photos": ["https://photos.zillowstatic.com/fp/....jpg"],
"priceHistory": [{ "date": "2026-06-01", "price": 1195000, "event": "Listed for sale" }],
"taxHistory": [{ "time": 1704067200000, "taxPaid": 12500, "value": 980000 }],
"schools": [{ "name": "Beckford Charter", "rating": 8, "level": "Elementary", "distance": 0.4 }],
"assignedSchools": [{ "name": "Beckford Charter", "districtName": "Los Angeles Unified", "grades": "K-5", "enrollment": 612, "studentsPerTeacher": 22 }],
"homeInsights": ["Remodeled kitchen", "Mature shade tree", "Gas cooktop"],
"homeValueHistory": [{ "date": "2026-07-01", "value": 1174900 }],
"mortgageRates": { "thirtyYearFixed": 6.362, "fifteenYearFixed": 5.772, "arm5": 6.0 },
"walkScore": 76,
"transitScore": 50,
"bikeScore": 57,
"daysOnZillow": 30,
"pageViewCount": 5282,
"favoriteCount": 173,
"climateRisk": {
"flood": { "score": 1, "scoreMax": 10, "label": "MINIMAL", "femaZone": "X_UNSHADED", "insuranceRecommendation": "NOT_CRITICAL" },
"fire": { "score": 4, "scoreMax": 10, "label": "MODERATE", "insuranceRecommendation": "RECOMMENDED", "historicEvents": 7 }
},
"isAnyForeclosure": false,
"isBankOwned": false,
"foreclosureJudicialType": "Non-Judicial",
"nearbyHomes": [{ "zpid": 29500962, "price": 218300, "streetAddress": "7703 Wynne Ln", "livingArea": 980 }],
"marketValues": { "region": "78745", "zhvi": 452100, "zhviYoyChange": -0.021, "zhviForecast": 0.014 }
}

Zestimate®

{
"zpid": "113419231",
"streetAddress": "509 Gothic Avenue",
"city": "Crested Butte",
"state": "CO",
"zipcode": "81224",
"county": "Gunnison County",
"homeType": "SINGLE_FAMILY",
"homeStatus": "FOR_SALE",
"bedrooms": 4,
"bathrooms": 3,
"livingArea": 2340,
"price": 2950000,
"zestimate": 2810200,
"zestimateLow": 2669690,
"zestimateHigh": 2950710,
"zestimate30DaysAgo": 2798400,
"zestimate30DayChange": 11800,
"rentZestimate": 3572,
"rentZestimate30DaysAgo": 3540,
"taxAssessedValue": 2422570,
"taxAnnualAmount": 12841,
"propertyTaxRate": 0.53,
"pricePerSquareFoot": 1260,
"homeValueHistory": [{ "date": "2026-07-01", "value": 2798400 }]
}

Agent profile

{
"name": "Pinnacle Estate Properties Inc",
"email": "example@brokerage.com",
"phoneCell": "(818) 497-7941",
"ratingAverage": 5,
"ratingCount": 1060,
"businessAddress": "9137 Reseda Blvd. Northridge CA 91324",
"brokerAddress": "9137 Reseda Blvd, Suite 100, Northridge, CA 91324",
"bio": "For over 30 years our agents have helped families buy and sell across the San Fernando Valley...",
"teamName": "Pinnacle Estate Properties",
"teamMembers": [{ "name": "Jane Doe", "ratingAverage": 5, "ratingCount": 220 }],
"aiSummary": ["Strong local market knowledge", "Responsive communication throughout escrow"],
"websites": ["https://www.pinnacleestate.com"],
"brokerageLicenses": [{ "number": "493420", "brokerage": "PINNACLE ESTATE PROPERTIES INC" }],
"forSaleCount": 36,
"pastSalesTotal": 5346,
"latitude": 34.2361,
"longitude": -118.5372,
"profileUrl": "https://www.zillow.com/profile/PinnacleEstateProp/"
}

Common mistakes that return zero or fewer results

  • Getting fewer results than the map shows? Zillow caps a single query at ~820 results. Set maxItems to 0 and the actor auto-splits the map into quadrants to go past it — but very large metros still take longer, so let the run finish.
  • A location returns nothing? Use a real Zillow-recognized place: "Austin, TX", a 5-digit ZIP, or "Travis County, TX". A misspelled or non-US location won't resolve.
  • For-sale toggles all off = no for-sale results. In forSale mode, at least one of forSaleByAgent / forSaleByOwner / newConstruction / comingSoon / auction / foreclosures must be on.
  • homeTypes uses specific values. Use houses, condos, townhomes, apartments, multiFamily, manufactured, or lotsLand — not house or single-family.
  • Property/Zestimate mode needs property inputs. Put /homedetails/ URLs or ZPIDs in propertyUrls / zpids / zestimateItems, not in locations.
  • Null fields are normal. Zillow doesn't publish every field for every home, and the fact set it ships differs per listing and per market — agent email and many reso_* facts are often missing. The actor mirrors whatever that listing carries (including atAGlanceFacts, which is where Zillow keeps heating/cooling/parking/price-per-sqft for most homes) and drops empty fields.
  • Rentals price = monthly rent. priceMin / priceMax are interpreted as monthly rent when listingType is forRent.

How much does it cost to scrape Zillow?

This actor uses Apify's pay-per-event model: you're charged a fixed price per record delivered, and the price already includes proxies and platform usage — no separate add-ons, no surprise fees.

EventFree planPaid plans (from)
Listing scraped (one search result)$2.00 / 1,000$1.30 / 1,000
Property detail scraped (180+ facts)$3.00 / 1,000$1.50 / 1,000
Zestimate® lookup$2.00 / 1,000$1.00 / 1,000
Agent profile scraped$5.00 / 1,000$3.20 / 1,000

Paid tiers (Bronze → Diamond) unlock the lower "from" prices automatically as your Apify plan grows.

Worked examples (free-plan rates; paid plans cost less):

What you scrapeHow it's chargedCost
5,000 for-sale listings5,000 × listing$10.00 ($6.50 paid)
1,000 listings + full details1,000 listing + 1,000 detail$5.00 ($2.80 paid)
2,000 Zestimate® lookups2,000 × zestimate$4.00 ($2.00 paid)
500 agent profiles500 × agent$2.50 ($1.60 paid)

Free plan translation: Apify's Free plan gives $5 in credits every month, which buys roughly 2,500 listings, or 1,600 property details, or 1,000 agent profiles, or 2,500 Zestimate® lookups — free, every month.

Stay in control: set Max results and/or a per-run charge limit, and the actor stops cleanly when the budget is reached.


Integrations

Run the Zillow Scraper on a schedule and push data anywhere without writing glue code. On the Apify platform you can connect it to:

  • Make, Zapier, and n8n for no-code automations
  • Google Sheets, Slack, Airbyte, GitHub, and Google Drive
  • Webhooks for real-time run-completion events (BI tools, CRMs, alerts)
  • API clients for Python and JavaScript/Node.js (apify-client) and the Apify CLI
  • Schedules to run daily/weekly and keep a dataset in sync (great for price-drop and new-listing tracking)

Use Zillow data with AI agents (MCP)

This actor works with the Apify MCP server, so AI assistants like Claude, ChatGPT, and Cursor can run it and read the results as a tool. Point your agent at the Apify MCP server and prompt it in plain language, for example:

"Find every 3-bed house for sale under $600k in Austin, TX, enrich each with the listing agent's phone, and give me a CSV."

The agent triggers the scraper, waits for the run, and pulls the dataset back — no manual export.


  • Real-estate market research — track prices, inventory, and days-on-market by city, ZIP, or neighborhood.
  • Lead generation for agents & investors — build lists of FSBO homes, price-reduced listings, or agent contacts.
  • Comps & valuation — compare Zestimate® vs. list vs. sold price across an area.
  • CRM & portal feeds — keep an internal search portal or CRM stocked with fresh listings.
  • Investment sourcing — monitor foreclosures, auctions, and motivated-seller signals metro-wide.
  • AI & analytics — feed housing data into dashboards, predictive models, or LLMs.

Scraping publicly available data — such as property prices, addresses, and listing attributes — is generally legal. This actor only reads data that is publicly visible on Zillow.

Be aware that results can include personal information for real-estate agents (a public professional role). Personal data is protected by GDPR (EU Regulation 2016/679), CCPA, and similar laws — only collect and process it if you have a legitimate basis, and never use it for spam or harassment. If you're unsure whether your use case is compliant, consult a lawyer.

For more background, see Apify's guide: Is web scraping legal?


FAQ

Does Zillow have a public API?

Zillow offers several official APIs, but they're gated behind partner approval, API keys, usage limits, and restricted fields — which is why most people use a scraper as a Zillow API alternative for open, bulk access to publicly visible data.

Do I need a Zillow account or login?

No. No Zillow account, login, or API key is required.

Can I get more than 500 results for a big city?

Yes. Zillow caps a single query at ~820 results and shows ~500 on screen. Set maxItems to 0 (or a large number) and the actor automatically splits the map into quadrants to pull far beyond that.

Can I get the listing agent's contact info?

Yes — property details include the listing agent's name, phone, license number, and brokerage (and email when Zillow exposes it). For full agent profiles with ratings and past sales, use Agent mode.

Do I need proxies?

No — proxy rotation is built in and included in the price. US residential proxies are used by default; you can supply your own under Proxy configuration if you prefer.

Which locations are supported?

Any US location Zillow covers — cities, ZIP codes, counties, and neighborhoods. Results come back in English and USD.

How fresh is the data?

It's pulled live from Zillow at run time, so it reflects what's on the site right now.

Can I scrape for-rent and recently-sold homes too?

Yes. Set listingType to forSale, forRent, or sold — all three work the same way.

Can I export to CSV or Excel?

Yes — every run writes a dataset you can download as JSON, CSV, Excel, XML, or HTML. Turn on flatOutput for the cleanest spreadsheet columns.

Will I be charged for searches that return nothing?

No. You're charged per record delivered. A location that resolves to zero listings produces no listing charges.

Why are some fields null or missing?

Zillow doesn't publish every field for every home. Agent emails and some extended (reso_*) facts are frequently unavailable — the actor returns what's public and omits empty fields.

Can I schedule it to run automatically?

Yes — use Apify Schedules to run daily or weekly and keep a dataset up to date.

What's a Zestimate®?

It's Zillow's estimated market value (and Rent Zestimate® for estimated rent). Zestimate® mode returns it fast for any home by URL, ZPID, or plain address.

How do I get more results per run?

Increase maxItems (or set 0), keep filters reasonable, and let large-metro runs finish — the quadrant split can take longer on dense areas.


Feedback & support

Found a bug or need a field the actor doesn't return yet? Open an issue on the actor's Issues tab — please include your input configuration and, if possible, a shared run link so it can be reproduced quickly.


More real-estate & lead-gen scrapers by this developer


This actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Zillow, Inc. or its subsidiaries. Zillow® and Zestimate® are trademarks of Zillow, Inc. All trademarks are the property of their respective owners.

Tags: zillow scraper, zillow api, zillow api alternative, zillow data scraper, zillow listings scraper, zillow property scraper, real estate scraper, zillow zestimate scraper, zillow agent scraper, real estate agent leads, zillow rentals scraper, zillow sold listings, zillow for sale, foreclosure scraper, fsbo scraper, property data api, real estate data, zpid scraper, zillow search scraper, zillow zip code search