For Sale By Owner (FSBO) Scraper avatar

For Sale By Owner (FSBO) Scraper

Pricing

$1.50 / 1,000 fsbo listings

Go to Apify Store
For Sale By Owner (FSBO) Scraper

For Sale By Owner (FSBO) Scraper

Scrape For Sale By Owner (FSBO) homes on ForSaleByOwner.com by city, county, state or ZIP: price, beds, baths, sq ft, address, photos, days listed, sold date, and whether the seller takes cash or owner financing. Active, under-contract and sold. Export to JSON, CSV or Excel, or via API.

Pricing

$1.50 / 1,000 fsbo listings

Rating

0.0

(0)

Developer

Steady Scrape

Steady Scrape

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 days ago

Last modified

Security

Limited permissions

Share

Scrape For Sale By Owner (FSBO) listings from ForSaleByOwner.com, the largest FSBO site in the US, by city, county, state or ZIP code. This FSBO scraper gives every home its owner listed, in one clean row: asking price, bedrooms, bathrooms, square feet, lot size, year built, the full address split into street, city, county, state and ZIP, map coordinates, the description, photos, open houses, the date listed and days on the market, and the seller's terms: whether they accept cash offers, owner financing or a pre-approved mortgage, and whether they work with buyer's agents.

Pick active, under contract and sold listings (with the date sold), filter by price, beds, baths, property type, year built and living area, keep only sellers who offer owner financing, and schedule it to get only new listings, price cuts and status changes. Export the data to JSON, CSV or Excel, or read it via API.

What you can do with this FSBO scraper

  • Find motivated sellers: real-estate investors and wholesalers list every owner selling without an agent in their area, with days on the market, price cuts and the seller's accepted offer types.
  • Find owner-financing and cash deals: keep only sellers who say they accept owner financing or cash.
  • Prospect FSBO sellers: agents and brokers get every new for-sale-by-owner listing in their farm area each morning.
  • Track the FSBO market: asking prices, sold prices and dates, inventory per ZIP code, county or state.
  • Feed a CRM or a spreadsheet: one flat row per home, with the listing link to open it.

How it works

  1. Enter one or more locations: Houston, TX, Harris County, TX, Texas or TX, a ZIP code such as 77049, or paste a ForSaleByOwner.com search link (its filters are kept) or a single listing link.
  2. Pick the listing statuses (for sale, under contract, sold) and any filters. The filters are sent to the site's own search, so you only pay for homes that match.
  3. Run it. Each listing comes once per run, even when two of your locations overlap; a location that gives nothing returns one free row saying why (no such place, no listing with those filters, already delivered).

By default you get homes sold by their owners only. ForSaleByOwner.com also mixes builders' new-construction homes into its results (163 of Houston's 198 "for sale" results on 2026-10-30); switch on Include new construction to get them too, with the builder's name, the plan and the builder's listing link.

Input example

{
"locations": ["Houston, TX", "Harris County, TX", "77049"],
"listingStatuses": ["for_sale", "under_contract"],
"propertyTypes": ["house", "multi"],
"maxPrice": 350000,
"minBedrooms": 3,
"onlyOwnerFinancing": false,
"maxListingsPerLocation": 1000,
"onlyNewOrChanged": false
}

Output: FSBO listing data

One row per home (arrays shortened here):

{
"listingId": "6acfd8017ef2a299a8093e16",
"listingUrl": "https://www.forsalebyowner.com/listing/6215-Scotch-Pine-Drive-Houston-TX-77049/6acfd8017ef2a299a8093e16",
"listingStatus": "for_sale",
"isNewConstruction": false,
"price": 225000,
"isPriceReduced": null,
"propertyType": "House",
"bedrooms": 3,
"bathrooms": 2,
"livingAreaSqft": 1287,
"lotSize": 7440,
"lotSizeUnit": "sqft",
"lotSizeSqft": 7440,
"yearBuilt": 1978,
"address": "6215 Scotch Pine Drive Houston, TX 77049",
"street": "6215 Scotch Pine Drive",
"city": "Houston",
"county": "Harris",
"state": "TX",
"zip": "77049",
"latitude": 29.8149941,
"longitude": -95.1931589,
"description": "Pine Trails is a charming neighborhood located in Harris County… Seller is willing to work a deal on Owner financing with a down payment.",
"listedDate": "2026-10-14",
"soldDate": null,
"daysListed": 16,
"acceptedOffers": ["cash", "owner financing"],
"acceptsCashOffers": true,
"acceptsOwnerFinancing": true,
"buyerAgents": "buyers only",
"appliances": ["Dishwasher", "Garbage Disposal", "Refrigerator", "Microwave"],
"heating": ["Central Heating"],
"cooling": ["Central AC"],
"parking": ["Attached Garage", "On-street"],
"rooms": ["Primary Bath", "Dining Room", "Family Room", "Walk-In Closet"],
"fencedYard": true,
"patio": true,
"pool": null,
"openHouses": [],
"photoUrl": "https://images.forsalebyowner.com/1197de5e-60e3-4cf8-af30-edf62b03a107.curb-appeal-brick-home-and-lush-yard.png?1792019714",
"photoCount": 18,
"virtualTourUrl": null,
"builderName": null,
"rowType": "listing",
"status": "ok",
"input": "Houston, TX",
"location": "Houston, TX",
"position": 1,
"change": null,
"scrapedAt": "2026-10-30T07:00:00.000Z"
}

