AutoTrader.ca Scraper - Cars, Prices & Dealer Leads avatar

AutoTrader.ca Scraper - Cars, Prices & Dealer Leads

Pricing

Pay per event

Go to Apify Store
AutoTrader.ca Scraper - Cars, Prices & Dealer Leads

AutoTrader.ca Scraper - Cars, Prices & Dealer Leads

Scrape AutoTrader.ca, Canada's #1 car marketplace. Get new & used vehicle listings, full specs, real prices, mileage, fuel, photos & VIN. Filter by make/model/price/year/province. Full car details + dealer B2B leads with phone, website & ratings. Price-drop & new-listing monitoring, no start fee.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Scrape Sage

Scrape Sage

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

AutoTrader.ca Scraper — Cars, Prices & Dealer Leads (New & Used, All Canada)

Extract complete vehicle data from AutoTrader.ca, Canada's #1 new & used car marketplace — real CA$ prices, market-price evaluation, mileage, full specs, accident & service history, VIN/stock numbers, and every photo. Then turn every selling dealer into a ready-to-contact B2B lead with phone, website, full address, Google rating, inventory size and a 0–100 lead score.

No login, no API key, no browser — fast JSON extraction with 99%+ reliability across all provinces.

Why this AutoTrader.ca scraper?

AutoTrader.ca's legacy search API is locked behind PerimeterX, so most scrapers return shallow cards or break. This actor reads the site's own server-rendered data island and ships the richest dataset in the category — every listing already carries the dealer's phone and full address, and the detail page adds market-price intelligence other scrapers never expose.

DataTypical scrapersThis actor
Real CA$ price + price-rating (great/good/fair)partial
Market median price + evaluation ranges
Mileage, year, fuel, transmission, drivetrainpartial
Full equipment, colours, doors/seats, fuel economy & CO₂
Accident history, service history, previous owners
VIN / stock number
All photos (full resolution)partial
Selling dealer phone + full address + geo✅ on every listing
Dealer website + Google rating
Dealer contact email (from their website)✅ opt-in
Dealer inventory size, makes carried & price range
Lead score (0–100) per dealer
New-listing & price-drop monitoring

Use cases

  • Dealer lead generation — car dealers are active B2B buyers (advertising, F&I, reconditioning, software, wholesale inventory). Score them by inventory size and Google rating, and reach them directly by phone, website or email.
  • Pricing & market intelligence — track real transaction-side asking prices, market median, and price-rating across makes, models, years and provinces; spot under- and over-priced inventory.
  • Inventory aggregation — feed car-shopping apps, comparison sites and dashboards with structured listings for any make/model anywhere in Canada (Toronto, Montreal, Vancouver, Calgary, Edmonton, Ottawa, Winnipeg…).
  • Price-drop & new-inventory alerts — schedule recurring runs and capture only listings that are new or whose price changed since last time.
  • Wholesale & remarketing — find specific vehicles (year/trim/mileage/accident-free) across every dealer in a province in one run.

How to use

  1. Sign up for Apify — the free plan is enough to try this actor.
  2. Open the AutoTrader.ca Scraper, enter a make/model (and optional province & filters) or paste AutoTrader.ca URLs, and click Start.
  3. Watch results stream into the dataset table.
  4. Export as JSON, CSV, Excel, XML, or RSS — or pull results programmatically via the Apify API.

Input

