CarGurus Scraper [Only $1💰] | IMV | Deals | Leads
Pricing
from $0.95 / 1,000 results
CarGurus Scraper [Only $1💰] | IMV | Deals | Leads
Scrape CarGurus vehicle listings with Instant Market Value, deal ratings, VIN, and dealer data. Find underpriced used cars, monitor inventory, and build pricing databases. $0.001 per listing.
Pricing
from $0.95 / 1,000 results
Rating
0.0
(0)
Developer
Ahmed Jasarevic
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
CarGurus Scraper
Scrape CarGurus vehicle listings with CarGurus IMV, deal ratings, and dealer data - extract price, Instant Market Value, mileage, VIN, days-on-market, and dealer contact info for used-car pricing intelligence, inventory monitoring, and dealer lead generation. Only $0.001 per listing.
What You Can Do With CarGurus Data
- Spot underpriced inventory - filter by Great/Good Deal ratings to find cars priced below CarGurus Instant Market Value
- Used-car price monitoring - track asking price, IMV, and days-on-market across ZIP codes and models
- Dealer inventory intelligence - monitor competitor stock, pricing, and listing velocity
- Wholesale and flip sourcing - identify vehicles with the largest price-to-IMV gap for arbitrage
- Automotive market research - build structured datasets of US used-car pricing trends by make, model, and region
- Dealer lead generation - collect dealer names, cities, states, and listing URLs for B2B outreach
How This Actor Works
CarGurus uses a React/Remix server-rendered search page that embeds the full structured result set as JSON inside the HTML (window.__remixContext). This Actor reads that embedded JSON directly with a Cheerio parser - no browser rendering, no brittle DOM scraping, no per-listing detail-page requests.
CarGurus is protected by DataDome, which fingerprints the TLS/JA3 and HTTP/2 stack of the HTTP client. To bypass this, the Actor uses TLS impersonation via libcurl-impersonate - every request carries a real Chrome TLS fingerprint instead of Node's default stack. Combined with residential proxy rotation and a session pool that retires sessions on bot challenges, this keeps runs reliable at scale.
You provide either CarGurus search URLs (most precise) or a ZIP code plus optional make/model/radius/condition filters, and the Actor returns matching vehicles as clean JSON records with pagination handled automatically.
Find Underpriced Used Cars by IMV and Deal Rating
Every listing includes CarGurus' proprietary pricing intelligence:
- Instant Market Value (IMV) - CarGurus' estimate of fair market price
- Deal Rating - Great Deal / Good Deal / Fair Deal / Overpriced
- Deal Score - numerical score underlying the rating
- Price Differential - dollar amount above or below IMV
Use these fields to instantly identify vehicles priced below market - the exact signal used by professional car flippers and wholesale dealers.
Build Used-Car Databases Without Official API Access
CarGurus does not offer a public API for listing data. This Actor extracts the same structured data that powers the CarGurus search UI - VIN, make, model, year, trim, mileage, price, dealer info, and photos - into a clean JSON dataset you can load into spreadsheets, databases, or analytics pipelines.
Input Parameters
| Field | Type | Required | Default | Notes |
|---|---|---|---|---|
startUrls | array | No | - | CarGurus search-result URLs. Paste URLs from cargurus.com after setting filters. If left empty, builds a search from the fields below. |
zip | string | No | 90210 | US ZIP code. Used only when no search URLs are provided. |
makeModelTrimPaths | string | No | - | CarGurus make/model filter (e.g. m7/d292 = Toyota Camry). Get it from the makeModelTrimPaths parameter in a CarGurus /search URL. |
distance | integer | No | 50 | Search radius in miles from the ZIP code. |
condition | string | No | used | Vehicle condition: used, new, or certified. |
sortType | string | No | DEAL_SCORE | Sort order: DEAL_SCORE, BEST_MATCH, PRICE, MILEAGE, YEAR, DISTANCE, LISTING_DATE. |
fingerprint | string | No | chrome124 | Browser TLS fingerprint for DataDome bypass: chrome99, chrome110, chrome120, chrome124, chrome131. |
maxItems | integer | No | 20 | Maximum number of vehicle listings to scrape. |
maxPagesPerUrl | integer | No | 0 | Maximum result pages per search URL. 0 = all pages until exhausted. |
proxyConfiguration | object | No | Residential | Proxy settings. Residential proxy group is required for reliable results. |
Output Fields
Each record in the dataset contains:
| Field | Description |
|---|---|
year | Model year |
make | Vehicle manufacturer |
model | Vehicle model |
trim | Trim level |
price | Asking price (USD) |
imv | CarGurus Instant Market Value (USD) |
dealRating | Great Deal / Good Deal / Fair Deal / Overpriced |
dealScore | Numerical deal score |
priceDifference | Dollar amount above/below IMV |
mileage | Odometer reading (miles) |
vin | Vehicle Identification Number |
daysOnMarket | Days since listing was posted |
condition | Used / New / Certified Pre-Owned |
bodyType | Sedan, SUV, Truck, etc. |
sellerCity | Dealer city |
sellerRegion | Dealer state |
dealerName | Dealership name |
url | Listing URL on CarGurus |
photos | Array of photo URLs |
searchPage | Page number in search results |
totalSearchResults | Total matching listings |
Example Input
{"startUrls": [{"url": "https://www.cargurus.com/search?zip=90210&sortType=DEAL_SCORE&sortDirection=ASC&makeModelTrimPaths=m7/d292&distance=50"}],"maxItems": 100,"condition": "used","fingerprint": "chrome124"}
Alternative - search by ZIP without a URL:
{"zip": "90210","makeModelTrimPaths": "m7/d292","distance": 50,"condition": "used","maxItems": 100,"sortType": "DEAL_SCORE"}
Example Output
{"year": 2021,"make": "Toyota","model": "Camry","trim": "SE FWD","price": 22500,"imv": 24100,"dealRating": "GREAT_PRICE","dealScore": 4.2,"priceDifference": -1600,"mileage": 31200,"vin": "4T1G11AK5MU123456","daysOnMarket": 12,"condition": "Used","bodyType": "Sedan","sellerCity": "Los Angeles","sellerRegion": "CA","dealerName": "Toyota of Hollywood","url": "https://www.cargurus.com/Cars/inventorylisting/viewDetailsFilterViewInventoryListing.action?listingId=450352573","photos": ["https://static.cargurus.com/images/forsale/2026/06/01/00/00/2021_toyota_camry-pic-999-1024x768.jpeg"],"searchPage": 1,"totalSearchResults": 342}
Schedule Daily Runs for Used-Car Price Monitoring
Connect this Actor to Apify Schedules to run daily or weekly monitoring. Compare datasets across runs to track:
- Price drops and new listings
- Changes in IMV over time
- Days-on-market trends by model
- Regional pricing differences across ZIP codes
This is especially useful for wholesalers tracking specific models across multiple markets.
Export to Google Sheets, CRM, or Analytics Pipeline
Pull results via the Apify API and pipe into your existing tools:
- Google Sheets - export as CSV or use the Apify Google Sheets integration
- CRM / DMS - load dealer names, locations, and listing URLs as leads
- BI dashboards - feed price, IMV, and deal-rating data into Tableau, Power BI, or Metabase
- Webhooks - trigger alerts when new Great Deal listings appear
- Zapier / Make - connect to thousands of apps without code
Related Actors
- Cars.com Vehicle Listings Scraper - compare inventory from the other major US car marketplace
- AutoTrader UK Car Listings Scraper - scrape UK AutoTrader for cross-market analysis
- CarGurus Vehicle Listings Scraper (automation-lab) - alternative CarGurus scraper with tiered pricing and deduplication
- Used Car Scraper for CarGurus (scrapesage) - CarGurus scraper with dealer leads and monitor mode
- Cargurus.com Scraper (lexis-solutions) - multi-country CarGurus scraper (US, CA, UK)
Frequently Asked Questions
Why use this Actor instead of the CarGurus API?
CarGurus offers a limited developer API focused on dealer integrations, not bulk listing data extraction. There is no public API endpoint that returns search-result listings with IMV, deal ratings, and pricing data. This Actor extracts the same structured data that powers the CarGurus search UI - including Instant Market Value and deal ratings - without requiring API keys or dealer partnerships.
What are alternatives to scraping CarGurus for used-car data?
Alternatives include KBB (Kelley Blue Book), Edmunds, NADA/J.D. Power, and Cars.com. However, CarGurus is unique in exposing its Instant Market Value and deal rating system on every listing - signals that KBB and Edmunds do not provide at the individual-listing level. For pricing intelligence that includes a "is this car underpriced?" signal, CarGurus data is the most actionable source.
How accurate is the CarGurus Instant Market Value?
CarGurus IMV is computed from recent transaction data and current market conditions. It updates regularly and is widely used by dealers and flippers as a benchmark. This Actor extracts the exact IMV value shown on the CarGurus listing page - no estimation or transformation is applied.
Can I scrape CarGurus without a residential proxy?
No. CarGurus uses DataDome anti-bot protection that fingerprints the TLS/HTTP2 stack of the HTTP client. Datacenter IPs are blocked even with correct headers. This Actor requires the Apify RESIDENTIAL proxy group for reliable results - it's included in the default proxy configuration.
Can I search by make and model without pasting a URL?
Yes. Leave startUrls empty and set zip, makeModelTrimPaths, distance, and condition. The makeModelTrimPaths value can be obtained by building a filtered search on cargurus.com and copying the parameter from the URL.
What deal ratings does CarGurus use?
CarGurus rates every listing as Great Deal, Good Deal, Fair Deal, High Price, or Overpriced based on how the asking price compares to the Instant Market Value and local market conditions. The Actor captures both the rating label and the numerical deal score.
Does this Actor work for CarGurus Canada or UK?
This version is optimized for cargurus.com (US). For UK listings, see the lexis-solutions CarGurus scraper which supports US, CA, and UK domains.
SEO Keywords
cargurus scraper, cargurus data, cargurus API alternative, cargurus instant market value, IMV data extraction, used car price monitoring, car deal rating scraper, used car market data, dealer inventory monitoring, car listing scraper, cargurus search scraping, used car pricing intelligence, wholesale car sourcing, car price arbitrage, automotive market research, cargurus VIN data, car inventory database, used car deals finder, dealer lead generation automotive, cargurus vs KBB, car market value API, price differential scraping, days on market tracking, carGurus deal score, used car market analysis
For AI Agents & LLM Apps
Purpose: Extract structured vehicle listing data from CarGurus US search results, including CarGurus Instant Market Value (IMV), deal ratings, pricing, VIN, mileage, and dealer information.
Minimal working input:
{"startUrls": [{"url": "https://www.cargurus.com/search?zip=90210&sortType=DEAL_SCORE&makeModelTrimPaths=m7/d292"}],"maxItems": 20}
Output fields: year, make, model, trim, price, imv, dealRating, dealScore, priceDifference, mileage, vin, daysOnMarket, condition, bodyType, sellerCity, sellerRegion, dealerName, url, photos, searchPage, totalSearchResults
Behaviors an agent should know:
startUrlstakes priority overzip/makeModelTrimPaths- if both are set, only the URLs are usedmaxItemsdefaults to 20; set higher for bulk extractionmaxPagesPerUrldefaults to 0 (all pages) - this can result in thousands of results; set a limit if cost-sensitivefingerprintdefaults tochrome124; rotate tochrome131if a run gets blocked with HTTP 406- Residential proxy is required - the default
proxyConfigurationhandles this automatically - Each result costs $0.00095 (pay-per-event); budget accordingly for large runs
Billing: Pay-per-event - $0.0005 per Actor start + $0.00095 per listing result.
Legal & Compliance Disclaimer
This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by CarGurus, Inc. or any of its subsidiaries. "CarGurus", "Instant Market Value", "IMV", and "Deal Rating" are trademarks of CarGurus, Inc. and are used here only in a descriptive, nominative sense - to identify the publicly accessible website from which this Actor collects data.
This Actor accesses only publicly available search-result pages on cargurus.com. It does not log in, bypass access controls, or solve CAPTCHAs. It uses TLS fingerprint impersonation and residential proxies to access publicly accessible pages that block automated HTTP clients - it does not access any non-public data.
Users are responsible for ensuring their use of scraped data complies with CarGurus' Terms of Service and applicable data-protection laws (including GDPR and CCPA where relevant). This data is intended for market research and pricing intelligence; it should not be used for consumer reporting purposes covered by the Fair Credit Reporting Act (FCRA).