Realtor - Property Listings - $1/1k
Pricing
from $0.90 / 1,000 property listings
Realtor - Property Listings - $1/1k
Scrape property data from realtor.com. Fast and efficient. This scrapes the key information for each property and can run very quickly - therefore it is suitable for large volume scrapes. Scrapes properties for-sale and to-rent. n8n node: n8n-nodes-realtor
Pricing
from $0.90 / 1,000 property listings
Rating
0.0
(0)
Developer
datasaurus
Maintained by CommunityActor stats
3
Bookmarked
6
Total users
0
Monthly active users
2 days ago
Last modified
Categories
Share
Realtor.com Scraper – Property Listings, Rentals & Real Estate Data
Extract structured Realtor.com property listings including sale prices, rental price ranges, addresses, coordinates, property attributes and photos. The Actor supports for-sale and rental searches and respects advanced filters in Realtor.com search URLs.
Designed for fast, listing-level collection, with optional property-page enrichment. Rental listings can also include amenities, pet policies, management contacts and individual units with prices and availability dates where returned by Realtor.com.
n8n node: n8n-nodes-realtor
Why use this Actor?
- Collect sale, rental and sold listings from one Actor, with multiple search URLs and cross-search deduplication.
- Use fast listing-only collection by default, or opt into full listing-page details and expanded advertiser/contact data.
- Filter searches by location, property type, price, bedrooms and bathrooms without building every filter into a URL.
- Keep rental-specific data such as unit availability, pet policies and rent ranges in structured output.
What data can be extracted?
| Data | Available information |
|---|---|
| Listing | Property ID, listing ID, listing slug, status, listing date and permalink |
| Pricing | List price, rental price range and price reduction amount; last sold price and date when Realtor.com supplies them |
| Location | Address, city, state, postcode, country, coordinates and county information |
| Property | Bedrooms, bathrooms, floor area, lot area, property type, year built and garage details |
| Rental details | Community name, amenities, pet policies and application URL where available |
| Rental units | Unit-level bedrooms, bathrooms, floor area, rent and availability dates |
| Media | Primary photo, photo URLs and virtual-tour data where available |
| Contacts and source | Advertiser or management names, phone numbers, branding and listing-source metadata |
| Listing flags | Pending status, new-listing indicator and new-availability indicator |
Available fields depend on the listing.
Use cases
- Property market research — examine listing prices, property types and locations.
- Rental comparison — compare rents, amenities and available units.
- Listing monitoring — collect new listings or price changes for comparison over time.
- Geographic analysis — compare listings across cities, postcodes and neighbourhoods.
- Property discovery — collect listings matching a defined search.
Supported URLs
| Search | Example |
|---|---|
| For sale | https://www.realtor.com/realestateandhomes-search/Las-Vegas_NV |
| Filtered for sale | https://www.realtor.com/realestateandhomes-search/Las-Vegas_NV/type-farms-ranches,single-family-home,land,condo/beds-na-5/baths-1/features-htrvspdrwf |
| Rentals | https://www.realtor.com/apartments/Kansas-City_MO/type-apartments |
| Recently sold (last six months) | https://www.realtor.com/realestateandhomes-search/Kansas-City_MO/show-recently-sold |
Set your location and any advanced filters on Realtor.com, then copy the resulting search URL into start_urls. The Actor also accepts optional common filters in search_filters for location, status, property type, price, beds and baths. Those filters apply to every URL in the run. Leave the location override blank to use each URL's location. The show-recently-sold URL path filters to sold listings from the last six months; setting listing_mode to sold filters for sold listings without a date cutoff. sold_date and sold_price are available as top-level output fields and dataset columns, but may be null when Realtor.com does not return them.
Combine several search URLs in one run, including searches for different locations and both sale and rental listings.
Input example
{"start_urls": [{"url": "https://www.realtor.com/realestateandhomes-search/Las-Vegas_NV"},{"url": "https://www.realtor.com/apartments/Kansas-City_MO/type-apartments"}],"search_filters": {"listing_mode": "for_sale","property_types": ["single_family", "condos"],"min_price": 100000,"max_price": 750000,"min_beds": 2,"min_baths": 1},"extract_details": false,"deduplicate_across_all_start_urls": true,"max_results": 100}
max_results sets the maximum listings per start URL. search_filters is optional; omit it to use each URL's existing filters. listing_mode can be url, for_sale, for_rent or sold. Enable deduplicate_across_all_start_urls to remove duplicate listings across overlapping searches. See the Input tab for all configuration options.
Fast and detailed extraction
Fast listing-level extraction is the default. Set extract_details to true to make one additional webpage request per listing and add property_details, agent_details, detail_status, detail_description, property_features, property_history, tax_history and detail_advertisers to each record. The first two fields preserve the complete nested responses; the detail description, feature groups, histories and expanded advertisers are also promoted to top-level fields for easier dataset-table access. The detail query returns expanded descriptions, property feature groups, full photos, advertiser contact details, price history and tax history where Realtor.com provides them. This uses Realtor.com's internal api.frontdoor.realtor.com/graphql endpoint; it is not a documented public API, so its schema or access rules can change. Enrichment is best-effort: the listing is retained with detail_status: "failed" when the request fails, or "unavailable" when Realtor.com returns no detail object for that property.
Example from a detailed run (shortened to highlight the enrichment fields):
{"property_id": "8148247703","listing_id": "2998738770","sold_price": null,"sold_date": "2023-01-05","detail_status": "success","property_details": {"status": "for_sale","list_price": 12000,"description": {"beds": 2,"baths": 1,"sqft": 882,"lot_sqft": 3920,"year_built": 1923,"text": "2 bd, 1 bath bungalow in Kansas city. Classic front porch and simple layout..."},"details": [{"category": "Building and Construction","text": ["Total Square Feet Living: 882", "Year Built: 1923"],"parent_category": "Features"}],"property_history": [{"date": "2026-10-17", "event_name": "Price Changed", "price": 12000}],"tax_history": [{"year": 2025, "tax": 295, "assessment": {"total": 3517, "land": 599, "building": 2918}}]},"agent_details": {"advertisers": [{"name": "Tim Ray Team", "email": "tim@hslegacy.com", "phones": [{"number": "8166823338", "type": "Mobile"}]}],"consumer_advertisers": [{"type": "Agent", "agent_id": "2717270", "name": "Tim Ray Team"}],"source_agents": [{"office_name": "HomeSmart Legacy"}]}}
The example is shortened for readability. Realtor.com may omit or return empty values for history, contact and other property fields. Detailed-mode records also expose these same values as top-level convenience fields, which are included in the dataset table view:
{"detail_description": {"beds": 2, "baths": 1, "sqft": 882},"property_features": [{"category": "Building and Construction", "parent_category": "Features"}],"property_history": [{"date": "2026-10-17", "event_name": "Price Changed", "price": 12000}],"tax_history": [{"year": 2025, "tax": 295}],"detail_advertisers": [{"name": "Tim Ray Team", "email": "tim@hslegacy.com"}]}
Pricing
The Actor uses pay-per-event pricing:
| Delivered record | Event | Price |
|---|---|---|
| Listing without successful full-detail enrichment | property-listing | $0.001 per property |
| Listing with successful full-detail enrichment | property-listing-detailed | $0.002 per property total |
| Actor start | apify-actor-start (automatic) | $0.02 |
Every delivered listing is charged exactly once. A detailed listing uses the $0.002 all-in event; it does not also incur the basic listing event. If detail enrichment fails or Realtor.com has no detail object, the retained listing is charged at the basic rate. Apify automatically charges one Actor-start event per GB of memory; at this Actor's configured 4 GB, that is four start events, or $0.02 per run. The Actor does not issue a manual start charge.
Examples, excluding taxes and any platform compute or proxy costs:
- 1,000 basic listings: $1.00 in listing events + $0.02 in start events = $1.02.
- 1,000 successfully enriched detailed listings: $2.00 in listing events + $0.02 in start events = $2.02.
- 800 basic and 200 successfully enriched listings: $1.20 in listing events + $0.02 in start events = $1.22.
These are the event prices configured in this Actor's local manifest. Confirm the published rates and the pay-per-event setting on the Apify Store pricing page after the next Actor build/publish; local configuration alone does not change an already published Actor's live pricing.
Output
Results are returned as structured JSON, with one record per property listing. Rental units are nested within rental_units; they are not separate listing records.
The example below retains the supplied field names and nesting, with the amenities list shortened for readability. Prices and availability dates are sample values.
{"property_id": "7045794925","listing_id": "2966787449","listing": "1000-Berkley-Pkwy_Kansas-City_MO_64120_M70457-94925","list_price": null,"rental_list_price_min": 1080,"rental_list_price_max": 3120,"location": {"address": {"line": "1000 Berkley Pkwy","city": "Kansas City","coordinate": {"lat": 39.116867,"lon": -94.572589},"country": "USA","state_code": "MO","postal_code": "64120"},"county": {"name": "Jackson","fips_code": "29095"}},"status": "for_rent","beds": null,"baths": null,"sqft": null,"lot_sqft": null,"type": "apartment","year_built": 2018,"description": {"baths": null,"garage": null,"garage_min": null,"garage_max": null,"name": "Union Berkley Riverfront","sub_type": null},"rental_features": [{"category": "Community Features","text": ["Barbecue Area"," Conference Room"," Direct Access to Berkley Riverfront"," Fitness Center"," GE Energy Star Slate Finish Appliances"," High-speed Internet Ready"," Pool"," Yoga Studio & Group Cycling Studio by MyRide","Dogs Allowed","Cats Allowed"],"parent_category": "Community"}],"flags": {"is_pending": null,"is_new_listing": false,"has_new_availability": true},"primary_photo": "https://ar.rdcpix.com/d081a363af5c0871c3a694832929515bc-f3793748800s.jpg","photos": ["https://ar.rdcpix.com/d081a363af5c0871c3a694832929515bc-f3793748800s.jpg","https://ar.rdcpix.com/d081a363af5c0871c3a694832929515bc-f2505420430s.jpg","https://ar.rdcpix.com/d081a363af5c0871c3a694832929515bc-f3210258712s.jpg"],"virtual_tours": [],"list_date": "2024-04-12T18:14:55.000000Z","source": {"id": "ZILL","community_id": 4217650,"type": "community","feed_type": "Syndicator Community"},"branding": [{"type": "Office","photo": null,"name": null}],"advertisers": [{"type": "management","office": {"name": "Buckingham Management, LLC","phones": [{"number": null,"type": "office","primary": false,"trackable": null,"ext": null},{"number": "8169345204","type": "primary","primary": false,"trackable": null,"ext": null}]},"phones": null,"rental_management": null},{"type": "community","office": {"name": "Union Berkley Riverfront","phones": [{"number": "8169345204","type": "office","primary": false,"trackable": null,"ext": null}]},"phones": null,"rental_management": null}],"price_reduced_amount": null,"permalink": "https://www.realtor.com/apartments/1000-Berkley-Pkwy_Kansas-City_MO_64120_M70457-94925","rental_application_url": null,"rental_pet_policy": {"cats": true,"dogs": true,"dogs_small": false,"dogs_large": false},"rental_units": [{"availability": {"date": "2025-08-29"},"description": {"baths_consolidated": null,"baths": 1,"beds": 1,"sqft": 959},"list_price": 1700},{"availability": {"date": "2025-09-07"},"description": {"baths_consolidated": null,"baths": 1,"beds": 0,"sqft": 660},"list_price": 1310}]}
AI agents and integrations
Connect chat clients such as Claude and ChatGPT to Apify through the Apify MCP server to discover and run eligible Actors from a conversation. Actor availability depends on pricing and permissions; see the MCP guide for current requirements.
The structured json output let agents work directly with prices, locations, property attributes and rental-unit availability.
Example requests:
Collect listings from this Realtor.com sale search and return their prices, addresses, bedrooms and listing URLs.
Collect rental listings from these search URLs, including rental price ranges, amenities and unit availability where available.
n8n node: n8n-nodes-realtor
Official integration guides
- AI integrations — connect Apify data collection with AI applications and agent frameworks.
- Apify MCP server — setup, authentication and Actor eligibility requirements.
- n8n integration — run Actors and retrieve their results in n8n workflows.
Resources
Notes
- Scope: The Actor focuses on key listing data for large-volume collection. The output example shows the information it returns.
- Deduplication: Duplicate listings are matched on the combined
property_idandlisting_id. Deduplication across overlapping searches can reduce the number of records returned. - Limits:
max_resultsapplies per start URL and is a cap rather than a guaranteed record count. Results depend on the matching listings available. - Request handling: The Actor uses US residential proxies, dynamic request headers and session pooling to help reduce blocking. These measures do not guarantee that every request will succeed.
- Output format: JSON preserves nested location, contact, amenity and rental-unit data. Source field names are retained.
- Missing values: A null value means the information was not returned for that record; it should not be treated as zero or false.
Support
For bugs, additional fields or supported search URL requests, use the Actor's Issues tab. New to Apify? See the platform documentation.

