Redfin Scraper avatar

Redfin Scraper

Pricing

Pay per usage

Go to Apify Store
Redfin Scraper

Redfin Scraper

Scrape Redfin for property listings with prices, Redfin Estimates, walk/transit/bike scores, price history, tax data, photos and 30+ data fields. API-first with anti-bot bypass.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Dominique

Dominique

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Categories

Share

๐Ÿ  The most powerful Redfin scraper on Apify โ€” extract 30+ data fields including prices, Redfin Estimates, walk/transit/bike scores, price history, tax records, agent info, and photos from any Redfin listing.

๐Ÿ† Why This Actor?

FeatureThis ActorCompetitors
Data Fields30+ fields10-15 fields
Redfin Estimateโœ… AVM valuationโŒ Not available
Walk/Transit/Bike Scoresโœ… All three scoresโŒ Not available
Price Historyโœ… Full historyโŒ Not available
Tax Historyโœ… Full recordsโŒ Not available
Photo URLsโœ… All listing photosโŒ 1 thumbnail
Input ModesSearch URL + location textURL only
ArchitectureAPI-first (fast) + browser fallbackBrowser only (slow)
Anti-Bot Bypassโœ… Camoufox stealth browserBasic requests
Price per 1K$2.00$3.00-5.00

โœจ Key Features

  • ๐Ÿ  30+ Data Fields โ€” Address, price, Redfin Estimate, beds, baths, sqft, lot size, year built, property type, and more
  • ๐Ÿ“Š Redfin Estimate (AVM) โ€” Proprietary automated valuation model data
  • ๐Ÿšถ Walk/Transit/Bike Scores โ€” Neighborhood walkability, transit access, and bike-friendliness scores
  • ๐Ÿ’ฐ Price & Tax History โ€” Full price change history and property tax records
  • ๐Ÿ“ธ Photo URLs โ€” Extract all listing photo URLs per property
  • ๐Ÿ‘ค Agent & Broker Info โ€” Listing agent name and brokerage
  • ๐Ÿ” Flexible Input โ€” Search by Redfin URL or location name (city, ZIP, address)
  • โšก API-First Architecture โ€” Uses Redfin's Stingray API for speed, with Camoufox browser fallback
  • ๐Ÿ›ก๏ธ Anti-Bot Bypass โ€” Handles Cloudflare WAF and rate limiting with smart retries
  • ๐ŸŽฏ Advanced Filters โ€” Property type, price range, bedrooms, bathrooms, square footage

๐Ÿ“ฅ Input Parameters

ParameterTypeDefaultDescription
searchUrlsArrayโ€”Redfin search URLs (go to redfin.com, search, paste URL)
locationStringโ€”Search by location name (city, ZIP, address, neighborhood)
propertyTypeStringallFilter: all, house, condo, townhouse, multi-family, land, other
listingStatusStringactiveFilter: active, active_pending, pending, sold
minPriceIntegerโ€”Minimum listing price in USD
maxPriceIntegerโ€”Maximum listing price in USD
minBedsIntegerโ€”Minimum bedrooms
maxBedsIntegerโ€”Maximum bedrooms
minBathsIntegerโ€”Minimum bathrooms
maxBathsIntegerโ€”Maximum bathrooms
minSqftIntegerโ€”Minimum square footage
maxSqftIntegerโ€”Maximum square footage
maxResultsInteger100Maximum listings to scrape
includeDetailsBooleantrueFetch full details (Redfin Estimate, scores, history)
proxyObjectResidentialProxy settings (residential recommended)

Input Examples

Search by URL (recommended):

{
"searchUrls": [
"https://www.redfin.com/city/29439/WA/Seattle"
],
"maxResults": 50,
"includeDetails": true
}

Search by location:

{
"location": "San Francisco, CA",
"propertyType": "house",
"minPrice": 500000,
"maxPrice": 1500000,
"minBeds": 3,
"maxResults": 100
}

With filters in URL:

{
"searchUrls": [
"https://www.redfin.com/city/29439/WA/Seattle/filter/min-price=500k,max-price=1M,min-beds=3"
],
"maxResults": 200,
"includeDetails": true
}

Fast mode (search results only):

{
"location": "Austin, TX",
"maxResults": 500,
"includeDetails": false
}

๐Ÿ“ค Sample Output

