5 images
Online
· Days listed: 0
Previously listed as
2017 BMW M2
3.0i DCT Euro 6 (s/s) 2dr
£22,500
34,000 miles
M2NVY
Overview
Mileage
34,000 miles
Registration
2017 (17 reg)
Fuel type
Petrol
Body type
Coupe
Engine
3L
Gearbox
Automatic
Doors
2
Seats
4
Body colour
Blue
Forsale
2017 bmw m2 f87
Mint condition
Very clean
34,000 miles
Ghost alarm and hijack mode fitted
3 keys
Service manual
Car cover included fits really well has fasteners
Completely standard apart from competition alloys with 4 decent tyres
And carbon details
Apart from chargecooler pipe changed to metal
M2 letters private plate included worth 1800
Cat s in its early years but was wing and wheel damage, 100% repair and can't even see any sign of repair
Sounds unreal!!
Bought as a stop gap whilst waiting for new work truck to arrive
Full mot
And highly serviced owned by my mechanic friend before so real well maintained and loved!
Amazing head turning colour!!
Located nr banbury OX15 area
No test pilots
No rush to sell
Genuine buyers only
Seller
History
Price history
| When | Price | Δ |
|---|---|---|
| 15 hours ago | £22,500 | — |
Mileage history
| When | Mileage | Δ |
|---|---|---|
| 15 hours ago | 34,000 | — |
From other listings of this vehicle by this dealer
Data points lifted from sibling listings inside the relisting window — same VRM, same dealer, separate adverts.
Sources & channels
Item data
Processed fields
- vrm
- M2NVY
- make
- BMW
- model
- M2
- trim line
- 3.0i DCT Euro 6 (s/s) 2dr
- year
- 2017
- body type
- Coupe
- fuel type
- Petrol
- transmission
- Automatic
- engine size cc
- 3000
- engine size litres
- 3
- colour
- Blue
- doors
- 2
- seats
- 4
- mileage
- 34000
- price
- 22500
- source key
- search-make-bmw-m2
- platform
- autotrader
Item record
- item id
- 74175
- remote id
- https://www.autotrader.co.uk/car-details/202607304639887
- platform
- autotrader
- source key
- search-make-bmw-m2
- remote status
- available
- media count
- 5
- first seen at
- 2026-07-30 16:10:47
- last seen at
- 2026-07-30 16:10:47
- completed at
- 2026-07-30 16:13:50
- remote url
- View original →
Raw data
Item record
{
"item_id": 74175,
"remote_id": "https://www.autotrader.co.uk/car-details/202607304639887",
"source_key": "search-make-bmw-m2",
"platform": "autotrader",
"remote_url": "https://www.autotrader.co.uk/car-details/202607304639887",
"primary_source_id": 53996,
"primary_source_key": "search-make-bmw-m2",
"primary_source_tier": 2,
"remote_status": "available",
"media_count": 5,
"last_seen_at": "2026-07-30 16:10:47",
"first_seen_at": "2026-07-30 16:10:47",
"completed_at": "2026-07-30 16:13:50",
"meta": {
"cdn_media": [
{
"original_url": "https://m.atcdn.co.uk/a/media/w1024/6ea14bbf533c411281128e2491c6abe9.jpg",
"cdn_path": "507/74175/758c0b7b22f.jpg",
"status": "complete",
"attempts": 1,
"cdn_hash": "758c0b7b22",
"cdn_sizes": {
"f": "507/74175/758c0b7b22f.jpg",
"l": "507/74175/758c0b7b22l.jpg",
"m": "507/74175/758c0b7b22m.jpg",
"s": "507/74175/758c0b7b22s.jpg"
},
"media_type": "image"
},
{
"original_url": "https://m.atcdn.co.uk/a/media/w1024/848d1b9d3bf348e49997d6652871c18a.jpg",
"cdn_path": "507/74175/f44ce8646df.jpg",
"status": "complete",
"attempts": 1,
"cdn_hash": "f44ce8646d",
"cdn_sizes": {
"f": "507/74175/f44ce8646df.jpg",
"l": "507/74175/f44ce8646dl.jpg",
"m": "507/74175/f44ce8646dm.jpg",
"s": "507/74175/f44ce8646ds.jpg"
},
"media_type": "image"
},
{
"original_url": "https://m.atcdn.co.uk/a/media/w1024/b21334f7b1e34fa09a9d9c56790a28b4.jpg",
"cdn_path": "507/74175/072a0bae8bf.jpg",
"status": "complete",
"attempts": 1,
"cdn_hash": "072a0bae8b",
"cdn_sizes": {
"f": "507/74175/072a0bae8bf.jpg",
"l": "507/74175/072a0bae8bl.jpg",
"m": "507/74175/072a0bae8bm.jpg",
"s": "507/74175/072a0bae8bs.jpg"
},
"media_type": "image"
},
{
"original_url": "https://m.atcdn.co.uk/a/media/w1024/a66ddad7cde5444ab47d1e079b699a02.jpg",
"cdn_path": "507/74175/b020327061f.jpg",
"status": "complete",
"attempts": 1,
"cdn_hash": "b020327061",
"cdn_sizes": {
"f": "507/74175/b020327061f.jpg",
"l": "507/74175/b020327061l.jpg",
"m": "507/74175/b020327061m.jpg",
"s": "507/74175/b020327061s.jpg"
},
"media_type": "image"
},
{
"original_url": "https://m.atcdn.co.uk/a/media/w1024/e3095fc325c74a28a25d0ca935641ae9.jpg",
"cdn_path": "507/74175/eca897ab03f.jpg",
"status": "complete",
"attempts": 1,
"cdn_hash": "eca897ab03",
"cdn_sizes": {
"f": "507/74175/eca897ab03f.jpg",
"l": "507/74175/eca897ab03l.jpg",
"m": "507/74175/eca897ab03m.jpg",
"s": "507/74175/eca897ab03s.jpg"
},
"media_type": "image"
}
],
"cdn_status": "complete",
"media_source": "fallback",
"processed": {
"vrm": "M2NVY",
"make": "BMW",
"model": "M2",
"trim_line": "3.0i DCT Euro 6 (s/s) 2dr",
"year": 2017,
"body_type": "Coupe",
"fuel_type": "Petrol",
"transmission": "Automatic",
"engine_size_cc": 3000,
"engine_size_litres": 3,
"colour": "Blue",
"doors": 2,
"seats": 4,
"mileage": 34000,
"price": 22500,
"seller_type": null,
"attention_grabber": null,
"source_key": "search-make-bmw-m2",
"platform": "autotrader"
},
"raw_payload": [
{
"stage": 1,
"label": "Primary",
"data": {
"status": "success",
"at_id": "202607304639887",
"vdata_scrape_id": "at_id_202607304639887",
"data_complete": false,
"listing": {
"title": "2017 BMW M2",
"subtitle": "3.0i DCT Euro 6 (s/s) 2dr",
"make": "BMW",
"model": "M2",
"year": 2017,
"price": 22500,
"mileage": 34000,
"fuel": "Petrol",
"body_type": "Coupe",
"gearbox": "Automatic",
"doors": 2,
"seats": 4,
"engine": "3.0L",
"emission_class": "Euro 6",
"colour": "Blue",
"range_miles": null,
"vin": null,
"description": "Forsale\n\n2017 bmw m2 f87\n\nMint condition \nVery clean \n34,000 miles\nGhost alarm and hijack mode fitted\n3 keys\nService manual\nCar cover included fits really well has fasteners\nCompletely standard apart from competition alloys with 4 decent tyres\nAnd carbon details\nApart from chargecooler pipe changed to metal \nM2 letters private plate included worth 1800\nCat s in its early years but was wing and wheel damage, 100% repair and can't even see any sign of repair\nSounds unreal!! \nBought as a stop gap whilst waiting for new work truck to arrive \nFull mot\nAnd highly serviced owned by my mechanic friend before so real well maintained and loved!\nAmazing head turning colour!!\nLocated nr banbury OX15 area\n \nNo test pilots \nNo rush to sell\nGenuine buyers only",
"description_section_present": true,
"image_count": 5,
"image_urls": [],
"dealer_name": null,
"dealer_id": null,
"dealer_rating": null,
"dealer_phone": "01235624951",
"is_private_seller": true
},
"advert_url": "https://www.autotrader.co.uk/car-details/202607304639887",
"scraped_url": "https://www.autotrader.co.uk/car-details/202607304639887",
"steps": [
"[+0.0s] start",
"[+0.0s] url: https://www.autotrader.co.uk/car-details/202607304639887",
"[+0.0s] at_id: 202607304639887",
"[+12.14s] driver started",
"[+17.77s] page loaded",
"[+18.91s] pre-cookie wait done",
"[+20.9s] switched into cookie iframe",
"[+22.81s] cookie button clicked",
"[+23.22s] cookie iframe gone",
"[+27.7s] title: 2017 BMW M2",
"[+28.03s] subtitle: 3.0i DCT Euro 6 (s/s) 2dr",
"[+28.07s] price: 22500",
"[+28.09s] data-testid sections: ['skip-to-content-testid', 'skip-to-footer-testid', 'at-logo-cars', 'show-menu-mobile', 'header-saved-icon', 'account-sign-in', 'nav-used-cars', 'nav-new-cars', 'nav-sell-your-car', 'nav-value-your-car', 'nav-car-reviews', 'nav-car-leasing', 'nav-electric-cars', 'nav-buy-a-car-online', 'key-information-nav', 'pricing-nav', 'overview-nav', 'description-nav', 'running-costs-nav', 'insurance-nav', 'vehicle-history-nav', 'before-you-buy-nav', 'expert-reviews-nav', 'save-advert-button', 'back-to-search-link', 'share-advert-button', 'gallery', 'gallery-media-button', 'key-information', 'retailer-section-seller-logo']",
"[+28.09s] data-gui icons: ['skip-to-content-gui', 'skip-to-footer-gui', 'atds-icon-sell', 'atds-icon-save', 'atds-icon-search', 'account-sign-in', 'atds-icon-account', 'menu-drawer', 'atds-icon-mileage', 'atds-icon-registration', 'atds-icon-fuel-type', 'atds-icon-body-type', 'atds-icon-engine', 'atds-icon-gearbox', 'atds-icon-doors', 'atds-icon-seats', 'atds-icon-emission-class', 'atds-icon-body-colour', 'atds-icon-chevron-up', 'atds-social-icons__icon--facebook', 'atds-social-icons__icon--youtube', 'atds-social-icons__icon--instagram', 'atds-social-icons__icon--tiktok', 'atds-social-icons__icon--giphy', 'atds-social-icons__icon--pinterest']",
"[+28.27s] overview section confirmed via CSS selector",
"[+28.28s] mileage: 34000",
"[+28.3s] year: 2017",
"[+28.33s] fuel: Petrol",
"[+28.34s] body_type: Coupe",
"[+28.35s] gearbox: Automatic",
"[+28.36s] doors: 2",
"[+28.38s] seats: 4",
"[+28.44s] engine: 3.0L",
"[+28.46s] emission_class: Euro 6",
"[+28.47s] colour: Blue",
"[+29.13s] range_miles: None",
"[+29.17s] data-lp-sdes not found — falling back to title parse",
"[+29.18s] make/model from page title: BMW / M2",
"[+29.85s] dealer_name: None",
"[+29.9s] dealer_id: None",
"[+29.93s] dealer_rating: None",
"[+29.96s] dealer_phone: 01235624951",
"[+30.03s] is_private_seller: True",
"[+30.68s] description_section_present: True",
"[+32.44s] description signpost clicked",
"[+32.84s] description: 755 chars",
"[+33.27s] description modal closed",
"[+33.33s] image_count from counter: 5",
"[+33.99s] gallery button clicked (fallback): //section[@data-testid='gallery']//button[.//span[text()='Gallery']]",
"[+37.17s] image grid wait timeout — proceeding anyway",
"[+37.6s] gallery images extracted: 0",
"[+37.6s] data_complete: False — missing: ['images']",
"[+37.86s] driver quit"
]
}
},
{
"stage": 2,
"label": "VRM",
"data": {
"status": "success",
"at_id": "202607304639887",
"vdata_scrape_id": "at_id_202607304639887",
"data_complete": true,
"listing": {
"vrm": "M2NVY",
"year": 2017,
"make": "BMW",
"model": "M2",
"price": 22500,
"mileage": 34000,
"colour": "Blue",
"gearbox": "Automatic",
"fuel": "Petrol",
"subtitle": "BMW M2 3.0i DCT Euro 6 (s/s) 2dr low mileage",
"dealer_id": null,
"dealer_name": null,
"image_urls": [
"https://m.atcdn.co.uk/a/media/w300/6ea14bbf533c411281128e2491c6abe9.jpg",
"https://m.atcdn.co.uk/a/media/w300/848d1b9d3bf348e49997d6652871c18a.jpg",
"https://m.atcdn.co.uk/a/media/w300/b21334f7b1e34fa09a9d9c56790a28b4.jpg",
"https://m.atcdn.co.uk/a/media/w300/a66ddad7cde5444ab47d1e079b699a02.jpg",
"https://m.atcdn.co.uk/a/media/w300/e3095fc325c74a28a25d0ca935641ae9.jpg"
]
},
"advert_url": "https://www.autotrader.co.uk/car-details/202607304639887",
"scraped_url": "https://www.zuto.com/apply/?advertId=202607304639887&device=mobile-web&utm_campaign=DeskCarPrivateFpa&utm_medium=affiliate&utm_source=autotrader",
"vehicle_data_raw": {
"type": "VEHICLE_TYPE_CAR",
"colour": "Blue",
"fuelType": "Petrol",
"make": "BMW",
"mileage": 34000,
"model": "M2",
"price": 22500,
"registration": "M2NVY",
"registrationYear": 2017,
"transmission": "Automatic",
"summary": "BMW M2 3.0i DCT Euro 6 (s/s) 2dr low mileage",
"dealerId": null,
"dealerName": null,
"imageUrls": [
"https://m.atcdn.co.uk/a/media/w300/6ea14bbf533c411281128e2491c6abe9.jpg",
"https://m.atcdn.co.uk/a/media/w300/848d1b9d3bf348e49997d6652871c18a.jpg",
"https://m.atcdn.co.uk/a/media/w300/b21334f7b1e34fa09a9d9c56790a28b4.jpg",
"https://m.atcdn.co.uk/a/media/w300/a66ddad7cde5444ab47d1e079b699a02.jpg",
"https://m.atcdn.co.uk/a/media/w300/e3095fc325c74a28a25d0ca935641ae9.jpg"
],
"advertUrl": "https://www.autotrader.co.uk/car-details/202607304639887",
"stockId": "7b4c8eb9953b49e5a96cc169dd3d3b63",
"searchId": "202607304639887"
},
"steps": [
"start",
"at_id: 202607304639887",
"url: https://www.zuto.com/apply/?advertId=202607304639887&device=mobile-web&utm_campaign=DeskCarPrivateFpa&utm_medium=affiliate&utm_source=autotrader",
"driver started",
"page loaded",
"__NEXT_DATA__ found",
"vrm: M2NVY",
"make/model: BMW / M2",
"data_complete: True",
"driver quit"
]
}
}
],
"processed_data": {
"scrape_log": [
{
"at": "2026-07-30 17:14:25",
"reasons": [
"first_ingest"
]
}
],
"description": "Forsale\n\n2017 bmw m2 f87\n\nMint condition \nVery clean \n34,000 miles\nGhost alarm and hijack mode fitted\n3 keys\nService manual\nCar cover included fits really well has fasteners\nCompletely standard apart from competition alloys with 4 decent tyres\nAnd carbon details\nApart from chargecooler pipe changed to metal \nM2 letters private plate included worth 1800\nCat s in its early years but was wing and wheel damage, 100% repair and can't even see any sign of repair\nSounds unreal!! \nBought as a stop gap whilst waiting for new work truck to arrive \nFull mot\nAnd highly serviced owned by my mechanic friend before so real well maintained and loved!\nAmazing head turning colour!!\nLocated nr banbury OX15 area\n \nNo test pilots \nNo rush to sell\nGenuine buyers only",
"colour_detail": "Blue",
"price_history": [
{
"price": 22500,
"recorded_at": "2026-07-30 17:14:25"
}
],
"images_history": [],
"mileage_history": [
{
"mileage": 34000,
"recorded_at": "2026-07-30 17:14:25"
}
],
"description_history": [
{
"hash": "b101675b1b0b125a2db04c25f8d6f952",
"text": "Forsale\n\n2017 bmw m2 f87\n\nMint condition \nVery clean \n34,000 miles\nGhost alarm and hijack mode fitted\n3 keys\nService manual\nCar cover included fits really well has fasteners\nCompletely standard apart from competition alloys with 4 decent tyres\nAnd carbon details\nApart from chargecooler pipe changed to metal \nM2 letters private plate included worth 1800\nCat s in its early years but was wing and wheel damage, 100% repair and can't even see any sign of repair\nSounds unreal!! \nBought as a stop gap whilst waiting for new work truck to arrive \nFull mot\nAnd highly serviced owned by my mechanic friend before so real well maintained and loved!\nAmazing head turning colour!!\nLocated nr banbury OX15 area\n \nNo test pilots \nNo rush to sell\nGenuine buyers only",
"recorded_at": "2026-07-30 17:14:26"
}
]
}
}
}
meta: cdn_media
[
{
"original_url": "https://m.atcdn.co.uk/a/media/w1024/6ea14bbf533c411281128e2491c6abe9.jpg",
"cdn_path": "507/74175/758c0b7b22f.jpg",
"status": "complete",
"attempts": 1,
"cdn_hash": "758c0b7b22",
"cdn_sizes": {
"f": "507/74175/758c0b7b22f.jpg",
"l": "507/74175/758c0b7b22l.jpg",
"m": "507/74175/758c0b7b22m.jpg",
"s": "507/74175/758c0b7b22s.jpg"
},
"media_type": "image"
},
{
"original_url": "https://m.atcdn.co.uk/a/media/w1024/848d1b9d3bf348e49997d6652871c18a.jpg",
"cdn_path": "507/74175/f44ce8646df.jpg",
"status": "complete",
"attempts": 1,
"cdn_hash": "f44ce8646d",
"cdn_sizes": {
"f": "507/74175/f44ce8646df.jpg",
"l": "507/74175/f44ce8646dl.jpg",
"m": "507/74175/f44ce8646dm.jpg",
"s": "507/74175/f44ce8646ds.jpg"
},
"media_type": "image"
},
{
"original_url": "https://m.atcdn.co.uk/a/media/w1024/b21334f7b1e34fa09a9d9c56790a28b4.jpg",
"cdn_path": "507/74175/072a0bae8bf.jpg",
"status": "complete",
"attempts": 1,
"cdn_hash": "072a0bae8b",
"cdn_sizes": {
"f": "507/74175/072a0bae8bf.jpg",
"l": "507/74175/072a0bae8bl.jpg",
"m": "507/74175/072a0bae8bm.jpg",
"s": "507/74175/072a0bae8bs.jpg"
},
"media_type": "image"
},
{
"original_url": "https://m.atcdn.co.uk/a/media/w1024/a66ddad7cde5444ab47d1e079b699a02.jpg",
"cdn_path": "507/74175/b020327061f.jpg",
"status": "complete",
"attempts": 1,
"cdn_hash": "b020327061",
"cdn_sizes": {
"f": "507/74175/b020327061f.jpg",
"l": "507/74175/b020327061l.jpg",
"m": "507/74175/b020327061m.jpg",
"s": "507/74175/b020327061s.jpg"
},
"media_type": "image"
},
{
"original_url": "https://m.atcdn.co.uk/a/media/w1024/e3095fc325c74a28a25d0ca935641ae9.jpg",
"cdn_path": "507/74175/eca897ab03f.jpg",
"status": "complete",
"attempts": 1,
"cdn_hash": "eca897ab03",
"cdn_sizes": {
"f": "507/74175/eca897ab03f.jpg",
"l": "507/74175/eca897ab03l.jpg",
"m": "507/74175/eca897ab03m.jpg",
"s": "507/74175/eca897ab03s.jpg"
},
"media_type": "image"
}
]
meta: cdn_status
complete
meta: media_source
fallback
meta: processed
{
"vrm": "M2NVY",
"make": "BMW",
"model": "M2",
"trim_line": "3.0i DCT Euro 6 (s/s) 2dr",
"year": 2017,
"body_type": "Coupe",
"fuel_type": "Petrol",
"transmission": "Automatic",
"engine_size_cc": 3000,
"engine_size_litres": 3,
"colour": "Blue",
"doors": 2,
"seats": 4,
"mileage": 34000,
"price": 22500,
"seller_type": null,
"attention_grabber": null,
"source_key": "search-make-bmw-m2",
"platform": "autotrader"
}
meta: raw_payload
[
{
"stage": 1,
"label": "Primary",
"data": {
"status": "success",
"at_id": "202607304639887",
"vdata_scrape_id": "at_id_202607304639887",
"data_complete": false,
"listing": {
"title": "2017 BMW M2",
"subtitle": "3.0i DCT Euro 6 (s/s) 2dr",
"make": "BMW",
"model": "M2",
"year": 2017,
"price": 22500,
"mileage": 34000,
"fuel": "Petrol",
"body_type": "Coupe",
"gearbox": "Automatic",
"doors": 2,
"seats": 4,
"engine": "3.0L",
"emission_class": "Euro 6",
"colour": "Blue",
"range_miles": null,
"vin": null,
"description": "Forsale\n\n2017 bmw m2 f87\n\nMint condition \nVery clean \n34,000 miles\nGhost alarm and hijack mode fitted\n3 keys\nService manual\nCar cover included fits really well has fasteners\nCompletely standard apart from competition alloys with 4 decent tyres\nAnd carbon details\nApart from chargecooler pipe changed to metal \nM2 letters private plate included worth 1800\nCat s in its early years but was wing and wheel damage, 100% repair and can't even see any sign of repair\nSounds unreal!! \nBought as a stop gap whilst waiting for new work truck to arrive \nFull mot\nAnd highly serviced owned by my mechanic friend before so real well maintained and loved!\nAmazing head turning colour!!\nLocated nr banbury OX15 area\n \nNo test pilots \nNo rush to sell\nGenuine buyers only",
"description_section_present": true,
"image_count": 5,
"image_urls": [],
"dealer_name": null,
"dealer_id": null,
"dealer_rating": null,
"dealer_phone": "01235624951",
"is_private_seller": true
},
"advert_url": "https://www.autotrader.co.uk/car-details/202607304639887",
"scraped_url": "https://www.autotrader.co.uk/car-details/202607304639887",
"steps": [
"[+0.0s] start",
"[+0.0s] url: https://www.autotrader.co.uk/car-details/202607304639887",
"[+0.0s] at_id: 202607304639887",
"[+12.14s] driver started",
"[+17.77s] page loaded",
"[+18.91s] pre-cookie wait done",
"[+20.9s] switched into cookie iframe",
"[+22.81s] cookie button clicked",
"[+23.22s] cookie iframe gone",
"[+27.7s] title: 2017 BMW M2",
"[+28.03s] subtitle: 3.0i DCT Euro 6 (s/s) 2dr",
"[+28.07s] price: 22500",
"[+28.09s] data-testid sections: ['skip-to-content-testid', 'skip-to-footer-testid', 'at-logo-cars', 'show-menu-mobile', 'header-saved-icon', 'account-sign-in', 'nav-used-cars', 'nav-new-cars', 'nav-sell-your-car', 'nav-value-your-car', 'nav-car-reviews', 'nav-car-leasing', 'nav-electric-cars', 'nav-buy-a-car-online', 'key-information-nav', 'pricing-nav', 'overview-nav', 'description-nav', 'running-costs-nav', 'insurance-nav', 'vehicle-history-nav', 'before-you-buy-nav', 'expert-reviews-nav', 'save-advert-button', 'back-to-search-link', 'share-advert-button', 'gallery', 'gallery-media-button', 'key-information', 'retailer-section-seller-logo']",
"[+28.09s] data-gui icons: ['skip-to-content-gui', 'skip-to-footer-gui', 'atds-icon-sell', 'atds-icon-save', 'atds-icon-search', 'account-sign-in', 'atds-icon-account', 'menu-drawer', 'atds-icon-mileage', 'atds-icon-registration', 'atds-icon-fuel-type', 'atds-icon-body-type', 'atds-icon-engine', 'atds-icon-gearbox', 'atds-icon-doors', 'atds-icon-seats', 'atds-icon-emission-class', 'atds-icon-body-colour', 'atds-icon-chevron-up', 'atds-social-icons__icon--facebook', 'atds-social-icons__icon--youtube', 'atds-social-icons__icon--instagram', 'atds-social-icons__icon--tiktok', 'atds-social-icons__icon--giphy', 'atds-social-icons__icon--pinterest']",
"[+28.27s] overview section confirmed via CSS selector",
"[+28.28s] mileage: 34000",
"[+28.3s] year: 2017",
"[+28.33s] fuel: Petrol",
"[+28.34s] body_type: Coupe",
"[+28.35s] gearbox: Automatic",
"[+28.36s] doors: 2",
"[+28.38s] seats: 4",
"[+28.44s] engine: 3.0L",
"[+28.46s] emission_class: Euro 6",
"[+28.47s] colour: Blue",
"[+29.13s] range_miles: None",
"[+29.17s] data-lp-sdes not found — falling back to title parse",
"[+29.18s] make/model from page title: BMW / M2",
"[+29.85s] dealer_name: None",
"[+29.9s] dealer_id: None",
"[+29.93s] dealer_rating: None",
"[+29.96s] dealer_phone: 01235624951",
"[+30.03s] is_private_seller: True",
"[+30.68s] description_section_present: True",
"[+32.44s] description signpost clicked",
"[+32.84s] description: 755 chars",
"[+33.27s] description modal closed",
"[+33.33s] image_count from counter: 5",
"[+33.99s] gallery button clicked (fallback): //section[@data-testid='gallery']//button[.//span[text()='Gallery']]",
"[+37.17s] image grid wait timeout — proceeding anyway",
"[+37.6s] gallery images extracted: 0",
"[+37.6s] data_complete: False — missing: ['images']",
"[+37.86s] driver quit"
]
}
},
{
"stage": 2,
"label": "VRM",
"data": {
"status": "success",
"at_id": "202607304639887",
"vdata_scrape_id": "at_id_202607304639887",
"data_complete": true,
"listing": {
"vrm": "M2NVY",
"year": 2017,
"make": "BMW",
"model": "M2",
"price": 22500,
"mileage": 34000,
"colour": "Blue",
"gearbox": "Automatic",
"fuel": "Petrol",
"subtitle": "BMW M2 3.0i DCT Euro 6 (s/s) 2dr low mileage",
"dealer_id": null,
"dealer_name": null,
"image_urls": [
"https://m.atcdn.co.uk/a/media/w300/6ea14bbf533c411281128e2491c6abe9.jpg",
"https://m.atcdn.co.uk/a/media/w300/848d1b9d3bf348e49997d6652871c18a.jpg",
"https://m.atcdn.co.uk/a/media/w300/b21334f7b1e34fa09a9d9c56790a28b4.jpg",
"https://m.atcdn.co.uk/a/media/w300/a66ddad7cde5444ab47d1e079b699a02.jpg",
"https://m.atcdn.co.uk/a/media/w300/e3095fc325c74a28a25d0ca935641ae9.jpg"
]
},
"advert_url": "https://www.autotrader.co.uk/car-details/202607304639887",
"scraped_url": "https://www.zuto.com/apply/?advertId=202607304639887&device=mobile-web&utm_campaign=DeskCarPrivateFpa&utm_medium=affiliate&utm_source=autotrader",
"vehicle_data_raw": {
"type": "VEHICLE_TYPE_CAR",
"colour": "Blue",
"fuelType": "Petrol",
"make": "BMW",
"mileage": 34000,
"model": "M2",
"price": 22500,
"registration": "M2NVY",
"registrationYear": 2017,
"transmission": "Automatic",
"summary": "BMW M2 3.0i DCT Euro 6 (s/s) 2dr low mileage",
"dealerId": null,
"dealerName": null,
"imageUrls": [
"https://m.atcdn.co.uk/a/media/w300/6ea14bbf533c411281128e2491c6abe9.jpg",
"https://m.atcdn.co.uk/a/media/w300/848d1b9d3bf348e49997d6652871c18a.jpg",
"https://m.atcdn.co.uk/a/media/w300/b21334f7b1e34fa09a9d9c56790a28b4.jpg",
"https://m.atcdn.co.uk/a/media/w300/a66ddad7cde5444ab47d1e079b699a02.jpg",
"https://m.atcdn.co.uk/a/media/w300/e3095fc325c74a28a25d0ca935641ae9.jpg"
],
"advertUrl": "https://www.autotrader.co.uk/car-details/202607304639887",
"stockId": "7b4c8eb9953b49e5a96cc169dd3d3b63",
"searchId": "202607304639887"
},
"steps": [
"start",
"at_id: 202607304639887",
"url: https://www.zuto.com/apply/?advertId=202607304639887&device=mobile-web&utm_campaign=DeskCarPrivateFpa&utm_medium=affiliate&utm_source=autotrader",
"driver started",
"page loaded",
"__NEXT_DATA__ found",
"vrm: M2NVY",
"make/model: BMW / M2",
"data_complete: True",
"driver quit"
]
}
}
]
meta: processed_data
{
"scrape_log": [
{
"at": "2026-07-30 17:14:25",
"reasons": [
"first_ingest"
]
}
],
"description": "Forsale\n\n2017 bmw m2 f87\n\nMint condition \nVery clean \n34,000 miles\nGhost alarm and hijack mode fitted\n3 keys\nService manual\nCar cover included fits really well has fasteners\nCompletely standard apart from competition alloys with 4 decent tyres\nAnd carbon details\nApart from chargecooler pipe changed to metal \nM2 letters private plate included worth 1800\nCat s in its early years but was wing and wheel damage, 100% repair and can't even see any sign of repair\nSounds unreal!! \nBought as a stop gap whilst waiting for new work truck to arrive \nFull mot\nAnd highly serviced owned by my mechanic friend before so real well maintained and loved!\nAmazing head turning colour!!\nLocated nr banbury OX15 area\n \nNo test pilots \nNo rush to sell\nGenuine buyers only",
"colour_detail": "Blue",
"price_history": [
{
"price": 22500,
"recorded_at": "2026-07-30 17:14:25"
}
],
"images_history": [],
"mileage_history": [
{
"mileage": 34000,
"recorded_at": "2026-07-30 17:14:25"
}
],
"description_history": [
{
"hash": "b101675b1b0b125a2db04c25f8d6f952",
"text": "Forsale\n\n2017 bmw m2 f87\n\nMint condition \nVery clean \n34,000 miles\nGhost alarm and hijack mode fitted\n3 keys\nService manual\nCar cover included fits really well has fasteners\nCompletely standard apart from competition alloys with 4 decent tyres\nAnd carbon details\nApart from chargecooler pipe changed to metal \nM2 letters private plate included worth 1800\nCat s in its early years but was wing and wheel damage, 100% repair and can't even see any sign of repair\nSounds unreal!! \nBought as a stop gap whilst waiting for new work truck to arrive \nFull mot\nAnd highly serviced owned by my mechanic friend before so real well maintained and loved!\nAmazing head turning colour!!\nLocated nr banbury OX15 area\n \nNo test pilots \nNo rush to sell\nGenuine buyers only",
"recorded_at": "2026-07-30 17:14:26"
}
]
}