Carsales.com.au Used & New Car Listings Scraper avatar

Carsales.com.au Used & New Car Listings Scraper

Under maintenance

Pricing

from $0.60 / 1,000 listings

Go to Apify Store
Carsales.com.au Used & New Car Listings Scraper

Carsales.com.au Used & New Car Listings Scraper

Under maintenance

[💰 $0.6 / 1K] Extract new and used car listings from Carsales.com.au across all 8 Australian states and territories. Get AUD prices, odometer readings, make, model, variant, year, dealer or private seller, photos and the site's own market price indicator. Export to JSON, CSV or Excel.

Pricing

from $0.60 / 1,000 listings

Rating

0.0

(0)

Developer

SolidCode

SolidCode

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

5 days ago

Last modified

Share

Pull live car listings from Carsales.com.au at scale — AUD asking prices, odometer readings, make, model, variant and year, dealer or private seller, photo galleries, and the market price indicator the site itself puts on each ad. Built for dealer groups, automotive analysts, and lead-generation teams who need current Australian new and used inventory as clean, comparable rows instead of copying cars out of search pages thirty at a time.

Why This Scraper?

  • 31 fields on every listing — coverage measured across 440 listings spanning all 8 Australian states and territories and 6 vehicle categories. 28 of the 31 fields came back populated on 100% of them.
  • Prices you can actually compare — the AUD price, the price exactly as displayed, and the qualifier that says what it includes (Drive away, Excl. Govt. Charges, Indicative drive away). All three on 440 of 440 sampled listings, so a $63,990 drive-away ad is never averaged against a $63,990 excl.-charges ad.
  • The site's own market price indicatorAround market price, Below market price or Well below market price, captured on 76% of listings. That is Carsales.com.au's valuation call on the ad, not one this actor invents.
  • Promoted placements flagged, never hidden — every row carries a true/false promoted flag plus the placement type (showcase, spotlight, topspot). 116 of the 440 sampled listings were paid placements. Filter them out for an organic-only view, or keep them to see who is buying visibility in your segment.
  • Honest odometer readings — 426 of 440 read as a real distance, from 3 km to 369,125 km. The 14 brand-new cars that carry Built: December 2025 instead are kept verbatim rather than coerced into a fake "2,025 km".
  • 10 filters, no URL building required — state or territory (all 8), body style (8, including Ute, Cab Chassis and People Mover), dealer vs private seller, make, model, price range, year range, and maximum kilometres. Set the ones you care about and run.
  • Goes deeper than a single result page — any one Carsales.com.au search shows about 30 cars however you page it, so this actor automatically splits a broad search into narrower price bands and keeps going until it reaches your Max results.
  • Real media counts — up to 5 preview image URLs, plus the listing's true photo total (1 to 72 in the sample, median 23), its video count, and its 360-degree interior tour count. The photo total is the listing's own, not the length of the preview list.
  • Seller identified on every row — dealer or private, plus a stable seller ID on 440 of 440, so you can group one dealership's entire advertised stock or isolate private sellers only.

Use Cases

Dealer & Inventory Intelligence

  • Track a competing dealership's advertised stock by seller ID and watch what turns over week to week
  • Compare your asking prices against every same make, model and year listing in your state
  • Spot which body styles are oversupplied in your market before you commit on a trade-in
  • Measure how much of the first result page in your segment is paid placement

Pricing & Valuation

  • Build make/model/year/kilometre price curves from live asking prices in AUD
  • Separate drive-away prices from excl.-government-charges prices before averaging
  • Use the market price indicator to surface under-priced stock the day it appears
  • Re-run a saved filter on a schedule and diff on listing ID to catch price movements

Lead Generation

  • Build lists of private sellers by state, make and price band
  • Identify dealers advertising specific models for franchise and wholesale outreach
  • Find high-kilometre or older stock for wholesale, parts and export buyers

Market Research & Reporting

  • Measure EV, hybrid, petrol and diesel supply by state straight from the engine field
  • Quantify the dealer vs private split across states, body styles and price bands
  • Chart the new, demo and used mix in a segment over time

Data Enrichment & Integration

  • Feed listings into your CRM or DMS keyed on a stable listing ID and a direct listing URL
  • Enrich internal valuation models with live market comparables
  • Push new matches to Google Sheets or Slack on a schedule with webhooks

Getting Started

Simplest run

{
"maxItems": 100
}

One state, one make