A location that gives nothing returns a free row instead:

{
"rowType": "status",
"status": "not_found",
"input": "Zzqxville, TX",
"url": "https://www.forsalebyowner.com/search/list/zzqxville-texas",
"reason": "ForSaleByOwner.com knows no place \"Zzqxville, TX\" (looked up as \"zzqxville-texas\"; the site has no such city, county or ZIP code). Check the spelling, or search the place on https://www.forsalebyowner.com and paste the search link."
}

FSBO listing fields

fieldwhat it holds
listingId, listingUrlThe site's listing id and the listing's page.
listingStatusfor_sale, under_contract or sold.
price, isPriceReducedAsking price in US dollars (for a sold home, the last asking price) and the site's price-cut flag.
propertyTypeHouse, Condo, Townhouse, Multi-Family or Land.
bedrooms, bathrooms, livingAreaSqft, yearBuilt, storiesAs the owner wrote them; half baths count as 0.5.
lotSize, lotSizeUnit, lotSizeSqftThe lot as written, its unit (sqft or acres) and the same lot in square feet.
address, street, unit, city, county, state, zip, neighborhoodThe home's address, split.
latitude, longitudeThe map pin.
title, descriptionThe owner's headline and description, as plain text.
listedDate, activatedDate, updatedDate, soldDate, daysListedDates as YYYY-MM-DD; days from listing to the run (empty for sold homes).
acceptedOffers, acceptsCashOffers, acceptsOwnerFinancingOffer types the seller accepts: cash, pre-approved mortgage, owner financing.
buyerAgentsbuyers only, agents welcome or agents welcome, commission offered.
leaseToOwnThe seller offers lease-to-own.
appliances, heating, cooling, parking, parkingSpaces, flooring, views, roomsHome details as the owner listed them.
pool, fireplace, basement, fencedYard, patio, porch, deck, hotTub, jettedTub, securitySystem, sprinklerSystem, furnished, inLawSuite, waterfronttrue when the owner ticked it, null when they said nothing.
openHousesEach open house's start and end (ISO 8601 UTC) and notes.
photoUrl, photoUrls, photoCount, videos, virtualTourUrlMedia.
mlsNumberWhen the home is also on an MLS.
isNewConstruction, builderName, planName, builderListingUrl, moveInDateBuilders' new homes only (with Include new construction).
input, location, positionThe location you entered, the place the site matched, and the place in its results.
change, previousPrice, previousStatusWith Only new listings and changes: new, price_changed or status_changed, with the earlier values.
rowType, status, scrapedAtlisting with status ok for a paid row; status for a free row, with status no_results, not_found, invalid, duplicate, blocked or site_error, plus its url and reason. When the row was made (ISO 8601 UTC).

Owners are private people: the Actor never copies their names, pictures or their message to buyers. Descriptions come as the site shows them: it masks phone numbers there as "(XXX) XXX-XXXX", but a few owners typed an email address or a phone number the site did not mask (5 emails and 1 phone in 292 owner listings on 2026-10-30), and those come through as written. To reach a seller, open listingUrl.

Monitoring new FSBO listings and price cuts

Turn on Only new listings and changes and schedule the Actor (daily, for example). The first run delivers every listing; each later run delivers only listings it has not seen, and listings whose price or status changed, with previousPrice and previousStatus. Include Under contract and Sold in the statuses to see a home go under contract or sell. The memory is kept per set of locations and filters, in your account's key-value store steadyscrape-fsbo-state.

Pricing

US$0.0015 per listing (US$1.50 per 1,000 FSBO listings), with every field above included. Free rows (a place the site does not know, a location with no listing, a duplicate, a listing link no longer online) cost nothing, and so do listings your filters leave out. Set a maximum cost per run and the Actor stops when it reaches it.

Limits

  • One site: ForSaleByOwner.com. Its inventory is what owners list there (on 2026-10-30, Texas had 806 owner listings for sale, Florida 1,107, California 140; Houston 35); sold listings go back years.
  • Some fields are only as complete as the owner made them: in 400 Florida listings, 340 gave a living area, 290 a lot size and 391 a description. A few sold listings (13 of 393 in California) carry no sold date on the site itself.
  • When the owner wrote a lot size without its unit, a value under 100 is read as acres and any other as square feet.
  • Up to 9 for minimum bedrooms and bathrooms (the site's own filter takes one digit).

This Actor reads only the listings owners publish for buyers, through the same public search the site's pages use, with no login, and it never touches the "Contact the Seller" form. It leaves out the owners' names, pictures and messages. You are responsible for how you use the data, including privacy, fair-housing and telemarketing rules where you work. This Actor is unofficial and is not affiliated with, endorsed by or sponsored by ForSaleByOwner.com, FSBO.com or Rocket Companies.

Feedback

Found a listing that comes out wrong, or need another field? Open an issue on the Actor's Issues tab.