AutoTrader.ca Scraper — Used Car Listings & Prices
Pricing
from $0.50 / 1,000 results
AutoTrader.ca Scraper — Used Car Listings & Prices
Scrape used and new car listings from AutoTrader.ca. Search by make, model, province or city, set price, year and mileage limits, and get price, mileage, trim, dealer, location and photos as structured data. Export to JSON, CSV or Excel, or use the API.
Pricing
from $0.50 / 1,000 results
Rating
0.0
(0)
Developer
Akhil rajesh
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Extract used and new car listings from AutoTrader.ca with prices, mileage, trim, dealer and location as clean, structured data. Search by make and model, narrow the search to a province or city, set price, year and mileage limits, and get up to thousands of vehicles in one run.
Try it now: keep the example input (Honda Civic in Toronto under $25,000) and press Start. You'll have up to 100 vehicles in under a minute.
What data can you extract from AutoTrader.ca?
One row per vehicle, with up to 38 fields:
| Group | Fields |
|---|---|
| Vehicle | title, year, make, model, modelGroup, trim, vehicleType, condition, description |
| Pricing | price, priceFormatted, priceRating, previousPrice, reducedPrice |
| Condition | mileageKm, mileageText, transmission, fuel, isDamaged |
| Location | city, province, postalCode, street, distanceKm |
| Seller | sellerType (Dealer/Private), sellerName, sellerId, sellerPhone |
| Media & availability | imageCount, images (up to 10 URLs), availableNow, availableFrom, isNewListing |
| Provenance | url, listingId, searchScope, source, scrapedAt |
Price, mileage, year and distance are numbers, and the site's original text is kept alongside, so you can filter and compare without parsing. priceRating is AutoTrader.ca's own price-evaluation code (such as 1, 2 or 3) when the site shows one.
Export the results as JSON, CSV, Excel or HTML, read them through the API, schedule regular runs to track prices over time, or connect the Actor to other tools with Apify integrations.
How to scrape AutoTrader.ca
- Enter a make and, optionally, a model (for example
HondaandCivic). - Narrow the area with a province (
ONorOntario) and/or a city (Toronto). Leave both empty to search all of Canada. - Optionally set a max price. Open Advanced filters for model year, minimum price and mileage limits.
- Press Start, then open the Output tab or export the dataset.
Run it from the API
curl -X POST "https://api.apify.com/v2/actors/akhil_rajesh~autotrader-canada-scraper/run-sync-get-dataset-items" \-H "Authorization: Bearer YOUR_API_TOKEN" \-H "Content-Type: application/json" \-d '{"make": "Toyota","model": "RAV4","province": "ON","city": "Toronto","maxPrice": 35000,"maxMileageKm": 120000,"maxResults": 200}'
This call waits for the run and returns the vehicles directly. It waits up to 5 minutes, so for very large runs start the run instead and read its dataset when it finishes.
Run it from Python
from apify_client import ApifyClient # pip install apify-clientclient = ApifyClient("YOUR_API_TOKEN")run = client.actor("akhil_rajesh/autotrader-canada-scraper").call(run_input={"make": "Honda","model": "Civic","province": "BC","maxPrice": 20000,"maxResults": 100,})for car in client.dataset(run.default_dataset_id).iterate_items():print(car["title"], car.get("trim"), car.get("price"), car.get("mileageKm"), car.get("sellerName"))
Fields without a value are left out of a row, so read optional fields with .get().
How much does it cost to scrape AutoTrader.ca?
This Actor uses pay-per-event pricing, and platform usage is included, so there's nothing else to pay. You pay for each vehicle returned, plus $0.001 each time a run starts (charged per GB of memory; the default is 1 GB). The price per vehicle depends on your Store discount tier, which comes with your Apify plan:
| Discount tier | Per 1,000 vehicles | Example run (100 vehicles) |
|---|---|---|
| Free | $1.00 | $0.101 |
| Bronze | $1.00 | $0.101 |
| Silver | $0.65 | $0.066 |
| Gold and above | $0.50 | $0.051 |
The example run fits comfortably in Apify's free monthly credits. To cap spending, set a maximum cost per run in the run options; the Actor stops cleanly when it reaches the limit.
Input
| Field | Type | Default | Description |
|---|---|---|---|
make | string | — | Vehicle make, e.g. Honda, Toyota. Leave empty for every make |
model | string | — | Model, e.g. Civic (used together with make) |
province | string | — | ON, BC, Alberta, … Leave empty to search all of Canada |
city | string | — | City name, e.g. Toronto. Works on its own, no province needed |
maxPrice | integer | — | Only vehicles at or below this price (CAD) |
maxResults | integer | 100 | Stop after this many vehicles (1–5,000) |
maxPages | integer | 5 | Result pages to walk per search area (up to 100 vehicles each). The Actor walks more pages when Max results needs them, up to 40 |
sort | enum | default | price_asc, price_desc, km_asc, km_desc, year_desc, posted_desc, distance, … |
widenSearch | boolean | true | Widen to the province and then all of Canada when your area has too few vehicles |
Sample output
A vehicle from the example search (dealer details replaced with placeholders):
{"listingId": "70000001","url": "https://www.autotrader.ca/offers/honda-civic-sport-...","title": "2020 Honda Civic","trim": "SPORT | Sunroof | Heated Seats | ACC | CarPlay","description": "Clean CarFax. 18-inch alloy wheels | Power moonroof | ...","make": "Honda","model": "Civic","modelGroup": "Civic","year": 2020,"vehicleType": "Car","condition": "Used","price": 19950,"priceFormatted": "$ 19,950","priceRating": "1","previousPrice": 20450,"reducedPrice": true,"mileageKm": 97000,"mileageText": "97,000 km","transmission": "Automatic","fuel": "Gasoline","isDamaged": false,"city": "TORONTO","province": "ON","postalCode": "M3J0A1","street": "100 EXAMPLE AVE","distanceKm": 9,"sellerType": "Dealer","sellerName": "Example Motors","sellerId": "10000001","sellerPhone": "416-555-0142","imageCount": 35,"images": ["https://prod.pictures.autoscout24.net/listing-images/..."],"availableNow": true,"isNewListing": false,"source": "autotrader.ca","scrapedAt": "2026-09-16T15:25:49.589894+00:00"}
How the search area works
The Actor first walks the result pages for your city or province. If there are fewer vehicles than Max results, it widens the search, city → province → all of Canada, instead of handing back a short list. Widened rows say how far the search reached in searchScope (for example across ON), so nothing is hidden. Rows from your requested area leave it empty.
Turn off Widen search if you want strictly local results.
Use cases
- Car shopping research: find every listing that matches your budget and mileage limits
- Price benchmarking: track asking prices by make, model, year and region
- Dealer and market analysis: inventory volume and price spread by city or brand
- Lead generation: build lists of dealers by city or brand
- Price-drop monitoring:
previousPriceandreducedPriceflag discounted vehicles
FAQ
Is it legal to scrape AutoTrader.ca?
This Actor reads only publicly available listings. Listings can still contain personal data, such as a private seller's name or phone number, which privacy laws (for example Canada's PIPEDA) protect. Use such data only for a legitimate purpose, and ask a lawyer if you're unsure.
Why do I get vehicles from outside my city?
Your area had fewer vehicles than Max results, so the search widened. Check searchScope on those rows, lower Max results, or turn off Widen search.
What happens if I misspell a make, model or city?
- Make or model: the run ends with the message "No vehicles matched … Check the make and model spelling" and returns no rows.
- City: AutoTrader.ca ignores a city it doesn't recognise, so the Actor moves on to the province (or all of Canada) and marks those rows in
searchScope. With Widen search off, the run ends with a message naming the city.
Why is a car listed at $1?
Some dealers publish a placeholder price, such as $1, to mean "call for price". Prices are reported exactly as published, so set a Min price if these get in the way.
Other Actors by this developer
- Canadian Job Market Scraper — Job Bank: Canadian job postings with salary, employer, location and NOC code
- Price Scraper for Bot-Protected Stores: live price comparison across major Canadian retailers
Data source
All data comes from AutoTrader.ca, a public vehicle marketplace. This Actor reads publicly available listings only and stores nothing beyond the dataset you request.
Disclaimer: This is an independent tool. It is not affiliated with, endorsed by, or sponsored by AutoTrader.ca, Trader Corporation or any related entity. All product and company names are the property of their respective owners.
Limitations
- AutoTrader.ca only: vehicles listed exclusively elsewhere aren't included
- Placeholder prices exist: see the FAQ above
- Year, mileage and minimum-price filters are applied after fetching, so a page may yield fewer rows than it lists
- Damage history is limited to the flag the site publishes; this is not a vehicle history report
- Dealer street addresses are only present when the seller publishes them
- Listings change constantly: a vehicle can sell between runs