Zillow, Realtor & Redfin Scraper | US Real Estate Data
Pricing
from $3.00 / 1,000 results
Zillow, Realtor & Redfin Scraper | US Real Estate Data
Scrape Realtor.com and Redfin in one run. Get deduplicated US property listings with cross-source price comparison, unified schema (30+ fields), and agent contact data. For sale, for rent, or recently sold. Any US city. $3 per 1,000 results.
Pricing
from $3.00 / 1,000 results
Rating
5.0
(2)
Developer
Jonathan
Actor stats
1
Bookmarked
6
Total users
3
Monthly active users
a day ago
Last modified
Categories
Share
Zillow, Realtor.com & Redfin Scraper — US Real Estate Data
Zillow, Realtor.com and Redfin scraper for US real estate and property listings. Scrape all 3 sources in one run with deduplicated results, unified schema, and price comparison across sources. Any US city.
3 sources in 1 run | 25+ fields per listing | Any US city — from NYC to Fargo
What you get
This actor scrapes the three largest US real estate sites in a single run and returns a clean, deduplicated dataset.
- Deduplicated results. Same property found on Zillow and Realtor.com? You get 1 row with prices from both sources and a
priceDeltafield showing the difference. - Unified schema. Every listing has the same 25+ fields regardless of source: address, price, beds, baths, sqft, GPS coordinates, photos, agent info, and more.
- Filters. Price range, bedrooms, bathrooms, square footage, property type (single family, condo, townhouse, multi-family, land).
- All listing types. For sale, for rent, or recently sold.
- Any US city. Enter a city name, ZIP code, or slug. Tested on 30+ cities from major metros to small towns.
Quick start
NYC Rentals under $3,000:
{"location": "New York, NY","listingType": "for_rent","maxPrice": 3000,"maxResults": 200}
Austin TX Houses for Sale:
{"location": "Austin, TX","listingType": "for_sale","propertyType": ["single_family"],"maxResults": 200}
Indianapolis Multi-Family under $250K:
{"location": "Indianapolis, IN","listingType": "for_sale","propertyType": ["multi_family"],"maxPrice": 250000,"maxResults": 200}
Output fields
Each listing contains these fields:
| Field | Description |
|---|---|
id | Unique listing ID |
sourceIds | IDs on each source (zillow, realtor, redfin) |
foundOnSources | Which sites had this listing |
listingUrls | Direct URLs to the listing on each site |
address | Full address |
streetAddress | Street address only |
city | City |
state | State code |
zipcode | ZIP code |
latitude | GPS latitude |
longitude | GPS longitude |
price | Listing price (numeric) |
priceFormatted | Price as formatted string ($500,000) |
priceBySource | Price on each source for comparison |
priceDelta | Price difference between sources |
pricePerSqft | Price per square foot |
bedrooms | Number of bedrooms |
bathrooms | Number of bathrooms |
sqft | Square footage |
lotSize | Lot size |
yearBuilt | Year built (Realtor.com and Redfin) |
propertyType | SINGLE_FAMILY, CONDO, TOWNHOUSE, MULTI_FAMILY, LAND |
listingStatus | FOR_SALE, FOR_RENT, RECENTLY_SOLD |
daysOnMarket | Days since listed (Zillow, Realtor.com, Redfin) |
agent.name | Listing agent name (Realtor.com, Redfin when available) |
agent.phone | Agent phone number (Realtor.com, when available) |
agent.brokerage | Brokerage name (Redfin, when available) |
images | Photo URLs (all photos from Realtor.com, thumbnail from Zillow) |
scrapedAt | Timestamp of extraction |
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
location | string | "austin-tx" | City name, ZIP code, or slug. Examples: "Miami, FL", "78701", "new-york-ny" |
listingType | enum | "for_sale" | "for_sale", "for_rent", or "sold" |
sources | array | ["zillow", "realtor", "redfin"] | Which sites to scrape |
maxResults | number | 200 | Max listings per source (up to 1,000) |
propertyType | array | [] | single_family, condo, townhouse, multi_family, land |
minPrice | number | -- | Minimum price |
maxPrice | number | -- | Maximum price |
minBeds | number | -- | Minimum bedrooms |
maxBeds | number | -- | Maximum bedrooms |
minSqft | number | -- | Minimum square footage |
maxSqft | number | -- | Maximum square footage |
minBaths | number | -- | Minimum bathrooms |
enableDeduplication | boolean | true | Merge duplicate listings across sources |
Pricing
$3 per 1,000 results. All 3 sources included. No monthly fee.
You only pay for deduplicated results pushed to the dataset. If the same property appears on Zillow and Redfin, it counts as 1 result.
| Use case | Results | Cost |
|---|---|---|
| Quick city check | ~50 | $0.15 |
| City overview, all sources | ~200 | $0.60 |
| Full market analysis with filters | ~500 | $1.50 |
| Multi-city research | ~1,000 | $3.00 |
| Large dataset | ~10,000 | $30.00 |
New Apify accounts get $5 free credits — enough for 1,600+ listings at no cost.
FAQ
Does it work for any US city? Yes. Tested on 30+ cities from major metros (New York, Los Angeles, Chicago) to small towns (Fargo ND, Peoria IL, Sioux Falls SD). Enter any city name, ZIP code, or neighborhood.
How fast is it? Typically 50-60 seconds for 200 listings across all 3 sources. Larger runs (1,000 listings) take 2-3 minutes.
Do I need to configure anything? No. Enter a location and hit Start. Everything works out of the box.
What if sources disagree on price?
The priceBySource field shows the price on each site. The priceDelta field shows the difference. You can spot pricing discrepancies instantly.
Can I run this on a schedule? Yes. Set up a scheduled run on Apify for daily, weekly, or custom intervals. Combine with the dataset API to build automated pipelines.