Autotrader UK Scraper
Pricing
from $0.35 / 1,000 vehicle listing saveds
Autotrader UK Scraper
Extract structured UK car listings from Autotrader search URLs. Collect prices, mileage, specs, images, running costs, vehicle history, dealer profiles, reviews, other stock, delivery and finance data. Fast feed summaries or full vehicle profiles.
Pricing
from $0.35 / 1,000 vehicle listing saveds
Rating
0.0
(0)
Developer
Coder
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Collect structured car listing data from Autotrader UK using your own search URLs. Paste the same links you use on the website — make, model, filters, and buyer postcode — and receive clean JSON records in your Apify dataset.
Use it for market research, price monitoring, inventory tracking, lead generation, and automotive data pipelines — without building and maintaining your own scraper.
What you get
| Mode | Input setting | Best for |
|---|---|---|
| Search summary (default) | fetchDetails: false | Fast scans: title, price, mileage, location, images, and key feed fields from search results |
| Full vehicle profile | fetchDetails: true | Complete listing data: specifications, features, images, description, running costs, history, and highlights |
| Optional enrichments | Toggles under enrichments (require full details) | Dealer profile, reviews, other stock, delivery options, and finance quotes |
Each saved vehicle is one dataset row with recordType: "listing". When dealer enrichments are enabled without attach mode, dealer data can also appear as separate recordType: "seller" rows (see Dealer output modes).
Quick start on Apify
- Open the Actor in the Apify Console.
- Under Search URLs, add one or more Autotrader UK car-search URLs. Each URL must include a postcode (for example
postcode=EC1A1BB) — this is the buyer location used for distance, delivery, and search context. - Set Maximum listings per search URL (default
10). - Turn on Full vehicle details when you need specifications, images, and description — not only search-card summaries.
- Enable optional enrichments (dealer, delivery, finance) only if you need them.
- Click Start and open the Dataset tab when the run finishes. Use the Preview view for key columns or All fields for the complete JSON.
How to get a search URL: Run a search on autotrader.co.uk (set make, model, filters, and your postcode), then copy the URL from your browser address bar.
Example input (full profile with enrichments):
{"startUrls": [{"url": "https://www.autotrader.co.uk/car-search?channel=cars&make=Abarth&model=595&postcode=EC1A1BB"}],"maxListings": 10,"fetchDetails": true,"fetchSellerProfile": true,"fetchSellerReviews": true,"maxReviewsPerSeller": 5,"fetchSellerOtherListings": true,"maxOtherListingsPerSeller": 5,"attachSellerToListings": true,"fetchDeliveryOptions": true,"fetchFinanceQuotes": true,"financeDeposit": 1000,"financeTermMonths": 48,"financeAnnualMileage": 10000}
Example input (fast search summary only):
{"startUrls": [{"url": "https://www.autotrader.co.uk/car-search?channel=cars&make=Abarth&model=595&postcode=EC1A1BB"}],"maxListings": 50,"fetchDetails": false}
Input parameters
Search URLs (required)
| Type | List of URLs |
| Format | Autotrader UK car-search pages (autotrader.co.uk/car-search?...) |
| Required query | postcode — buyer location (e.g. postcode=EC1A1BB or postcode=SW1A1AA) |
| Tip | Copy the URL directly from your browser after configuring filters on the site |
Invalid URLs (wrong domain or missing postcode) are skipped with a warning; other URLs in the same run can still succeed.
Maximum listings per search URL
| Type | Integer |
| Range | 1 – 100,000 |
| Default | 10 |
Controls how many listings are collected per search URL. With multiple URLs, total results can be up to this value multiplied by the number of URLs.
Duplicates are removed within each URL. The same vehicle may appear more than once if it is returned by multiple search URLs.
Full vehicle details (fetchDetails)
| Type | Boolean |
| Default | false |
Off — Saves summary fields from search results (price, mileage, title, images, location, etc.). Fastest and lowest cost per vehicle.
On — Fetches the full vehicle page for each listing: specifications, grouped features, description, running costs, vehicle history, highlights, and full image gallery.
All enrichment options below require Full vehicle details to be enabled.
Enrichments
Optional extras are grouped under Enrichments ($) in the input form. Enable only what you need — each adds data and may add billable events (see Pricing).
Dealer profile (fetchSellerProfile)
Dealer name, distance from the search postcode, and review summary (total reviews, average rating, star breakdown). Private sellers are skipped automatically — only trade/dealer listings are enriched.
Requires Dealer profile to be on before reviews or other listings can be enabled.
Dealer reviews (fetchSellerReviews)
Individual review text, rating, reviewer name, source, and dates. Use Maximum reviews per dealer to cap how many reviews are collected per dealer (default 10).
Dealer other listings (fetchSellerOtherListings)
Summary cards for other vehicles currently listed by the same dealer (title, price, mileage, images, etc.). Use Maximum other listings per dealer to set the cap (default 10).
Attach dealer data to each listing (attachSellerToListings)
| Setting | Output shape |
|---|---|
| On (default for small runs) | sellerProfile, sellerReviews, and sellerOtherListings are embedded on every listing from that dealer |
| Off (recommended for large runs) | Dealer data is written once per dealer as separate recordType: "seller" rows — join listings to sellers on dealerId + postcode |
When attach is off, the run log explains that two record types are present.
Delivery and collection (fetchDeliveryOptions)
Home delivery, click-and-collect, and collection details for the buyer postcode on each listing.
Finance quotes (fetchFinanceQuotes)
Finance calculator output where available. Configure the quote with:
| Field | Default | Description |
|---|---|---|
financeDeposit | 1000 | Deposit in GBP |
financeTermMonths | 48 | Loan term in months |
financeAnnualMileage | 10000 | Annual mileage for the quote |
What you will see during a run
The run log is written for end users — progress messages describe search and save activity. You do not need technical logs to use the Actor.
Typical messages:
Starting scrape of N search URL(s), up to M listing(s) per URL.Enrichments enabled: delivery, finance, dealer.(when applicable)Feed-only mode: summary fields from search results.(when full details are off)Finished. Saved N listing(s) and M dealer profile(s).
If a search URL cannot be processed or a single listing fails, you will see a warning for that item; other URLs and listings in the same run can still succeed.
Output overview
Dataset structure
- Results are saved to a single Apify dataset
- In the Console Output tab, use Preview for key columns or All fields for every JSON property
- Each row is a JSON object with a
recordTypefield:listing— vehicle data (always present for saved cars)seller— dealer profile, reviews, and other stock (only when dealer enrichments are on and attach mode is off)
Field presence varies by listing: not every car has finance quotes, delivery to your postcode, or a full service history. Empty arrays ([]) or null mean no data was available — not necessarily an error.
If optional enrichment could not be retrieved for a listing, enrichmentErrors may list user-safe labels (for example finance quotes unavailable).
Search summary output (fetchDetails: false)
When full details are off, each listing includes core fields from the search feed:
| Field | Description |
|---|---|
advertId | Autotrader advert identifier |
title, subtitle | Vehicle title and trim line |
price, priceAmount | Display price and numeric GBP amount |
mileage, registration | Odometer and registration plate text |
make, model, year, condition | Vehicle identity |
vehicleLocation | Town and distance from search postcode |
sellerType, dealerId | TRADE or private; dealer ID for trade sellers |
postcode, searchUrl, sourceUrl | Buyer postcode, your input URL, and listing link |
primaryImage, images, imageCount | Photo URLs |
dealerReviewRating, priceIndicator, stockLabel | Feed-level signals when shown on the site |
hasDigitalRetailing | Whether digital purchase flow is indicated |
recordType | Always "listing" |
Full vehicle profile (fetchDetails: true)
Adds detailed sections on top of the summary fields, including:
| Section | Contents |
|---|---|
description | Seller-written vehicle description (array of paragraphs) |
specifications | Key specs map (fuel, gearbox, doors, seats, etc.) |
specGroups | Grouped performance and dimension specifications |
features | Equipment list by category (Audio, Safety, Exterior, …) |
runningCosts | CO₂, insurance group, tax, MPG |
vehicleHistory | Owners, service history, basic history items |
vehicleHighlights | Autotrader highlights (e.g. low mileage, strong acceleration) |
mileageComparison | How mileage compares to similar vehicles |
deliveryAndCollection | Location and delivery summary from the detail page |
sellerContact | Seller name, email, phone, website, address, opening hours, and chat/text options (when shown on the listing page) |
Seller contact (sellerContact)
Included on every listing when Full vehicle details is enabled. Data comes from the vehicle detail page — trade dealers and private sellers use the same structure.
| Field | Description |
|---|---|
name | Dealer or seller name |
sellerType | TRADE or PRIVATE |
dealerId | Dealer ID for trade sellers |
email | Public email when listed; omitted when Autotrader hides it |
emailProtected | true when the seller’s email is not shown publicly |
primaryPhone | Main contact phone number |
additionalPhones | Extra phone lines when provided |
assignedTextNumber | Autotrader text/chat routing number when enabled |
website | Dealer website URL |
address | line1, town, county, postcode |
coordinates | latitude, longitude |
distance | Distance from your search postcode |
openingHours | Dealer opening times when available |
logo, description | Dealer branding from the listing page |
reviewRating, reviewCount | On-page review summary |
phoneProtectedText | Privacy notice when the number is masked |
chatEnabled, textEnabled | Whether chat/text contact is offered |
Example — trade dealer:
{"sellerContact": {"name": "FS Performance Limited","sellerType": "TRADE","dealerId": "10003326","email": "fsperformanceltd@gmail.com","primaryPhone": "(01582) 955569","additionalPhones": ["(07537) 164540"],"assignedTextNumber": "+447418363724","website": "https://www.fsperformance.co.uk?utm_source=autotrader&utm_medium=referral","address": {"line1": "110A TODDINGTON ROAD","town": "LUTON","county": "BEDFORDSHIRE","postcode": "LU4 9DY"},"coordinates": { "latitude": 51.910917, "longitude": -0.4720183 },"distance": "31 miles","reviewRating": 5.0,"reviewCount": 885}}
Example — private seller (email hidden):
{"sellerContact": {"sellerType": "PRIVATE","emailProtected": true,"primaryPhone": "(020) 81286557","address": { "town": "CARSHALTON" },"distance": "11 miles","phoneProtectedText": "Seller's number has been protected."}}
Note: Phone numbers may be Autotrader-protected routing numbers, not direct lines. Private sellers often do not publish an email (
emailProtected: true). Contact fields depend on what the seller chooses to display on Autotrader.
Example: Abarth 595 listing (excerpt)
Input:
{"startUrls": [{"url": "https://www.autotrader.co.uk/car-search?channel=cars&make=Abarth&model=595&postcode=EC1A1BB"}],"maxListings": 1,"fetchDetails": true}
Excerpt — core listing fields:
{"advertId": "202606063060313","recordType": "listing","title": "Abarth 595","subtitle": "1.4 T-Jet Turismo Auto Euro 6 3dr","price": "£8,200","priceAmount": 8200,"priceIndicator": "Lower price","mileage": "30,000 miles","registration": "2014 (64 reg)","make": "Abarth","model": "595","year": 2014,"condition": "used","vehicleLocation": "Milton Keynes (42 miles)","sellerType": "TRADE","dealerId": "10024295","postcode": "EC1A1BB","stockLabel": "Available to reserve","priceDeviation": "£773 below market average","hasDigitalRetailing": true,"dealerReviewRating": 4.4,"sourceUrl": "https://www.autotrader.co.uk/car-details/202606063060313?channel=cars&postcode=EC1A1BB&sort=relevance","searchUrl": "https://www.autotrader.co.uk/car-search?channel=cars&make=Abarth&model=595&postcode=EC1A1BB","primaryImage": "https://m.atcdn.co.uk/a/media/{resize}/8cd330225cb34ed1a044a4d68b8746f0.jpg","imageCount": 59}
Excerpt — specifications and description:
{"description": ["This 2014 Abarth 595 T Jet Turismo boasts exceptionally low mileage for its age, having covered just 30,000 miles..."],"specifications": {"Mileage": "30,000 miles","Registration": "2014 (64 reg)","Fuel type": "Petrol","Body type": "Hatchback","Engine": "1.4L","Gearbox": "Automatic","Doors": "3","Seats": "4","Emission class": "Euro 6"},"specGroups": [{"category": "Performance","items": [{ "name": "0-62mph", "value": "7.6 seconds" },{ "name": "Top speed", "value": "129mph" },{ "name": "Engine power", "value": "160BHP" },{ "name": "Miles per gallon", "value": "43.5mpg" }]}]}
Excerpt — running costs and highlights:
{"runningCosts": {"title": "Running Costs","items": [{ "label": "CO₂ emissions", "value": "151g/km" },{ "label": "Insurance group", "value": "28U" },{ "label": "Tax per year", "value": "£275" },{ "label": "Average", "value": "43.5mpg" }]},"vehicleHighlights": [{"title": "Lower mileage","badge": "Lowest 25%","description": "31,079 miles below average"},{"title": "Faster acceleration","badge": "Top 25%","description": "0-62mph in 7.6 seconds"}]}
Dealer enrichments (attached to listings)
When dealer options are enabled and Attach dealer data to each listing is on, listing rows include nested dealer sections.
Dealer profile (sellerProfile)
{"sellerProfile": {"dealerId": "10024295","postcode": "EC1A1BB","name": "Indus Motors Ltd","distanceMiles": 42,"reviewSummary": {"totalReviews": 95,"averageRating": 4.4,"sourceSummaries": [{"source": "AUTOTRADER","totalLiveReviews": 8},{"source": "FEEFO_PARTNERSHIP","averageLiveReviewRating": 4.4,"totalLiveReviews": 87}],"starSummaries": [{ "starRating": 5, "totalReviews": 86 },{ "starRating": 1, "totalReviews": 7 }]}}}
Dealer reviews (sellerReviews)
{"sellerReviews": {"dealerId": "10024295","name": "Indus Motors Ltd","totalReviews": 95,"averageRating": 4.4,"reviews": [{"title": "⭐⭐⭐⭐⭐ Exceptional Experience from Start to Finish!","text": "I recently bought my second car from this dealership...","reviewerName": "Anonymous","overallRating": 5,"source": "FEEFO_PARTNERSHIP","created": "2026-05-23T12:08:06.101Z"}]}}
Dealer other listings (sellerOtherListings)
Summary cards for additional stock from the same dealer (not full detail pages):
{"sellerOtherListings": [{"advertId": "202605282777875","title": "Volvo C30","subtitle": "2.0 R-Design Sports Coupe Euro 5 3dr","price": "£4,000","priceAmount": 4000,"mileage": "75,000 miles","registration": "2012 (62 reg)","make": "Volvo","model": "C30","year": 2012,"dealerId": "10024295","sourceUrl": "https://www.autotrader.co.uk/car-details/202605282777875?..."}]}
Delivery and finance enrichments
Delivery options (deliveryOptions)
{"deliveryOptions": {"advertId": "202606063060313","deliversToMyPostcode": true,"dealerServices": {"homeDelivery": {"bulletPoints": ["Delivery 7 days a week.","Delivery outside of working hours at your convenience","Same day delivery available on request."],"deliveryCostPerMile": 1.5,"freeDeliveryRadiusInMiles": 35}}}}
Finance quotes (financeQuotes)
Structure follows Autotrader’s finance API. Some listings return quote arrays; others return provider metadata only:
{"financeQuotes": {"quotes": [],"financeProviderType": "PARTNER","defaultPartnerAPR": "16.9%"}}
Finance availability depends on the vehicle, seller, and buyer postcode. An empty quotes array with provider metadata is normal for some listings.
Dealer output modes
Attached mode (attachSellerToListings: true)
- Every listing from a dealer includes
sellerProfile,sellerReviews, andsellerOtherListingson the same row - Simplest for spreadsheets and small exports
- Dealer data is duplicated across listings from the same dealer
Separate seller records (attachSellerToListings: false)
- Listings contain vehicle data plus a minimal
dealerreference (dealerId,postcode, name when known) - One
recordType: "seller"row per unique dealer with full profile, reviews, and other stock - Recommended for large runs — less duplication, smaller dataset
- Join listings to sellers on
dealerIdandpostcode
Example seller row (separate mode):
{"recordType": "seller","dealerId": "10024295","postcode": "EC1A1BB","sellerProfile": {"name": "Indus Motors Ltd","distanceMiles": 42,"reviewSummary": {"totalReviews": 95,"averageRating": 4.4}},"sellerReviews": { "reviews": [] },"sellerOtherListings": []}
Multiple search URLs
Add several entries under Search URLs to run multiple filters in one job.
{"startUrls": [{ "url": "https://www.autotrader.co.uk/car-search?channel=cars&make=Abarth&model=595&postcode=EC1A1BB" },{ "url": "https://www.autotrader.co.uk/car-search?channel=cars&make=Fiat&model=500&postcode=EC1A1BB" }],"maxListings": 25,"fetchDetails": true}
- Each URL is processed independently up to Maximum listings per search URL
- The same vehicle may appear twice if it matches multiple searches
- If one URL is invalid, others can still complete
Free plan limits
On the Apify free plan, the Actor may automatically apply:
| Limit | Value |
|---|---|
| Search URLs per run | 3 (only the first URLs in your list) |
| Maximum listings per search URL | 20 |
Paid Apify plans can use the full input without these caps. If limits apply, the run log will include a short notice and an upgrade suggestion.
Pricing
Pricing is pay-per-event on Apify. See the Pricing tab on the Actor store for current rates. You are charged for data successfully delivered during the run.
| Event | When it applies |
|---|---|
| listing | Each vehicle row (recordType: listing) saved to the dataset — including feed-only mode |
| detail | Each listing where the full vehicle detail page was successfully fetched |
| delivery | Each listing where delivery/collection data was successfully retrieved |
| finance | Each listing where finance quote data was successfully retrieved |
| dealer_profile | Each unique dealer whose profile was successfully fetched |
| dealer_reviews | Total count of individual review objects collected across all dealers |
| dealer_other_listings | Total count of other-listing items collected across all dealers |
Cost tips:
- Start with
fetchDetails: falseand a lowmaxListingsto estimate cost per search - Enable dealer, delivery, and finance only when you need those fields
- Use separate seller records on large dealer-heavy runs to avoid duplicating dealer JSON on every car row (dealer events are still per dealer, not per car)
Data quality and limitations
Public listing data
The Actor reads the same listing data shown to buyers on Autotrader UK. It does not access private seller accounts or off-market inventory.
Accuracy
Prices, mileage, and availability change on the live site. Verify critical fields before purchase or compliance decisions.
Coverage varies
Private sellers have no dealer profile. Finance quotes may be empty for some cars. Delivery options depend on dealer services and your search postcode.
Postcode is required
Search URLs must include a postcode. This matches how Autotrader calculates distance and delivery eligibility.
Compliance
You are responsible for using collected data in line with applicable laws and Autotrader’s terms of use.
Tips for best results
- Copy URLs from the site — Use real car-search URLs after setting filters and postcode in the browser.
- Start feed-only — Use
fetchDetails: falsefor quick market scans, then enable full details for production runs. - Turn off unused enrichments — Each optional enrichment adds fields and billable events.
- Large dealer runs — Set
attachSellerToListings: falseand join ondealerId+postcode. - Check the dataset — The full JSON lives in dataset storage; export to JSON, CSV, or Excel from Apify.
- Re-run on a schedule — Use Apify schedules to track price and stock changes over time.
Frequently asked questions
Why was my search URL skipped?
The URL may be missing a postcode, not be an Autotrader UK search page, or be malformed. Check the run log for warnings.
Why is there no dealer profile on a listing?
The seller may be a private seller (sellerType not TRADE), dealer enrichments may be disabled, or the profile could not be retrieved (enrichmentErrors may explain).
Why are finance quotes empty?
Not every listing offers finance through Autotrader’s calculator. Provider metadata without quote rows is normal for some vehicles.
Where are seller phone and email?
Enable Full vehicle details. Contact fields appear in sellerContact on each listing row. They are not available in feed-only mode.
Can I scrape a single car detail URL?
This Actor is built for search URLs. Use a car-search URL that returns the vehicles you need (for example filter by make/model or dealer).
What is recordType?
listing = vehicle row. seller = dealer row (only when dealer enrichments are on and attach mode is off).
Will the same car appear twice?
Yes, if you use multiple search URLs that both return the same advert. Deduplication is per URL, not across the whole run.
Support
For Actor-specific issues, use the Issues tab on the Apify store listing or contact the publisher through Apify.
For platform questions (runs, billing, API, schedules), see Apify documentation and Apify support.