{
"state": "VIC",
"make": "Toyota",
"bodyStyle": "SUV",
"maxItems": 200
}
{
"state": "NSW",
"make": "Mazda",
"model": "CX-5",
"sellerType": "Dealer",
"priceMin": 20000,
"priceMax": 35000,
"yearMin": 2019,
"odometerMax": 80000,
"maxItems": 500
}

Private sellers only, under $15,000

{
"sellerType": "Private",
"state": "QLD",
"priceMax": 15000,
"maxItems": 300
}

Input Reference

What to Scrape

ParameterTypeDefaultDescription
maxItemsinteger100Maximum listings per search (0 = collect everything the search returns). Carsales.com.au shows about 30 listings for any one search directly, so the actor splits a large search into narrower ones to reach this number.
searchUrlsarrayAdvanced. Runs prepared search addresses exactly as given, instead of building a search from the filters below. Leave it empty — the filters cover every search option and are the supported way to run this actor.

Search Filters

Combine as many as you like, or leave them all blank to sweep everything.

ParameterTypeDefaultDescription
statestringOne Australian state or territory: New South Wales, Victoria, Queensland, Western Australia, South Australia, Tasmania, Australian Capital Territory or Northern Territory.
bodyStylestringOne body style: SUV, Sedan, Ute, Wagon, Hatch, Cab Chassis, People Mover or Van.
sellerTypestringDealer listings only, or private-seller listings only.
makestringOne vehicle make, e.g. Toyota. Spell it the way Carsales.com.au lists it.
modelstringOne model, e.g. CX-5. Only used together with make — ignored when make is blank.
priceMinintegerOnly listings priced at or above this amount, in AUD.
priceMaxintegerOnly listings priced at or below this amount, in AUD.
yearMinintegerOnly listings built in or after this year.
yearMaxintegerOnly listings built in or before this year.
odometerMaxintegerOnly listings with an odometer reading at or below this many kilometres.

Options

ParameterTypeDefaultDescription
concurrencyinteger8How many requests to run in parallel. Lower this if you see failures.
proxyConfigurationobjectApify ProxyProxy settings for the run.

Output

Every listing is one dataset row.

A real captured listing, shown exactly as the actor returned it. Null fields are dropped from a row rather than shipped empty, so a row carries only what the listing actually had.

{
"id": "OAG-AD-25711722",
"url": "https://www.carsales.com.au/cars/details/2021-mazda-cx-5-gt-kf-series-auto-i-activ-awd/OAG-AD-25711722/?gts=OAG-AD-25711722&gtsSaleId=OAG-AD-25711722&gtsViewType=showcase&rankingType=showcase",
"title": "2021 Mazda CX-5 GT KF Series Auto i-ACTIV AWD",
"make": "Mazda",
"model": "CX-5",
"variant": "GT Auto i-ACTIV AWD",
"year": 2021,
"bodyStyle": "SUV",
"engine": "4cyl 2.5L Petrol",
"transmission": "Automatic",
"odometerText": "44,905 km",
"condition": "Used",
"price": 28980,
"priceDisplay": "$28,980",
"priceQualifier": "Excl. Govt. Charges",
"priceIndicator": "Below market price",
"state": "NT",
"sellerType": "dealer",
"listingType": "Dealer used",
"sellerId": "AGC-SELLER-58595",
"mainImage": "https://carsales.pxcrush.net/carsales/cars/dealer/dfo39rs4jjb5yjwni2gtl6wop.jpg?pxc_method=fitfill&pxc_bgtype=self&pxc_size=720,480",
"previewImages": [
"https://carsales.pxcrush.net/carsales/cars/dealer/dfo39rs4jjb5yjwni2gtl6wop.jpg?pxc_method=fitfill&pxc_bgtype=self&pxc_size=720,480",
"https://carsales.pxcrush.net/carsales/cars/dealer/c3fum8ysjxl6r2wygc1yfzh5y.jpg?pxc_method=fitfill&pxc_bgtype=self&pxc_size=720,480",
"https://carsales.pxcrush.net/carsales/cars/dealer/etu8y7sfxu6ubpb53l9aj66ov.jpg?pxc_method=fitfill&pxc_bgtype=self&pxc_size=720,480",
"https://carsales.pxcrush.net/carsales/cars/dealer/3nnatby5tzk6au7y25tcoccp5.jpg?pxc_method=fitfill&pxc_bgtype=self&pxc_size=720,480"
],
"photoCount": 32,
"videoCount": 1,
"interior360Count": 0,
"listingId": "20d4c27c-0833-4a3e-b1f4-ba2acd577d8f",
"isPromoted": true,
"promotionType": "showcase",
"searchRank": 3,
"searchResultCount": 3926
}

