Carwow UK Car Deals Scraper avatar

Carwow UK Car Deals Scraper

Pricing

from $4.45 / 1,000 stock car deals

Go to Apify Store
Carwow UK Car Deals Scraper

Carwow UK Car Deals Scraper

Scrape Carwow UK new, used and lease car deals: 79,390 live listings with price, deal score, specs, dealer contact and model level RRP, cash and PCP pricing.

Pricing

from $4.45 / 1,000 stock car deals

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

5 days ago

Last modified

Categories

Share

ParseForge

Carwow Scraper: UK Car Deals, Leasing and Used Cars

Carwow lists 79,390 live cars in the UK right now, 22,867 new and 58,169 used, plus 6,444 leasing offers, and this scraper reads all of them. Every row carries the price, Carwow's own deal score, the derivative and trim, transmission, fuel, engine size, mileage, registration year and the selling dealer's town and coordinates. No login, no API key, no browser. Exports to CSV, JSON, Excel and XML.

Carwow has no public API and its own site loads every card through a lazy turbo frame, so a normal HTML crawler comes back empty. This actor reads the frame endpoints directly, which is why it returns full rows at 4.4 rows per second on 512 MB of memory instead of driving a headless browser at 4 GB.

Who uses itWhat they scrape Carwow for
Car dealersWatch what rival forecourts are asking for the same derivative
Leasing brokersTrack monthly rentals by contract length, mileage and initial payment
Price comparison sitesFeed a UK new and used car price index
Market analystsMeasure discount depth against manufacturer RRP, model by model
Fleet buyersCompare cash, PCP and lease cost for a shortlist before tendering

What it does

  • ๐Ÿš— Live stock deals. Every car in Carwow's inventory with price, deal score out of 10, deal rating, condition, derivative, transmission, fuel, engine litres, mileage, registration year, colour and its photo gallery, 41 images on average and up to 123.
  • ๐Ÿ“ Where the car is. Supplier town plus latitude and longitude on every row, so you can map stock or compute distance yourself.
  • ๐Ÿ’ท Model level pricing. RRP, cash price, PCP finance price, representative APR and finance deposit contribution for every derivative of a model, with the CAP derivative id.
  • ๐Ÿท๏ธ Leasing terms. Contract length, annual mileage allowance, initial payment in months, trim, colour and whether it is a Carwow Leasey deal.
  • ๐Ÿงพ Dealer and equipment detail. Optional block adds the selling dealer's name, trading name, town, phone number and rating, the car's full feature list and standard equipment, and the dealer's own notes.
  • โญ Model cards. Carwow's wowscore out of 10, the editorial one line description, average saving, from price and monthly price for each model.
  • ๐Ÿ” 31 verified filters. Make, model, new or used, availability, body style, fuel, transmission, doors, colour, must-have features, price range, mileage, engine size, boot space, electric range, 0-62 time, top speed band, Euro NCAP stars, seats, EV grant, lease terms and sort order.

What you can do with Carwow data

Track new car discounts over time. The model deals pages carry both the manufacturer RRP and the Carwow cash price for every derivative. Run the model-deals mode daily and you have a discount curve per trim, which is the number that actually moves in the UK new car market.

Build a UK leasing price index. Leasing rows carry the monthly rental together with the exact contract that produced it: 48 months, 5,000 miles a year, 12 months upfront. Without those four numbers a monthly price is not comparable to anything, which is why most lease datasets are useless.

Find mispriced used stock. Carwow scores every used car it lists from 0 to 10 and labels it from High price to Amazing deal. Sort by deal score, filter by make and mileage, and you have a buying list that a dealer would otherwise build by hand.

Map dealer inventory. Every row carries the supplier's town and coordinates, and the optional detail block adds the dealership name and phone. That turns a price feed into a competitor map for any postcode area.

Why choose this scraper

What you get
CoverageAll 79,390 live cars, not just the 150 cards on the curated deals page
Speed1,500 rows in 342 seconds on the platform, verified
Cost$5.04 per 1,000 cars, pay per event, with no platform usage or proxy bill on top
Filters31 filters, each measured against Carwow's own facet counts before shipping
HonestyFilters that do not actually filter were dropped rather than shipped
DepthFour record types: stock deals, model derivative deals, model cards and makes

How it compares

