Carsales AU $1๐Ÿ’ฐ Deep Search | Bypass 440-Car Limit avatar

Carsales AU $1๐Ÿ’ฐ Deep Search | Bypass 440-Car Limit

Pricing

from $1.00 / 1,000 results

Go to Apify Store
Carsales AU $1๐Ÿ’ฐ Deep Search | Bypass 440-Car Limit

Carsales AU $1๐Ÿ’ฐ Deep Search | Bypass 440-Car Limit

Scrape structured vehicle listings from Carsales.com.au from $1 per 1K results. Built to bypass the 20-page / 440-car search cap with deep filtering. Returns clean JSON with 30+ fields per listing, ideal for dealers, analysts, pricing tools, and real-time vehicle data pipelines.

Pricing

from $1.00 / 1,000 results

Rating

0.0

(0)

Developer

Abot API

Abot API

Maintained by Community

Actor stats

1

Bookmarked

23

Total users

9

Monthly active users

3 days ago

Last modified

Share

Carsales AU Scraper

The fastest, cheapest way to pull structured vehicle listings from Australia's #1 car marketplace. Point it at a search, get back clean JSON with 30+ fields per listing. Built for dealers, analysts, price-tracking tools, market research, and data pipelines that need carsales data now, not tomorrow.

Why this scraper

  • โšก Sub-second per listing. Pure HTTP, no headless browser. 30 listings in ~3 seconds, 1,000 listings in ~3 minutes.
  • ๐Ÿ’ธ Pennies per thousand. Typical run costs ~$0.001 in proxy credit. No browser memory overhead; 256 MB is plenty.
  • ๐ŸŽฏ 30+ fields per car. Price, odometer, VIN, features, seller phone, images, body type, transmission, fuel, coordinates: already structured, ready to load into your DB.
  • ๐Ÿ“‘ Deep collection past the site's ~440-listing cap. carsales stops filtering any single search after roughly 440 results. This scraper automatically covers large searches across a series of price ranges and de-duplicates them, pulling far more than a single search will ever show.
  • ๐Ÿ”— Two flexible input modes. Filter-based (pick make/model/state) or paste your own carsales URL, including URLs copied straight out of a browser.

What you can do with it

  • Price intelligence: track asking prices for specific make/model/year combos across states, detect trends.
  • Dealer analysis: pull every listing from a dealer and monitor inventory turnover.
  • Market research: compare fuel-type mix, body-style share, or km distribution across regions.
  • Lead generation: extract seller contacts from fresh listings.
  • Data pipelines: feed your valuation, insurance, or forecasting models with always-fresh inventory.

1. Search by filters (easiest)

Click a few dropdowns (Condition, Make, Model, Body Type, State, Price range, Year range, Odometer range, Transmission, Fuel Type) and press run. The scraper builds the URL and collects the matching listings for you (covering large searches across price ranges automatically; see Deep collection below).

Want "used Toyota Corollas under $30,000 in NSW, cheapest first"? Four inputs, done.

2. Direct URLs (power users)

Found a specific search on carsales.com.au that nails exactly what you want? Paste the URL directly. The scraper collects each URL's results and returns them combined (with deep collection applied per URL when your listing target is large).

Drop in multiple URLs at once; each runs independently:

https://www.carsales.com.au/cars/used/toyota/corolla/new-south-wales-state/?sort=~Price
https://www.carsales.com.au/cars/used/bmw/x5/between-30000-80000/
https://www.carsales.com.au/cars/used/tesla/

Filter coverage

FilterSearch modeURL mode
Condition (New / Used / Demo)โœ…โœ… via URL
Make + Modelโœ…โœ… via URL
State (NSW / VIC / QLD / SA / WA / TAS / ACT / NT)โœ…โœ… via URL
Body type, Transmission, Fuel typeโœ…โœ… via URL
Colour, Cylinders, Doorsโœ…โœ… via URL
Price range, Year range, Odometer rangeโœ…โœ… via URL
Postcode + radiusโœ…โœ… via URL
Sort order (Featured / Price / KM / Year)โœ…โœ… via URL
Seller type (Dealer / Private)โœ…โœ… via URL

What you get (30+ fields per car)

Core: listingId, url, title, make, model, year, variant

Specs: bodyType, transmission, engine, fuelType, cylinders, engineCapacity, odometer, odometerDisplay, drivetrain, seats, doors, color

