Property.com.au Scraper: Sold History & Estimates avatar

Property.com.au Scraper: Sold History & Estimates

Pricing

from $1.60 / 1,000 listings

Go to Apify Store
Property.com.au Scraper: Sold History & Estimates

Property.com.au Scraper: Sold History & Estimates

Scrape property.com.au listings by suburb: price, beds, baths, land size, estimated value, weekly rent estimate and the full sale and rent history of each property. Filter by state, suburb, postcode, sale or rent, property type and bedrooms.

Pricing

from $1.60 / 1,000 listings

Rating

0.0

(0)

Developer

Tuyen Tran

Tuyen Tran

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

an hour ago

Last modified

Categories

Share

Live Sample Dataset & Verified Run Benchmark

Two runs on 2026-11-03 on Apify Cloud, build 0.1.76. Both datasets are public: open the JSON or CSV link in a browser, no login and no run needed.

List run — lQRu6ToUMRx51xYXO · 30 rows · 62 columns · 50.7 s · charged apify-actor-start 1, listing-scraped 30. JSON · CSV

Detail run — kyXh2YRPCxOKpQbgt · 3 rows · 62 columns · 328.2 s · charged listing-scraped 3, detail-scraped 3. JSON · CSV

Fill rate on the 30-row list sample: priceNumeric 28/30, sold_date 30/30, estimate_value 0/30. Empty cells are honest: the portal prints “Contact Agent”, “Auction” or “Price withheld”, so priceNumeric stays null instead of guessing. The detail run is the place to see agent phone, description and history.

#AddressPriceBedsBathsTypeSource
112/96 York Street, Richmond, Vic 3121$350,00011Open
223 Crown Street, Richmond, Vic 3121$1,720,00032Open
335 Johnson Street, Richmond, Vic 3121$2,100,00041Open

Open the sample, compare the three rows with the source pages, check the $2.005 and $8.005 lines below, and note the 50-row free limit. That is the whole test, under five minutes.

What does the Property.com.au Scraper do?

Scrape property.com.au sold prices, current listings and rent estimates for an Australian suburb without opening each page by hand. Rows carry the sale date, years held, estimated value, weekly rent estimate, planning overlays and school catchment when includeDetails is on. The Free plan can return up to 50 results per run for testing.

It is an API-friendly property data tool, not a login or paywall bypass. It reads public listing pages and returns one flat row per property.

Why scrape property.com.au with this Actor?

The site combines listings with a valuation model and a long sold history. This actor puts those layers into one table you can filter, join and schedule.

#FeatureWhat it means for youMeasured on live runs
1Form filtersChoose state, suburb, postcode, channel, propertyTypes, rooms, land and price without assembling a URL.Sold search reached 1,005 properties across 51 pages.
2Change-only modeonlyEmitChanges: true returns new, repriced and removed listings instead of the whole suburb every day.Re-run with no movement returns 0 rows.
3Sold timelinesold_date, last_sold_price, years_held and capital_growth_pct come from the sold record and detail page.Sold detail sample: 10/10 histories and years-held values.
4Smart detail cacheincludeDetails: true opens a property once and reuses it for detailCacheDays; a price change drops that cache entry.Detail coverage 10/10 for estimate, rent estimate and overlays.
5Flat outputOne row per property, ready for CSV, Google Sheets or a warehouse; the core fields are flat.62 columns: 25 core fields plus portal and detail fields.
6Automation-readyDataset export, API, scheduling, webhooks, n8n, Make, Zapier and Apify MCP for AI agents.Works with the same input shape as the other two actors.

The honest limit: no agent phone numbers

property.com.au publishes the agency, not the agent’s mobile number. This actor returns agency_name when details are on, but agent1_phone is not available from this source. Use the realestate.com.au actor when phone numbers are the priority.

What data can you extract from property.com.au?

Field groupFieldsList modeNeeds includeDetails: true
IdentitylistingId, sourcePortal, listingUrlYesNo
AddressfullAddress, suburb, state, postcodeYesNo
SalepriceDisplay, priceNumeric, sold_date, sold_days_agoSold rowsFull sale history
Estimaterent_estimate_weekly, estimate_value, estimate_low, estimate_highNoYes
Historyhistory, last_sold_date, last_sold_price, years_held, capital_growth_pctNoYes
PropertypropertyType, bedrooms, bathrooms, carSpaces, landSizeSqmYesNo
Riskflood_overlay, bushfire_overlay, heritage_overlayNoYes
Schoolsschools, mobile_coverageNoYes
Agencyagency_nameNoYes
LifecyclechangeStatus, daysOnMarket, priceHistoryYesNo

sold_date is a real output field. It is populated from the sold-date text or parsed from the “N days ago” label; when neither is printed, it stays null rather than being guessed.

How to scrape property.com.au listings and price history

  1. Enter state, suburb and postcode on the Input tab.
  2. Choose channel: buy, rent or sold. mode is accepted as an alias for older tasks.
  3. Set maxPages, maxItems, and optionally propertyTypes, minBedrooms, maxBedrooms, minPrice and maxPrice.
  4. Turn on includeDetails to get estimates, rent, overlays, schools and agency; set maxDetails and detailCacheDays. Press Run, then schedule a daily task with onlyEmitChanges: true.

The first run starts the history. Later runs compare against it, so a new stateKey can still inherit the earliest first_seen_at and accumulated priceHistory from the central warehouse.

How much does it cost to scrape property.com.au?