{
"mode": "search",
"make": "Honda",
"model": "Civic",
"province": "ontario",
"yearFrom": 2019,
"priceTo": 30000,
"condition": "used",
"sort": "age_newest",
"maxResults": 200,
"includeDetails": true,
"emitDealerLeads": true,
"enrichDealerEmails": true
}
  • modesearch (listings from a make/model/filter search), carDetail (full records for vehicle URLs you paste in startUrls), or dealerLeads (deduplicated dealer B2B profiles discovered from a search).
  • make / model — e.g. Honda / Civic, Ford / F-150, Tesla / Model 3. Leave empty to search all makes with the filters below.
  • province — limit to a single province/territory (ontario, quebec, british columbia, alberta…). Leave empty for all of Canada.
  • startUrls — paste AutoTrader.ca search pages (/lst/..., /cars/...) or vehicle pages (/offers/..., /a/...). Auto-routed by type.
  • priceFrom / priceTo / yearFrom / yearTo / mileageFrom / mileageTo / fuelTypes / transmission / bodyTypes / powerFromKw / powerToKw / condition / keyword — filters, all combined.
  • includeDetails (default false) — open each vehicle's detail page for the complete record (equipment, history, VIN/stock #, fuel economy, market-price evaluation, full description). Billed as a Car detail.
  • emitDealerLeads (default false) — also output one deduplicated dealer-lead record per unique dealer found.
  • enrichDealerEmails (default false) — crawl each dealer's own website (home + contact/about) for a public contact email. Only runs for dealers that publish a website.
  • monitorMode (default false) — emit only vehicles that are new or whose price changed since the last run (and only new dealers). Perfect for price-drop alerts; works with Apify Schedules.

Output

One record per vehicle (type: "car" for listings, type: "carDetail" for full records), plus optional dealer leads (type: "dealerLead").

{
"type": "carDetail",
"id": "69762749",
"stockNumber": "095826A",
"url": "https://www.autotrader.ca/offers/honda-ridgeline-...",
"make": "Honda",
"model": "Ridgeline",
"version": "Trail Sport Sunroof | Heated Seats | Apple CarPlay",
"modelYear": 2025,
"condition": "Used",
"price": { "amount": 44985, "currency": "CAD", "symbol": "$", "formatted": "$ 44,985" },
"priceEvaluation": 1,
"marketMedianPrice": 48600,
"priceEvaluationRanges": [{ "min": null, "max": 43900, "category": 0 }],
"mileageKm": 53521,
"driveTrain": "4x4",
"transmission": "Automatic",
"fuel": "Gasoline",
"bodyColor": "White",
"doors": 4,
"hadAccident": false,
"fullServiceHistory": true,
"previousOwners": 1,
"equipment": ["Leather seats", "Sunroof", "Heated seats", "Apple CarPlay"],
"description": "New Price! 2025 Honda Ridgeline Trail Sport…",
"location": { "countryCode": "CA", "province": "ON", "city": "VAUGHAN", "zip": "L6A4A1", "latitude": 43.83532, "longitude": -79.5349 },
"seller": {
"id": "47944360",
"companyName": "MAPLE HONDA",
"phone": "888-317-5576",
"website": "http://www.maplehonda.com",
"googleRating": 4.8
},
"imageCount": 28,
"scrapedAt": "2026-06-18T00:00:00.000Z"
}
{
"type": "dealerLead",
"id": "47944360",
"companyName": "MAPLE HONDA",
"phone": "888-317-5576",
"website": "http://www.maplehonda.com",
"email": "sales@maplehonda.com",
"address": { "street": "89 AUTO VAUGHAN DR", "city": "VAUGHAN", "province": "ON", "zip": "L6A4A1", "countryCode": "CA" },
"googleRating": 4.8,
"inventoryCount": 27,
"makesCarried": ["Honda"],
"priceRange": { "min": 9949, "max": 64985, "currency": "CAD" },
"leadScore": 88,
"scrapedAt": "2026-06-18T00:00:00.000Z"
}

Automate & schedule

