Homes.com Scraper: For Sale, Rent, Sold & Agents [$1.50/1k] avatar

Homes.com Scraper: For Sale, Rent, Sold & Agents [$1.50/1k]

Pricing

from $1.50 / 1,000 results

Go to Apify Store
Homes.com Scraper: For Sale, Rent, Sold & Agents [$1.50/1k]

Homes.com Scraper: For Sale, Rent, Sold & Agents [$1.50/1k]

Homes.com scraper for sale, rent and sold listings by city, county, ZIP, map area or URL. Price, beds, baths, sqft, photos, open houses, agent phone. Add agent emails, brokerage, year built, HOA, tax and price history, owner records. Agents mode, 30+ filters, new-listing alerts.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

Muhamed Didovic

Muhamed Didovic

Maintained by Community

Actor stats

0

Bookmarked

17

Total users

16

Monthly active users

20 hours ago

Last modified

Categories

Share

Homes.com Scraper

Scrape Homes.com listings for sale, for rent or recently sold in any US city, county, ZIP code or map area, or straight from a homes.com search or property URL. One clean row per property with price, beds, baths, square footage, lot size, description, photos, open houses and the listing agent. Turn on full details for agent emails, brokerages, year built, HOA, tax and price history, MLS numbers and schools, switch to agents mode for a lead list of an area's most active agents, or add owner records from county deeds. JSON, CSV or Excel out.