{
"propertyId": 12345678,
"listingId": 87654321,
"address": "123 Main St",
"city": "Seattle",
"state": "WA",
"zipCode": "98101",
"price": 750000,
"beds": 3,
"baths": 2.5,
"sqft": 1850,
"lotSize": 5000,
"yearBuilt": 2005,
"propertyType": "Single Family Residential",
"listingStatus": "Active",
"daysOnMarket": 12,
"pricePerSqft": 405,
"hoaMonthly": null,
"mlsNumber": "2145678",
"latitude": 47.6062,
"longitude": -122.3321,
"redfinEstimate": 765000,
"walkScore": 85,
"transitScore": 72,
"bikeScore": 68,
"description": "Beautiful 3-bedroom home in the heart of Seattle...",
"photos": [
"https://ssl.cdn-redfin.com/photo/1/bigphoto/123/456.jpg",
"https://ssl.cdn-redfin.com/photo/1/bigphoto/123/457.jpg"
],
"priceHistory": [
{"date": "2024-03-15", "event": "Listed", "price": 750000},
{"date": "2024-02-01", "event": "Sold", "price": 720000}
],
"taxHistory": [
{"year": 2023, "taxAmount": 8500, "assessedValue": 695000}
],
"listingAgent": "Jane Smith",
"listingBrokerage": "Redfin Corp",
"url": "https://www.redfin.com/WA/Seattle/123-Main-St-98101/home/12345678",
"scrapedAt": "2026-04-11T17:00:00Z"
}

๐Ÿ’ฐ Pricing

PlanCostDetails
Pay Per Result$2.00 / 1,000 resultsOnly pay for data you get
Actor Start$0.005 per runOne-time charge per execution
Platform CostsUsage-basedApify compute & proxy costs

๐Ÿ”ง Technical Details

Architecture

This actor uses a 3-tier approach for maximum reliability:

  1. Stingray JSON API (primary) โ€” Fastest, lightweight HTTP requests to Redfin's internal API
  2. Stingray CSV API (fallback) โ€” Bulk download endpoint for when JSON API is rate-limited
  3. Camoufox Browser (last resort) โ€” Stealth browser rendering when API endpoints are blocked

Anti-Bot Handling

  • Cloudflare WAF bypass via Camoufox stealth browser
  • Smart rate limiting with Retry-After header respect
  • Exponential backoff with jitter (max 3 retries)
  • 2-4 second random delays between requests
  • Residential proxy rotation

Proxy Requirements

Residential proxies are strongly recommended for best results. Datacenter proxies may work for small batches but will be blocked quickly.

๐Ÿ“‹ Output Fields Reference

FieldTypeDescription
propertyIdIntegerRedfin property ID
listingIdIntegerRedfin listing ID
addressStringStreet address
cityStringCity name
stateStringState code
zipCodeStringZIP code
priceNumberListing/sale price
bedsNumberBedrooms
bathsNumberBathrooms
sqftNumberInterior square footage
lotSizeNumberLot size in sq ft
yearBuiltNumberYear constructed
propertyTypeStringProperty type
listingStatusStringActive/Pending/Sold
daysOnMarketNumberDays on market
pricePerSqftNumberPrice per square foot
hoaMonthlyNumberMonthly HOA fee
mlsNumberStringMLS listing number
latitudeNumberProperty latitude
longitudeNumberProperty longitude
redfinEstimateNumberRedfin Estimate (AVM)
walkScoreNumberWalk Score (0-100)
transitScoreNumberTransit Score (0-100)
bikeScoreNumberBike Score (0-100)
descriptionStringProperty description
photosArrayPhoto URLs
priceHistoryArrayPrice change history
taxHistoryArrayTax assessment history
listingAgentStringListing agent name
listingBrokerageStringBrokerage name
urlStringRedfin listing URL
scrapedAtStringISO timestamp

๐Ÿค” FAQ

Q: How many results can I scrape? A: Up to 10,000 per run. For larger datasets, run multiple times with different locations.

Q: Do I need residential proxies? A: Strongly recommended. The actor works best with Apify's residential proxy group.

Q: How fast is it? A: In API mode (default), ~50-100 listings per minute. With detail enrichment enabled, ~10-20 per minute due to rate limiting.

Q: What's the difference between includeDetails true/false? A: With includeDetails: false, you get basic search data (address, price, beds, baths, sqft). With true, you get 30+ fields including Redfin Estimate, walk scores, price/tax history, and photos.

Q: Can I scrape sold properties? A: Yes! Set listingStatus to sold or use a Redfin URL with sold filters.

๐Ÿ“ Changelog

  • v0.1 โ€” Initial release with API-first architecture, 30+ data fields, and Camoufox browser fallback