GoodCarBadCar Sales Scraper
Pricing
from $3.00 / 1,000 results
GoodCarBadCar Sales Scraper
Scrape U.S. and Canada automotive sales figures from GoodCarBadCar.net - sales by brand, by model, by manufacturer, by vehicle segment (SUV, truck, car), and total industry sales by year. No login, no API key, no paid proxy required.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
Crawler Bros
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a month ago
Last modified
Categories
Share
Scrape U.S., Canada, and global automotive sales figures from GoodCarBadCar.net — sales rankings by brand, by model, by manufacturer, by vehicle segment (compact car, SUV, pickup truck, etc.), and total industry sales by year for major world markets. No login, no API key, no paid proxy required.
What this actor does
- Two modes:
byReport(default) — 22 report types: brand rankings, model rankings, manufacturer rankings, 9 vehicle-segment rankings (compact car, midsize car, small car, small/midsize/large SUV, all SUVs, pickup truck, commercial van, sports car), and yearly industry totals for the US, Canada, China, Japan, Brazil, Asia (regional), Europe (regional), Africa (by country), and Australia/Oceania (by country). Each row includes current-period sales, same-period-last-year sales, % change, and year-to-date figures where available.byModelUrl— full year-by-year (and month-by-month) sales history for one or more specific vehicle model pages, across every market GoodCarBadCar tracks for that model (typically United States + Canada).
- Empty fields are omitted
Output fields
byReport mode:
recordType—"salesFigure"report— the report type requestedentity— brand / model / year label for the rowsales,salesLastYear,changePercent— current-period figuresytdSales,ytdSalesLastYear,ytdChangePercent— year-to-date figures (segment/brand/model reports only)rank— row position in the reportsourceUrl— the report page scraped
byModelUrl mode:
recordType—"modelSales"model— the vehicle model name (e.g. "Toyota 4Runner")market— the sales market this row covers (e.g. "United States", "Canada")period— the year (or partial year, e.g. "2026(Jan–Jun)" for the current in-progress year)sales— total units sold that year in that marketyoyChangePercent— year-over-year % change (omitted for a series' first year, which has no prior-year comparison)monthlySales— object of the same year's month-by-month unit counts, keyedjan–dec(only months with published data are included)sourceUrl— the model page scraped
Input options
| Field | Description |
|---|---|
mode | byReport (rankings/totals) or byModelUrl (full history for a specific vehicle) |
report | Which report to scrape (byReport mode; see enum: us-by-brand, us-by-model, us-by-manufacturer, us-compact-car, us-midsize-car, us-small-car, us-small-suv, us-midsize-suv, us-large-suv, us-suv, us-pickup-truck, us-commercial-van, us-misc-sports-car, us-yearly-totals, canada-yearly-totals, china-yearly-totals, japan-yearly-totals, brazil-yearly-totals, asia-yearly-totals, europe-yearly-totals, africa-yearly-totals, australia-oceania-yearly-totals) |
modelUrls | Full GoodCarBadCar.net model page URLs, e.g. https://www.goodcarbadcar.net/toyota-4runner-sales-figures/ (byModelUrl mode). Find these by browsing a brand's page (e.g. /brands/toyota-sales-data-reports/) |
maxItems | Max rows to return |
proxyConfiguration | Optional Apify proxy (free AUTO datacenter group used only if needed) |
Example: rankings report
{"mode": "byReport","report": "us-by-brand","maxItems": 100}
Example: full model history
{"mode": "byModelUrl","modelUrls": ["https://www.goodcarbadcar.net/toyota-4runner-sales-figures/"],"maxItems": 200}
Use cases
- Automotive market research — track brand/model sales trends over time and across markets
- Investor & analyst research — monitor automaker performance ahead of earnings
- Journalism — source up-to-date sales rankings and YoY comparisons for reporting
- Dealer/OEM competitive intelligence — benchmark segment performance against competitors
- Data science & forecasting — build historical sales datasets for demand modeling
FAQ
How current is the data? GoodCarBadCar updates its rankings monthly as automakers report sales; this actor always scrapes the live page, so results reflect the latest published figures.
Why do some rows lack ytdSales? The yearly-totals reports (us-yearly-totals, canada-yearly-totals, china-yearly-totals, japan-yearly-totals, brazil-yearly-totals, asia-yearly-totals, europe-yearly-totals, africa-yearly-totals, australia-oceania-yearly-totals) show full-year history and don't have a year-to-date column — only the segment/brand/model reports do.
Why do africa-yearly-totals and australia-oceania-yearly-totals use entity for a country instead of a brand/model? Those two source pages report sales per-country per-year (not per-brand), so each record is one country's total for one year — entity holds the country name and period holds the year.
How do I find a modelUrls value? Browse goodcarbadcar.net/brands/<brand>-sales-data-reports/ and copy the link for the specific model you want (e.g. "Toyota 4Runner Sales Figures").
Why does byModelUrl return more history than byReport? The report tables show a current-month snapshot + year-to-date total; individual model pages carry that model's complete published year-by-year (and month-by-month) sales history, often going back 15-20+ years.
Do I need a GoodCarBadCar membership? No — the pages this actor scrapes are publicly available without a paid membership.