OrbTop

RealtyTrac Foreclosure & REO Listings Scraper

REAL ESTATELEAD GENERATION

RealtyTrac Foreclosure & REO Listings Scraper

Scrape distressed real estate listings from RealtyTrac — pre-foreclosures, active foreclosures, bank-owned (REO) properties, and sheriff sales. Returns property address, beds/baths/sqft, estimated value, listing status, and property URL. No account required.

What it does

The actor paginates through RealtyTrac's listing pages by distressed listing type. Each listing page returns 24 property cards with structured HTML data. You can filter by listing type and US location (state, city, or county). The actor stops once it reaches your maxItems limit or exhausts all pages.

The site's search results are fully server-rendered — no JavaScript execution required, and no proxy is needed.

Input

Field Type Required Description
listingTypes Array No Types of listings to scrape. Options: foreclosure, pre-foreclosure, bank-owned, reo, sheriff-sale. Defaults to all three main types if omitted.
location String No US location to filter results (e.g. california, los-angeles-ca). Leave blank for national results.
maxItems Integer Yes Maximum number of property records to return.

Example input — foreclosures in California

{
  "listingTypes": ["foreclosure", "pre-foreclosure"],
  "location": "california",
  "maxItems": 100
}

Example input — national bank-owned listings

{
  "listingTypes": ["bank-owned"],
  "location": "",
  "maxItems": 500
}

Output

Each record in the dataset represents one property listing.

Field Type Description
property_id String Unique RealtyTrac property ID
property_url String Full URL to the property detail page on RealtyTrac
listing_type String Listing type used to discover this record (foreclosure, pre-foreclosure, bank-owned, sheriff-sale)
listing_status String Distressed status as shown on RealtyTrac (e.g. Pre-Foreclosure, Foreclosure, REO / Bank-Owned)
address String Street address (e.g. 220 Surrey Oak Ln)
city String City
state String Two-letter US state abbreviation
zip_code String ZIP code
estimated_value Integer Estimated property value in USD (null if not shown)
beds Integer Number of bedrooms (null if not listed)
baths Integer Number of bathrooms (null if not listed)
sqft Integer Living area in square feet (null if not listed)
lot_sqft Integer Lot size in square feet (null if not listed)
scraped_at String ISO-8601 timestamp of when this record was scraped

Example record

{
  "property_id": "1000713871",
  "property_url": "https://www.realtytrac.com/p/surrey-oak-ln-charlotte-nc-28216-1000713871/",
  "listing_type": "foreclosure",
  "listing_status": "Pre-Foreclosure",
  "address": "220 Surrey Oak Ln",
  "city": "Charlotte",
  "state": "NC",
  "zip_code": "28216",
  "estimated_value": 433647,
  "beds": 4,
  "baths": 3,
  "sqft": 2088,
  "lot_sqft": 6745,
  "scraped_at": "2026-06-07T21:41:27.613Z"
}

Notes

  • Listing types: RealtyTrac uses overlapping status labels. A property in "Pre-Foreclosure" status appears under the foreclosure listing type URL. Use listingTypes: ["foreclosure", "pre-foreclosure"] together for complete coverage.
  • Location filtering: The location field maps to RealtyTrac's URL slug (e.g. california, texas, los-angeles-ca). If the location slug does not match RealtyTrac's URL structure, the actor returns national results.
  • Page size: 24 properties per listing page. Pagination continues automatically until maxItems is reached or no more results exist.
  • Rate limits: RealtyTrac's listing pages serve cleanly without rate limiting. No proxy is required.