Three other actors target Carwow. miladamirzadeh/carwow-scraper is free and has 2 monthly users. getdataforme/carwow-category-scraper reads category pages. Our own parseforge/carwow-new-car-deals-scraper reads the curated /new-car-deals page, which is 150 model cards. All three stop at the pages Carwow renders server side. This actor is the only one that reads the stock frame endpoints, which is where the other 79,000 cars live, and the only one that returns dealer contact details and per derivative RRP against cash and PCP price.

This actorCurated deals page scrapers
Rows available79,390about 150
Used stockYes, 58,169 carsNo
Leasing termsContract length, mileage, upfrontNo
Dealer name and phoneOptional blockNo
RRP against cash and PCPYesNo
Deal scoreYesNo

What a Carwow deal looks like

One unedited row from the verified platform run:

{
"recordType": "stock-deal",
"dealId": "d028013037d5cc2b1bb006ab8bc3d814",
"url": "https://quotes.carwow.co.uk/deals/d028013037d5cc2b1bb006ab8bc3d814",
"dealPageUrl": "https://quotes.carwow.co.uk/deals/d028013037d5cc2b1bb006ab8bc3d814",
"dealType": "cash",
"title": "Suzuki Swift",
"makeName": "Suzuki",
"make": "suzuki",
"model": "Swift",
"modelSlug": "Not Disclosed",
"derivative": "1.2 SZ-L Navigation",
"trim": "Not Disclosed",
"engineName": "Not Disclosed",
"condition": "Used",
"dealScore": null,
"dealScoreLabel": "High price",
"price": 9650,
"priceCurrency": "GBP",
"priceBasis": "total",
"priceText": "ยฃ9,650",
"monthlyPrice": null,
"transmission": "Manual",
"fuel": "Petrol",
"engineLitres": 1.2,
"colour": "Not Disclosed",
"registrationYear": 2016,
"mileage": 16772,
"contractLengthMonths": null,
"annualMileage": null,
"upfrontMonths": null,
"leaseyDeal": "No",
"supplierTown": "Nacton",
"supplierLatitude": 52.0271888,
"supplierLongitude": 1.2330645,
"imageUrl": "https://carwow-uk-0.imgix.net/stock-car-custom-images/original/80bc9a6a-361d-62bc-2e59-d7ad444b3346?auto=format&cs=tinysrgb&fit=clip&ixlib=rb-1.1.0&q=60&w=450",
"scrapedAt": "2026-09-08T14:20:14.532Z",
"error": null
}

Fields that read Not Disclosed are the ones Carwow only publishes on leasing offers: model slug, trim, engine name and colour. dealScore is null here because Carwow only scores used stock, and this row is a used car it rates as a high price.

Configure the run

Pick a mode, then narrow it with filters. Leaving a filter empty skips it, and every filter here was measured against Carwow's own counts, so a filter that appears in the schema really does change the result set.

Cheapest electric SUVs on a four year lease:

{
"scrapeMode": "stock-deals",
"dealType": "leasing",
"fuels": ["electric"],
"bodyStyles": ["suv"],
"contractLengths": ["48"],
"sortBy": "offer",
"maxItems": 500
}

Every BMW derivative with its RRP, cash price and PCP price:

{
"scrapeMode": "model-deals",
"makeSlug": "bmw",
"maxItems": 1000
}

Used cars under 20,000 miles with heated seats and a dealer phone number:

{
"scrapeMode": "stock-deals",
"vehicleState": "used",
"maxMileage": 20000,
"features": ["heated-seats"],
"includeDealDetails": true,
"maxItems": 2000
}

One thing worth knowing: Carwow's listing endpoint stops at 100 pages of 100 rows, so a single filter combination tops out at 10,000 rows. Past that it silently repeats the last page instead of returning empty. To sweep the whole inventory, run one job per make: each make gets its own 10,000 row window and no make is anywhere near it.

Pricing

Pay per event. You pay for the rows you get, nothing else: no platform usage on top, no proxy bill, no compute surprise.

