Cars.co.za Scraper - SA Car Listings, Prices & Mileage
Scrape new and used car listings from Cars.co.za: price in Rand, year, mileage, make, model, variant, province, city and dealer. Filter by make, model, province and price.
USD 1 per 1,000 results on Apify (pay per event)
Open in Apify StoreExample: Toyota Hilux prices and mileage in Gauteng
Get new and used car listings from Cars.co.za, South Africa's large car marketplace, as clean JSON or CSV. Each listing comes with price in Rand, year, mileage, make, model, variant, body type, transmission, fuel type, colour, province, city, dealer name and the listing link. Filter by make, model, province and maximum price.
Prices, mileage and years are read from the structured data the site itself uses, then checked for sense (price between R1,000 and R50 million, mileage up to 1.5 million km). A value that fails the check is returned as empty rather than wrong.
Input example
{
"make": "Toyota",
"model": "Hilux",
"province": "Gauteng",
"maxPriceZAR": 500000,
"maxResults": 100
}
| Field | What it does |
|---|---|
make |
Car make, for example Toyota, BMW, Volkswagen. Leave blank for all makes. |
model |
Car model, for example Hilux, Polo, 3 Series. Needs a make. |
province |
One of the nine provinces. Leave blank for the whole country. |
maxPriceZAR |
Highest price in Rand. Leave blank for no limit. |
maxResults |
Stop after this many listings (up to 10,000). Each results page holds 20. |
Output example
{
"listing_id": "11281617",
"title": "2022 Toyota Hilux 2.8 GD-6 Raider 4x4 Auto Double-Cab",
"price_zar": 579900,
"previous_price_zar": null,
"year": 2022,
"mileage_km": 58506,
"condition": "Used",
"make": "Toyota",
"model": "Hilux",
"variant": "2.8 GD-6 Raider 4x4 Auto Double-Cab",
"body_type": "Double Cab Bakkie",
"transmission": "Automatic",
"fuel_type": "Diesel",
"colour": "White",
"province": "Gauteng",
"city": "Johannesburg",
"seller_type": "Dealer",
"dealer_name": "WeBuyCars JHB South",
"url": "https://www.cars.co.za/for-sale/used/2022-Toyota-Hilux-2.8-GD-6-Raider-4x4-Auto-Double-Cab-Gauteng-Johannesburg/11281617/",
"image_url": "https://img-ik.cars.co.za/carsimages/tr:n-search_result400x300:f-auto/11281617.jpg",
"listing_date": null
}
previous_price_zar is filled when the seller has dropped the price. listing_date is not shown in search results and is always empty.
Pricing
You pay per listing returned, plus a tiny fee when the run starts. Platform usage is included.
Common uses
- Track used car prices for a make and model over time
- Build valuation or price-comparison data for the South African market
- Watch dealer stock and price drops
- Feed listings into a spreadsheet, CRM or alert flow
Limits
- Only what the public search results show. Seller phone numbers and full descriptions are not included.
- The search covers both new and used listings, as on the site.
- If the site changes its layout, the scraper falls back to reading the listing cards and keeps the same sanity checks.
Run it on Apify Apify's free plan includes monthly platform credit, so small runs cost little or nothing to try.