Pricing is pay-per-event. All Apify platform compute and residential/unblocker proxy usage is 100% included in the per-event price. You never pay a separate compute-unit or proxy surcharge.

  • List Mode (includeDetails: false): $2.005 per 1,000 listings on the Apify Standard tier ($0.005 actor start + 1,000 × $0.002 per listing), or ~$1.60 per 1,000 on Apify Scale/Business discounted tiers.
  • Full Detail Mode (includeDetails: true): $8.005 per 1,000 listings with full details on the Apify Standard tier ($0.005 actor start + 1,000 × $0.002 listing + 1,000 × $0.006 detail add-on), or ~$6.40 per 1,000 on discounted tiers. A 3-row detail test run costs exactly $0.029.
  • Free plan limit: Free Apify accounts can extract up to 50 rows per run, enough to inspect the full schema, verify field fill rates and test a suburb before upgrading. Paid Apify plans unlock unlimited rows per run.
  • Detail rows are billed whether they are live or served from the cache, because the customer receives the data in both cases.

Input parameters and configuration examples

ParameterWhat it doesExample
state, suburb, postcodeSuburb filter"VIC", "Richmond", "3121"
channelbuy, rent or sold"sold"
propertyTypesHouse, unit, townhouse, villa, land, acreage, rural["house"]
maxPagesResult pages to read2
includeDetailsOpen each property pagetrue
maxDetailsMaximum detail pages10
detailCacheDaysReuse a detail page for this many days; 0 means always fresh30
maxItemsMaximum rows returned50
onlyEmitChangesNew, changed and removed rows onlytrue
minPrice, maxPricePost-load price filter700000, 1400000
startUrlsAdvanced list/search URL input["https://www.property.com.au/vic/richmond-3121/sold/"]

Sold-suburb run

{
"channel": "sold",
"state": "VIC",
"suburb": "Richmond",
"postcode": "3121",
"propertyTypes": ["house"],
"maxPages": 2,
"includeDetails": true,
"maxDetails": 10,
"detailCacheDays": 30,
"maxItems": 50
}

Daily sold-price watch

{
"channel": "sold",
"state": "VIC",
"suburb": "Richmond",
"postcode": "3121",
"onlyEmitChanges": true,
"includeRemovedListings": true,
"stateKey": "richmond-sold",
"maxItems": 50
}

Output example

A real sold record from a Cloud run, shortened:

{
"listingId": "1752836",
"sourcePortal": "property.com.au",
"channel": "sold",
"fullAddress": "7 Watkin Street, Newtown, NSW 2042",
"suburb": "Newtown",
"state": "NSW",
"postcode": "2042",
"priceDisplay": "$1,650,000",
"priceNumeric": 1650000,
"sold_date": "15 Mar 2013",
"changeStatus": "UNCHANGED",
"daysOnMarket": 0,
"bedrooms": 3,
"bathrooms": 2,
"carSpaces": null,
"landSizeSqm": 111,
"rent_estimate_weekly": 1360,
"years_held": 13,
"agency_name": "BresicWhitney - Inner West",
"listingUrl": "https://www.property.com.au/nsw/newtown-2042/watkin-st/7-pid-1752836/"
}

Download the full result as JSON, HTML, CSV or Excel from the Dataset tab, or read it through the Apify API.

🇦🇺 Australian Real Estate Data Suite (5 Portals)

ActorBest forLink
🏠 Realestate.com.au Scraper: Price Drops & Agent LeadsResidential buy, rent and sold listings, daily price drops, agent phone numbershttps://apify.com/kotaro001/realestate-com-au-scraper
📈 Property.com.au Scraper: Sold History & EstimatesSuburb sold prices, rent estimates, multi-year history, years_held, school zoneshttps://apify.com/kotaro001/property-com-au-scraper
🏢 Realcommercial.com.au Scraper: Prices, Yield & AgentsOffices, warehouses, retail and farming; sale, lease, sold, leased and invest cashflowhttps://apify.com/kotaro001/realcommercial-com-au-scraper
🏡 OnTheHouse.com.au Scraper: Sold History & ValuationsCotality AVM estimates, hidden contact-agent prices, multi-decade sale history, suburb medians and agent phoneshttps://apify.com/kotaro001/onthehouse-com-au-scraper
🏛️ Allhomes.com.au Scraper: EER, Land Value & RatesCanberra and ACT listings with EER, unimproved land value, UV year, annual rates and auction dateshttps://apify.com/kotaro001/allhomes-com-au-scraper

Pro Tip for investors and buyers’ agents: run the same state, suburb and postcode across all three actors, export the CSV or Sheets tables, and join on fullAddress to compare the live asking price with the sold timeline, rent estimate and commercial income data.

Do I need to configure proxies to scrape property.com.au?

No. The actor manages the Apify proxy and the site’s request limits. You only choose the suburb and the number of pages.

How do I track daily sold prices and removed listings?

Run once, save the run as a task, schedule it daily, and set onlyEmitChanges: true. The next run returns new, changed and removed rows; priceHistory carries the dated price moves.

How do I get rent estimates, years held and school zones?

Set includeDetails: true and maxDetails above zero. The detail page provides rent_estimate_weekly, years_held, overlays and schools. agency_name is also available; agent phone numbers are not published by property.com.au.

Can I connect this Actor to Google Sheets, n8n, or AI Agents (MCP)?

Yes. Export JSON, CSV or Excel from the dataset, call the Apify API from n8n, Make, Zapier or a webhook, or use Apify MCP to let an AI agent query the actor.

This actor is an independent tool. It is not affiliated with, endorsed by, or sponsored by REA Group or property.com.au. It reads publicly available listing pages. How you use the data, and whether your use complies with the site’s terms and Australian law, is your responsibility.

Custom work: need a suburb watchlist, a bulk sold-history export or a CRM feed? Contact actors@zapstackguides.com with your postcodes and fields.