EventPriceCharged
Stock deal$0.005One live stock car: price, deal score, derivative, specs, mileage, supplier town and coordinates, photo gallery
Model derivative deal$0.005One derivative with RRP, cash price, PCP finance price, representative APR and deposit contribution
Model card$0.004One model card with wowscore, average saving, from price and monthly price
Make$0.002One make in the brand index
Search page$0.004One listing page of up to 100 deals. This is what paginating costs, so the price per car stays flat
Dealer and equipment detail$0.003Only when includeDealDetails is on: dealer name, phone, rating, full feature list, standard equipment and dealer notes
Actor start$0.002Once per run. Apify charges one start event per GB of memory; this actor is capped at 1 GB, so it is always exactly one

1,000 stock cars cost $5.04: 1,000 rows plus the 10 search pages that produced them plus the start. With the dealer and equipment block on, $8.04. A 10,000 row sweep of one make is $50.24.

Row prices drop with your Apify plan: Bronze โˆ’3.8%, Silver โˆ’7.4%, Gold, Platinum and Diamond โˆ’11%, so 1,000 cars are $4.49 on Gold. The start event drops to $0.0002 on any paid plan.

Every charge happens after the row is written to the dataset, and the run stops paginating when it reaches the cost limit you set, so a capped run never bills for rows you did not receive.

Free users

Free plan accounts are capped at 10 rows per run so the actor stays previewable. Paid accounts run up to 1,000,000 rows. Create a free account with $5 of credit at console.apify.com.

Run it

  1. Create a free Apify account, which comes with $5 of platform credit.
  2. Open the actor, pick a mode and set maxItems.
  3. Add filters. Start with makeSlug and vehicleState, then narrow.
  4. Run it, then export the dataset as CSV, JSON, Excel or XML.

Use with AI agents (MCP)

claude mcp add apify --transport sse https://mcp.apify.com/sse?actors=parseforge/carwow-scraper

Then ask in plain language:

  • "Find the ten cheapest electric SUV lease deals on Carwow with a 48 month contract."
  • "List every BMW 1 Series derivative with its RRP and its PCP price."
  • "Which used Fords under 30,000 miles does Carwow rate as an amazing deal?"

Troubleshooting

No results at all. The most common cause is a modelSlug that does not exist. Carwow validates make and model exactly. Run the makes mode to get the 50 valid make slugs, then the model-cards mode for that make to get its model slugs.

Fewer rows than I asked for. Either the filter combination has fewer matches than maxItems, or you hit the 10,000 row ceiling on one filter combination. Split the job by make.

A field is empty. Model slug, trim, engine name, colour and the lease terms only exist on leasing offers. Deal score and rating only exist on used stock. Mileage and registration year only exist on used cars. These are gaps in what Carwow publishes, not parser bugs.

The run is slow. Every row is a separate request to Carwow, because Carwow itself loads each card that way. Measured at 4.4 rows per second without the detail block and 2.5 with it, so roughly 5,000 rows inside the default 1,200 second timeout. Raise the timeout for bigger jobs.

Dealer details are missing. includeDealDetails is off by default. Turn it on to get dealer name, phone, town, rating, features and standard equipment.

FAQ

QuestionAnswer
Do I need a Carwow account?No. Everything this actor reads is public and anonymous.
Does it use a proxy?No. Carwow serves plain HTTP with no block, so the actor pays for no proxy.
How many cars can I get?79,390 are listed. One filter combination tops out at 10,000, so sweep by make.
How fresh is the data?It reads Carwow live at run time. Every row carries scrapedAt.
Can I get new cars only?Yes, set vehicleState to new. That is 22,867 cars.
Can I get lease prices?Yes, set dealType to leasing. That is 6,444 offers with full contract terms.
Why is postcode not a filter?It was tested and dropped. London and Edinburgh return identical results, so Carwow applies distance in the browser, not on the server.
What is a wowscore?Carwow's editorial rating of the model out of 10. It appears on model card rows.
What is a deal score?Carwow's algorithmic rating of an individual used listing out of 10, from High price to Amazing deal.
Can it scrape vans?Not yet. Carwow serves vans under a separate vehicle type and this actor targets cars.

Browse the full ParseForge collection for more scrapers.

Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

Disclaimer: this is an unofficial scraper and is not affiliated with, endorsed by or connected to Carwow Ltd. It reads only data that Carwow publishes anonymously to any visitor, and collects no personal data about consumers. Dealer contact details are business contact information published on Carwow's own listings. Users are responsible for their own compliance with GDPR, CCPA and PIPL when storing or reusing the output.