Why use this Homes.com scraper?

  • Every listing type in one actor: for sale, for rent (including apartment communities with rent ranges) and recently sold, with sale dates.
  • Real boundaries, full coverage: a city or ZIP is searched inside its actual boundary, not a rectangle around it, and large areas are split until every listing is found (about 4,000 for-sale homes inside Austin's city limits).
  • Paste any homes.com URL: search URLs keep their filters (type, price, beds, baths, open houses, newest, price reduced, foreclosure, keyword, sort); property URLs return that one listing.
  • Agent contacts: listing agent name and phone on every row; email, license, brokerage name, phone and email with full details.
  • Agents mode: one row per listing agent in an area, ranked by how many of its listings they hold. An area covered before comes back in seconds, with no listings to read.
  • Instant Database: pull homes.com listing agents straight from our agent directory by state, city or brokerage, with email, phone, brokerage, license and profile URL. No location search and no listings to read: thousands of agents in seconds.
  • Owner records: deed history with buyers and sellers, mortgages with lenders, and current owners, when you ask for them.
  • Only new listings: schedule a search and get only listings added since the last run, plus price changes if you want them.
  • 30+ filters: price, beds, baths, square feet, lot size, year built, HOA, keyword, days on market, price drops, sold date, foreclosure and other sale types, pending, open houses, 3D tours, and 11 sort orders.
  • Flat pricing: $1.50 per 1,000 rows; full details add $1.50 per 1,000 from 20 October 2026.

Overview

This actor is for investors, agents and brokerages, proptech teams, lenders and researchers who need US property listings in bulk. It returns one dataset row per property, or one row per agent in agents mode. Rows are flat: nested data (open houses, photos, price history, schools, deeds) sits in arrays on the same row, so CSV and Excel exports stay one line per property.

There are three levels of detail. Basic rows (the default) come from homes.com's search cards and are fast, about 8 listings a second. Full details open each listing's page for about 40 more fields, about 3 listings a second. Owner records add the county deed and mortgage history on top.

Supported inputs

Locations (one per line)

You typeWhat gets searched
Austin, TXEverything inside Austin's city limits
Brooklyn, NY, Hudson County, NJ, TexasA borough, county, neighborhood or whole state
10001Everything inside ZIP code 10001
{"bb":{"tl":{"lt":40.76,"ln":-74.12},"br":{"lt":40.66,"ln":-74.02}}}A map rectangle: tl is the north-west corner, br the south-east corner

Homes.com URLs

URLWhat you get
https://www.homes.com/austin-tx/homes-for-rent/?bed-min=2Rentals in Austin with 2+ bedrooms
https://www.homes.com/jersey-city-nj/?price-min=400000&price-max=900000&bed-min=3&bath=2For sale, $400k to $900k, 3+ beds, 2+ baths
https://www.homes.com/los-angeles-ca/sold/Recently sold homes
https://www.homes.com/jersey-city-nj/07302/condos-for-sale/Condos for sale in one ZIP
https://www.homes.com/jersey-city-nj/the-heights-neighborhood/One neighborhood
https://www.homes.com/jersey-city-nj/newest/, /open-houses/, /price-reduced/, /foreclosure/Newest first, open houses, price drops in the last 30 days, foreclosures
https://www.homes.com/jersey-city-nj/?so=1&kws=pool&yb-min=2015Sorted by price, mentions a pool, built 2015 or later
https://www.homes.com/property/9437-caves-valley-dr-austin-tx/sj444hdbkqxsx/That one listing

Copy-pasteable:

{
"startUrls": [
{ "url": "https://www.homes.com/austin-tx/homes-for-rent/?bed-min=2" },
{ "url": "https://www.homes.com/jersey-city-nj/sold/" }
]
}

Not supported

  • Agent profile pages (/real-estate-agents/...) and agent search by name. Use agents mode on the agent's area instead.
  • Building, school and local-guide pages.
  • Map-drawn custom shapes from the homes.com site (use a map rectangle instead).
  • Filters in a URL other than the ones listed above. They are named in the run log and the search runs without them.

Use cases

WhoWhat they do with it
InvestorsFind foreclosures, price drops and long-listed homes; pull sold comps with sale dates
Agents and brokeragesBuild lead lists of active listing agents per city or ZIP; track competitor inventory
Wholesalers and lendersCombine listings with owner, deed and mortgage records
Property managersMonitor rents and new rental communities in a market
Proptech and data teamsFeed listings, prices and features into models and dashboards
Market researchersTrack inventory, price per square foot and days on market by area

How it works

How the Homes.com Scraper works

  1. You give locations, homes.com URLs, or both, plus any filters.
  2. Each location is matched to its real boundary: city limits from OpenStreetMap, ZIP areas from the US Census.
  3. The actor searches homes.com's map for that boundary with your filters, splitting large areas into smaller pieces so no listing is missed.
  4. Each listing is read from homes.com, with its full page too when you ask for details, owner records or agents.
  5. You get one clean row per property, or one row per agent, up to your limits.

Input configuration

FieldTypeDefaultDescription
locationsarrayCities, counties, boroughs, neighborhoods, states, ZIP codes or map rectangles, one per line
startUrlsarrayhomes.com search or property URLs
scrapeModestringlistingslistings, or agents for one row per listing agent
maxListingsToScaninteger300Agents mode: listings read per location before ranking agents
forceFreshbooleanfalseAgents mode: always read the area's listings live, even when it was covered before
dbState / dbCity / dbBrokeragestringInstant Database: agents by state, city or brokerage name; any of them turns the mode on
dbHasEmail / dbHasPhonebooleanfalseInstant Database: only agents with an email / a phone
listingTypestringforSaleforSale, forRent or sold
propertyTypesarrayallhouse, townhouse, condo, coop, multiFamily, apartment, land, mobile
sortBystringrecommendednewest, priceLowToHigh, priceHighToLow, priceReduced, sqftHighToLow, bedsHighToLow, pricePerSqft, yearBuiltNewToOld, lotSizeHighToLow, openHouse
minPrice, maxPriceintegerAsking price, sold price, or monthly rent
minBeds, maxBeds, minBaths, maxBathsintegerBedrooms and bathrooms
minSqft, maxSqftintegerLiving area
minLotAcres, maxLotAcresnumberLot size in acres
minYearBuilt, maxYearBuiltintegerYear built
maxHoaFeeintegerMost HOA fee per month
keywordsstringWords the listing must mention, such as pool
daysOnMarketstringanynewListings, lessThan3Days … moreThan1Year
priceReducedstringanylastDay … last30Days, overOneMonth, overThreeMonths
saleTypesarrayallresale, newConstruction, foreclosure, preForeclosure, shortSale, auction, bankOwned
saleStatusesarrayactive + coming soonactive, comingSoon, underContract, pending (for sale only)
soldWithinstringanylastWeek, lastMonth, last3Months, last6Months, lastYear (sold only)
openHousesOnly, with3dTourbooleanfalseOnly listings with an upcoming open house, or with a 3D tour
includeDetailsbooleanfalseOpen each listing's full page for the extra fields
includeOwnerRecordsbooleanfalseAdd deed and mortgage records (turns on full details)
onlyNewListingsbooleanfalseReturn only listings not returned by earlier runs of the same search
includePriceChangesbooleanfalseWith onlyNewListings, also return listings whose price changed
monitorNamestringOptional name that ties runs to one memory
maxItemsinteger100Most rows to save in the run
maxItemsPerLocationinteger100Most rows to save from any one location or URL

Filters apply to every location, and to homes.com URLs wherever the URL itself does not set them.

Common scenarios

Rentals with 2+ bedrooms under $3,000 a month:

{ "locations": ["Austin, TX"], "listingType": "forRent", "minBeds": 2, "maxPrice": 3000, "maxItems": 500 }

Foreclosures and pre-foreclosures with owner records:

{ "locations": ["Hudson County, NJ"], "saleTypes": ["foreclosure", "preForeclosure"], "includeOwnerRecords": true, "maxItems": 200 }

The 50 most active listing agents in a ZIP code:

{ "locations": ["10001"], "scrapeMode": "agents", "maxListingsToScan": 300, "maxItems": 50 }

Every Compass agent in California with a phone, straight from the Instant Database:

{ "dbState": "CA", "dbBrokerage": "Compass", "dbHasPhone": true, "maxItems": 5000 }

New listings every morning (schedule this daily):

{ "locations": ["Jersey City, NJ"], "onlyNewListings": true, "sortBy": "newest", "maxItems": 5000 }

Output overview

Each listing row starts with what the search card shows: ids, listingType, the address in full and in parts, coordinates, price, beds, baths, square footage, lot size, property type, description, main photo, open houses, the listing agent and the listing URL. Full details add photos and floor plans, agent and brokerage contacts, listing and tax facts, history, schools, scores and the MLS feature list. Owner records add deeds, mortgages and current owners. Agent rows have their own shape, shown below. Every row has rowType (listing or agent), searchLocation (which of your inputs found it) and scrapedAt.

Output samples

Real rows from runs on 12 October 2026, shortened. Names, emails and phone numbers of people are replaced.

For sale, with full details and owner records (Austin, TX, houses)

{
"rowType": "listing",
"propertyKey": "sj444hdbkqxsx",
"listingType": "forSale",
"address": "9437 Caves Valley Dr, Austin, TX 78717",
"city": "Austin",
"state": "TX",
"postalCode": "78717",
"latitude": 30.495646,
"longitude": -97.758355,
"price": 524900,
"priceLabel": "$524,900",
"beds": 4,
"baths": 2,
"sqft": 2281,
"lotSizeAcres": 0.17,
"propertyType": "House",
"description": "Bright, open, and designed for the way you actually live...",
"has3dTour": true,
"agentName": "Jane Doe",
"agentPhone": "(555) 010-0001",
"agentEmail": "jane.doe@example.com",
"brokerage": "Example Realty",
"yearBuilt": 2004,
"county": "Williamson County",
"neighborhood": "Avery Ranch",
"listDate": "2026-04-10",
"daysOnMarket": 185,
"pricePerSqft": 230,
"hoaFeeMonthly": 55,
"annualTax": 12097,
"mlsName": "Unlock MLS (Austin Board of REALTORS®)",
"mlsNumber": "8700879",
"parcelId": "20|2772|R424414|1",
"photos": ["https://images.homes.com/listings/111/5365956584-262873812-original.jpg", "..."],
"priceHistory": [{ "date": "09/25/2026", "event": "Price Changed", "price": 524900, "changePercent": -1.87 }],
"schools": [{ "name": "Elsa England Elementary School", "rating": 10, "grades": "PK to 5th", "type": "Public", "distance": "17 min walk" }],
"walkScore": 30,
"features": { "Interior Features": { "Flooring": "Carpet, Laminate, Tile", "Appliances": "Dishwasher, Disposal, Range" } },
"saleHistory": [{ "date": "2013-02-19", "documentType": "Vendors Lien", "salePrice": null, "buyers": ["Owner A", "Owner B"], "sellers": ["Seller C", "Seller D"], "titleCompany": "None Available" }],
"mortgages": [{ "date": "2024-12-17", "amount": 907500, "lender": "Federal Housing Commissioner", "borrowers": ["Owner B"], "interestRate": 6.84, "termYears": 83, "status": "Open" }],
"currentOwners": ["Owner A", "Owner B"],
"detailUrl": "https://www.homes.com/property/9437-caves-valley-dr-austin-tx/sj444hdbkqxsx/",
"searchLocation": "Austin, TX",
"scrapedAt": "2026-10-12T15:40:02.031Z"
}

For rent, an apartment community (/jersey-city-nj/apartments-for-rent/)

{
"rowType": "listing",
"listingType": "forRent",
"address": "626 Newark Ave, Jersey City, NJ 07306",
"buildingName": "CMPND 15 Central",
"price": 2354,
"priceMax": 4339,
"priceLabel": "$2,354 - $4,339",
"beds": 0,
"bedsMax": 2,
"propertyType": "Multi-Family",
"managementCompany": { "name": "Namdar Group of Companies", "phone": "(201) 685-3269", "website": "https://www.cmpnd.com/residential/15-central" }
}

Recently sold (Austin, TX, sold in the last month)

{
"rowType": "listing",
"propertyKey": "0fc3j50znd0ef",
"listingType": "sold",
"statusLabel": "Sold Sep 18, 2026",
"address": "2700 Addison Ave, Austin, TX 78757",
"price": 1050000,
"soldDate": "2026-09-18",
"beds": 4,
"baths": 3,
"sqft": 2060,
"propertyType": "House",
"detailUrl": "https://www.homes.com/property/2700-addison-ave-austin-tx/0fc3j50znd0ef/"
}

Agents mode (Hoboken, NJ, 60 listings read)

{
"rowType": "agent",
"agentName": "Jane Doe",
"agentEmail": "jane.doe@example.com",
"agentPhone": "(555) 010-0001",
"brokerage": "Example Realty",
"brokeragePhone": "(555) 010-0002",
"agentLicenseNumber": "0000000",
"agentProfileUrl": "https://www.homes.com/real-estate-agents/jane-doe/abc1234/",
"listingsFound": 6,
"listingsTotalValue": 6770000,
"listingTypes": ["forSale"],
"cities": ["Hoboken"],
"listingUrls": ["https://www.homes.com/property/921-madison-st-hoboken-nj-unit-607/q7q1re9dv9qgq/", "..."],
"searchLocation": "Hoboken, NJ"
}

Key output fields

Listing

propertyKey, listingKey, listingType (forSale / forRent / sold), statusLabel, propertyType, description, detailUrl

Address and location

address, street, unit, buildingName, city, state, postalCode, latitude, longitude; with details also county, neighborhood

Price and size

price, priceMax (top of a rent range), priceLabel, soldDate, beds, bedsMax, baths, bathsMax, sqft, lotSizeSqft, lotSizeAcres; with details also pricePerSqft, hoaFeeMonthly, annualTax, estimatedMonthlyPayment, yearBuilt, garageSpaces

Media and open houses

photoUrl, has3dTour, openHouses (startLocal, endLocal, startUtc, endUtc); with details also photos, floorPlans, virtualTours

Agent and brokerage

agentName, agentPhone; with details also agentEmail, agentLicenseNumber, agentProfileUrl, brokerage, brokeragePhone, brokerageEmail, agents (everyone on the listing), managementCompany (rental communities)

Listing history and records (full details)

listDate, daysOnMarket, priceHistory, taxHistory, mlsName, mlsNumber, parcelId, views, favorites

Neighborhood (full details)

schools (name, rating 1-10, grades, type, distance), walkScore, transitScore, bikeScore, highlights, features (MLS feature list by category)

Owner records

saleHistory (date, document type, sale price, buyers, sellers, title company), mortgages (date, amount, lender, borrowers, rate, term, status), currentOwners

Only new listings

changeType (new or priceChange), previousMapPrice

Agent rows

agentKey, agentName, agentEmail, agentPhone, agentLicenseNumber, agentProfileUrl, agentPhotoUrl, agentBio, brokerage, brokeragePhone, brokerageEmail, listingsFound, listingsTotalValue, activeListingsOnHomes, listingTypes, cities, listingUrls

The dataset has three ready-made views: Overview, Agent contacts and Agents.

Pricing

EventWhenPrice
Actor startOnce per run$0.005
ResultEach row saved (listing or agent)$1.50 per 1,000
Full listing detailsEach listing page opened: rows with full details or owner records, and every listing read in agents mode$1.50 per 1,000, from 20 October 2026

Free Apify plans can save up to 60 rows from one location per run. Set a maximum cost per run in Apify and the actor stops before going over it.

What you get here that most Homes.com actors don't offer

CapabilityTypical Homes.com actorsThis actor
For sale, for rent and sold in one actorOften one or twoAll three
Search inside the real city or ZIP boundaryRectangle or homes.com's own areaExact boundary
Full coverage of large citiesStops at the first few hundredSplits the area until done
Filters from a pasted search URLSometimesYes, plus 30+ input filters
Agent email and brokerageOften a paid add-onWith full details
Agent lead list for an areaSeparate actor, if at allAgents mode
Deed and mortgage recordsRareOwner records
Only new listings on repeat runsRareBuilt in

Speed

About 8 listings per second, or about 3 with full details (1,000 detailed listings take around 6 minutes). Agents mode reads listings at the full-details speed.

FAQ

Which homes.com URLs work? City, county, state, ZIP and neighborhood search pages, with or without type paths (homes-for-rent, condos-for-sale, sold, open-houses, newest, price-reduced, foreclosure) and the price, bed, bath, year-built, keyword and sort parameters, plus single property pages. See "Not supported" above for the rest.

Why did I get fewer rows than maxItems? The location has fewer matching listings, or maxItemsPerLocation is lower. The run log says how many listings each location has.

Why are some sold or rental searches slower? homes.com describes each property by its current listing. A home that sold and was listed again, or a condo that is for rent and for sale at once, no longer matches a sold or rental search, so the actor skips it and fetches the next one. The log says how many were skipped.

Why are some fields empty? homes.com and the local MLS decide what each listing carries. Some MLSs publish no year built; rental communities have a management company instead of an agent; agent emails need full details.

Why does a row say "Unlisted Address"? The owner or agent hid the address on homes.com, so there is no street, city or ZIP to return.

Can I look up one agent by name or profile URL? No. homes.com does not offer that to this actor. Use agents mode on the area the agent works in; an agent with no active listing there will not appear.

How does "only new listings" remember what it returned? In a key-value store named homes-com-scraper-monitor in your own Apify account, one record per search. Delete it to start over. Set maxItems high enough to cover the whole search, otherwise later runs also return older listings earlier runs left out.

Does it log in or use private data? No. It reads public listing data only. Owner records are public county deed and mortgage records.

Can I search outside the US? No. Homes.com covers the United States only.

Support

Found a bug or need a field added? Open an issue on the actor's Issues tab and it'll be looked at quickly.

Additional services

Need this data enriched, on a schedule, or pushed to your warehouse or webhook? Reach out via the Issues tab. Custom fields, monitoring runs and integrations are available.

Explore more scrapers

Full list at apify.com/memo23.

🤖 For AI Agents & LLM Apps

Compact reference for AI agents calling this actor via the Apify MCP server or the Apify API (actor: memo23/homes-com-scraper).

Purpose: US property listings from Homes.com (for sale, for rent, recently sold) by location or homes.com URL, searched inside real city and ZIP boundaries; optional full details, owner records, or one row per listing agent.

Minimal input:

{ "locations": ["Austin, TX"], "listingType": "forSale", "maxItems": 20 }

Output: one dataset row per property: rowType, propertyKey, listingType, address, city, state, postalCode, latitude, longitude, price, priceLabel, soldDate, beds, baths, sqft, lotSizeAcres, propertyType, description, photoUrl, openHouses, agentName, agentPhone, detailUrl. With includeDetails: photos, agentEmail, brokerage, yearBuilt, hoaFeeMonthly, annualTax, priceHistory, taxHistory, mlsNumber, schools, features. With scrapeMode: "agents": one row per agent with agentName, agentEmail, agentPhone, brokerage, listingsFound, listingUrls.

Behaviors an agent should know:

  • Always set maxItems; a whole city can return thousands of rows.
  • locations takes "City, ST", county, state, a 5-digit ZIP or a bounding-box JSON; startUrls takes homes.com search or property URLs, whose own filters win over input filters.
  • onlyNewListings keeps state in the caller's key-value store homes-com-scraper-monitor; later runs skip listings already returned.
  • Billing: $0.005 per run, $0.0015 per row; from 2026-10-20 also $0.0015 per listing page opened (full details, owner records, agents mode). Rows not saved are not charged.
  • US only. No agent lookup by name; no login-gated data.

⚠️ Disclaimer

This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Homes.com or its parent company CoStar Group, Inc. All trademarks mentioned are the property of their respective owners. Listing data and photos belong to the listing brokers and their MLSs.

The scraper accesses only publicly available listing pages and public property records. It uses no authenticated endpoints or paid features. Users are responsible for ensuring their use complies with Homes.com's Terms of Service, MLS rules, applicable data-protection law (GDPR, CCPA, etc.), and laws on contacting homeowners and agents (for example the TCPA and CAN-SPAM in the US), as well as any contractual obligations of their own organization.

SEO Keywords

homes.com scraper, scrape homes.com, homes.com API, homes.com data extraction, Apify homes.com, real estate scraper, property listings scraper, homes for sale scraper, rental listings scraper, sold homes data, real estate agent leads, agent email scraper, property owner records, foreclosure listings data, real estate comps data, MLS listing data, new listings alerts, US housing market data, proptech data, real estate investor leads