Price: price, priceDisplay, currency, priceInfo, comparisonRate

Listing metadata: condition, adType, sellerType, sellerId, sellerName, sellerPhone, sellerAbn, badges, rankingType, stockNumber, vin

Location: state, suburb, postcode

Media: images (array), imageCount, videoCount, threeSixtyCount

Optional enrichment (enable Fetch Full Details): adds description, features (full equipment list), VIN, seller phone, and more detail-page-only fields.

Example output

{
"listingId": "OAG-AD-1234456",
"url": "https://www.carsales.com.au/cars/details/2022-porsche-718-cayman-gt4-982-auto-my22/OAG-AD-123456/",
"title": "2022 Porsche 718 Cayman GT4 982 Auto MY22",
"make": "Porsche",
"model": "718",
"year": 2022,
"variant": "Cayman GT4",
"bodyType": "Coupe",
"transmission": "Automatic",
"engine": "6cyl 4.0L Petrol",
"fuelType": "Petrol",
"cylinders": 6,
"odometer": 14497,
"odometerDisplay": "14,497 km",
"price": 229990,
"priceDisplay": "$229,990",
"currency": "AUD",
"condition": "Used",
"adType": "Dealer used",
"sellerType": "Dealer",
"state": "VIC",
"images": ["https://carsales.pxcrush.net/carsales/cars/dealer/..."],
"imageCount": 38,
"videoCount": 1,
"scrapedAt": "2026-04-19T00:00:00.000Z"
}

Collecting more than 440 listings (deep collection)

carsales limits how much of any single search it will actually return: after about 440 listings it silently stops applying your filter and falls back to the whole catalogue. So a search for "used Ford" that reports 15,000 matches will only ever hand out ~440 of them through normal browsing.

Deep collection (the Deep collection toggle, on by default) gets you past that. When you ask for more than ~75 listings, the scraper covers the search across a series of narrow price ranges (aligned to carsales' own price steps, so each range is honoured) and merges the results with automatic de-duplication. That turns one ~440-capped search into combined output that runs into the thousands.

How to use it:

  1. Set Maximum listings to the number you actually want (e.g. 2000). Deep collection only kicks in once this is above ~75, so small runs are untouched.
  2. Leave Deep collection on.
  3. Run. The log reports the per-range plan and each range's contribution as it goes.

Honest limits: even with deep collection, a single enormous query (tens of thousands of matches) cannot be captured 100%; each price range still tops out near the site's per-search ceiling. For the fullest coverage of a big segment, combine deep collection with more filters (make/model, state, or year range); each narrowed search then gets its own deep collection. Larger targets also run longer, since more ranges mean more requests.

Run limits & cost control

  • Maximum Listings: hard cap across all searches (default 30). Raise it above ~75 to turn on deep collection.
  • Deep collection: on by default; covers big searches across price ranges (see above). Turn off for a single-search run.
  • Maximum Pages: per-search page cap, ~30 listings per page (default 20). Applies per price range when deep collection is on.
  • Fetch Full Details: opt-in enrichment. Each search result already carries the full record, so this is rarely needed.

Send results into your apps (MCP connectors)

Optionally pipe the scraped results into the apps you already use, via Model Context Protocol (MCP) connectors. This is an extra delivery step after the scrape; the Apify dataset is never changed.

What gets written to the connector: a condensed, human-readable summary of each record, not the full JSON. Each item becomes one entry with a title and its key fields flattened to plain text. The complete record always stays in the Apify dataset.

  1. Authorize a connector once under Apify โ†’ Settings โ†’ Integrations (Notion, Linear, Airtable, or Apify).
  2. Select it in the "Pipe results into your apps" input field. (If the picker is empty, you haven't authorized a connector yet.)
  3. For Notion, also set notionParentPageUrl to the page where items should be created.

The connection is mediated by Apify's MCP proxy, so this actor never sees your third-party credentials. Leave the field empty to skip.

Proxy setup

Apify RESIDENTIAL proxy with country AU is strongly recommended and is the default. It's what makes the scraper reliable at scale. If your Apify plan includes residential credit, you're good to go out of the box.

Support

Questions, feature requests, or issues? Open a ticket on the actor page. Built with speed, cost-awareness, and production stability in mind.