Core Fields

FieldTypeDescription
idstringListing ID
urlstringListing URL
titlestringFull title
makestringMake
modelstringModel
variantstringBadge / variant
yearnumberYear
bodyStylestringBody style
enginestringEngine / fuel
transmissionstringTransmission
odometerTextstringOdometer reading as shown, e.g. 44,905 km. Brand-new cars carry a build date instead, e.g. Built: December 2025
conditionstringUsed, Demo or New

Price & Value & Location

FieldTypeDescription
pricenumberPrice (AUD)
priceDisplaystringPrice as displayed
priceQualifierstringWhat the price includes: Drive away, Excl. Govt. Charges or Indicative drive away
priceIndicatorstringThe site's own valuation call: Around market price, Below market price or Well below market price
statestringState or territory code, e.g. NSW, VIC, QLD

Contacts

FieldTypeDescription
sellerTypestringdealer or private
listingTypestringe.g. Dealer used, Dealer Demo, Dealer new car in stock, Private
sellerIdstringStable seller ID — group a dealership's whole advertised stock by it
dealerNamestringDealership trading name, where the listing shows one

Media

FieldTypeDescription
mainImagestringMain photo URL
previewImagesarrayPreview photo URLs (up to 5)
photoCountnumberThe listing's full photo count — independent of the 5-image preview
videoCountnumberVideos
interior360Countnumber360-degree tours

Details & Timestamps

FieldTypeDescription
listingIdstringInternal listing GUID
isPromotedbooleantrue when the listing is a paid placement rather than an organic result
promotionTypestringWhich placement was bought: showcase, spotlight or topspot. Only present on promoted rows
searchRanknumberPosition this listing held in the result set
searchResultCountnumberHow many listings the site reports for this search overall

Tips for Best Results

  • Narrow the filters to go deeper. Any single Carsales.com.au search shows about 30 cars. The actor splits a broad search into narrower price bands on its own, but the most complete coverage on a very large search comes from combining state + make + a price band and running a few of those rather than one sweep.
  • odometerText is a reading, not a number. About 3% of rows — brand-new cars — carry Built: December 2025 in place of a distance, kept verbatim so nothing silently reads it as 2,025 km. Check for km before converting, or filter on condition first.
  • Check priceQualifier before you average anything. Drive away includes on-road costs and Excl. Govt. Charges does not. Mixing the two in one average moves it by thousands of dollars per car.
  • Filter on isPromoted for an organic view. Roughly a quarter of results are paid placements and they sit at the top, so an unfiltered first 30 over-represents them. searchRank tells you the position each row held, and promotionType tells you which placement was bought.
  • photoCount is the listing's real total; previewImages stops at 5. Rank listings by photoCount to find the well-documented cars, then follow url for the full gallery.
  • model needs make. A model on its own is ignored, and the spelling has to match the site's — CX-5, not CX5.
  • Listing IDs are stable, so schedule it. Re-run the same filters on a schedule and diff on id to separate genuinely new stock from price movements on cars you already have.

Pricing

From $0.60 per 1,000 results.

ResultsPrice
100$0.06
1,000$0.60
10,000$6.00
100,000$60.00

Those are the rates on Gold and above. Higher-volume plans pay less per result:

Your Apify planPrice
No discount$0.72
Bronze$0.68
Silver$0.64
Gold and above$0.60

Per 1,000 results.

A "result" is any listing row in the output dataset. When you run several searches at once, a listing matching more than one of them is de-duplicated before it reaches the dataset, so you are never charged twice for the same listing. Platform fees (compute, storage) are additional and depend on your Apify plan.

Integrations

Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps via:

  • Zapier / Make / n8n — Workflow automation
  • Google Sheets — Direct spreadsheet export
  • Slack / Email — Notifications on new results
  • Webhooks — Trigger custom APIs on run completion
  • Apify API — Full programmatic access

This is an unofficial scraper. It is not affiliated with, endorsed by, or connected to Carsales.com.au or its operators in any way. All trademarks belong to their respective owners.

This actor is intended for legitimate market research and analytics. You are responsible for complying with applicable laws and with Carsales.com.au's Terms of Service.

Results may include personal data such as contact details. Treat them accordingly: do not use them for spam, harassment, or any unlawful purpose, and follow applicable privacy rules when storing or processing them.