Run this actor on autopilot and pull results into your own stack:

  • Apify API — start runs, fetch datasets, and manage schedules over REST.
  • apify-client for JavaScript and apify-client for Python — official SDKs.
  • Schedules — run it hourly/daily/weekly to monitor new inventory or price drops for a make/model/province; perfect for dealer-lead pipelines and pricing dashboards.
  • Webhooks — trigger downstream actions (CRM import, Slack alert, repricing job) the moment a run finishes.
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'MY_APIFY_TOKEN' });
const run = await client.actor('scrapesage/autotrader-ca-scraper').call({
make: 'Toyota',
model: 'RAV4',
province: 'ontario',
condition: 'used',
maxResults: 200,
includeDetails: true,
emitDealerLeads: true,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Got ${items.length} vehicles & dealer leads`);

Integrate with any app

Connect the dataset to 5,000+ apps — no code required:

  • Make — multi-step automation scenarios.
  • Zapier — push new dealer leads straight into your CRM.
  • Slack — get notified when a monitored search finds new inventory or a price drop.
  • Google Drive / Sheets — auto-export every run to a spreadsheet.
  • Airbyte — pipe results into your data warehouse.
  • GitHub — trigger runs from commits or releases.

Use with AI assistants (MCP)

The output is clean, LLM-ready JSON. You can call this actor from Claude, ChatGPT, or any agent framework through the Apify MCP server — ask your assistant to "find used Toyota RAV4s under $30k in Ontario and list the dealers' phone numbers" and let it run this scraper for you.

Agent-ready: autonomous payments (x402 & Skyfire)

This actor is agent-ready — AI agents can discover it, run it, and pay for it autonomously, with no Apify account and no human in the loop. It uses pay-per-event pricing and limited permissions, so it qualifies for Apify's agentic-payment standards:

  • x402 — an open, HTTP-native payment protocol. Agents pay per run in USDC on the Base network directly through the Apify MCP server — no account, no API key.
  • Skyfire — agent-to-service payments for fully autonomous AI-agent workflows.

Building an AI agent, MCP tool, or autonomous data pipeline? This scraper is ready to plug in and pay as it goes.

More scrapers from scrapesage

Build a complete automotive & marketplace data stack:

Tips

  • Big searches: AutoTrader.ca paginates the first ~2,000 results per search. To exhaust a popular make/model, split runs by province, price band or year range.
  • Recurring monitoring: combine Schedules with sort: "age_newest" and monitorMode to catch only fresh listings and price drops.
  • Dealer leads: turn on emitDealerLeads (and optionally enrichDealerEmails) to build a deduplicated dealer database — phone & address come from the listings, website & Google rating from the detail page, email from the dealer's own site.
  • Proxies: the default Apify datacenter proxy works well; switch to Residential (country = Canada) in the proxy input for extra resilience on very large runs.

FAQ

How do I scrape AutoTrader.ca for a specific province? Set province (e.g. ontario, british columbia) — or paste a province-filtered AutoTrader.ca /lst URL into startUrls. Combine with make/model and the price/year/mileage filters to narrow further.

Does it work without the AutoTrader.ca API? Yes. AutoTrader.ca's legacy search API is locked behind anti-bot protection — this actor extracts the same (and richer) data from the site's public server-rendered pages, no API key or login needed.

Can I get the VIN? The detail page exposes the dealer's stock number and a cross-reference identifier; the full equipment list, history flags and market-price evaluation are always included when includeDetails is on.

Can I export to Google Sheets, CSV, or Excel? Yes — one click in the dataset view, or automatically on every run via the Google Drive integration.

How do I monitor price drops automatically? Turn on monitorMode, create a Schedule (e.g. daily), and optionally add a webhook or Zapier zap. Only new or repriced listings are emitted each run.

Where do dealer emails come from? Never from AutoTrader.ca. With enrichDealerEmails on, the actor visits the dealer's own public website and extracts publicly listed contact emails — the same thing a human visitor would see.

Is scraping AutoTrader.ca legal? This actor collects publicly available data only. You are responsible for using the data in compliance with applicable laws (e.g. PIPEDA for personal data) and AutoTrader.ca's terms.

A field is null — why? Some listings genuinely don't publish every spec (power, seats and full equipment are sparser on some Canadian listings, where the detail lives in the description). Fields are null only when the data doesn't exist, not because the scraper skipped them.

Need help?

Open an issue on the actor's Issues tab, or visit the Apify help center. Feature requests are welcome — this actor is actively maintained.