Coches.net Scraper avatar

Coches.net Scraper

Pricing

from $2.39 / 1,000 vehicle listings

Go to Apify Store
Coches.net Scraper

Coches.net Scraper

Scrape Coches.net and Motos.net used car listings in Spain: price, mileage, year, fuel, VIN, equipment, dealer or private seller, phone, location and photos. Filters, search URLs and incremental tracking.

Pricing

from $2.39 / 1,000 vehicle listings

Rating

0.0

(0)

Developer

ParseBird

ParseBird

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Categories

Share

Coches.net Scraper

Coches.net Scraper extracts used car listings from Coches.net, the Spanish car marketplace, and motorcycle listings from its sister site Motos.net: price, mileage, year, fuel, gearbox, power, VIN, full equipment, dealer or private seller, phone, location and photos, as clean JSON, CSV or Excel.

Search cars, vans, motorhomes, classic cars, microcars and motorcycles by keyword, make, model, price, year, mileage, fuel, gearbox, body type, province, power and DGT label, or paste any Coches.net search URL, and get 100+ fields per vehicle, with incremental tracking of new, changed and sold listings.

Copy to your AI assistant

Copy this block into ChatGPT, Claude, Cursor, or any LLM to start using this actor.

Apify Actor: parsebird/coches-net-scraper. Scrapes vehicle listings from Coches.net (Spain's car classifieds: cars, vans, motorhomes, classic cars, microcars) and Motos.net (motorcycles). Call via ApifyClient: client.actor("parsebird/coches-net-scraper").call(run_input={"vehicleType": "cars", "make": "BMW", "model": "Serie 3", "priceMax": 30000, "yearMin": 2018, "province": "Madrid", "maxResults": 100}). Inputs: vehicleType (string: cars | vans | motorhomes | classics | microcars | motorcycles | all, default cars), query (string keyword, or JSON array of keywords run as separate searches), startUrls (array of Coches.net / Motos.net search-results or listing URLs; filters are read from the URL), make (string), model (string), listingCondition ("" used site default | km0 | new | all), priceMin, priceMax, yearMin, yearMax, kmMin, kmMax, powerMin, powerMax (integers), fuelType (gasolina | diesel | electrico | hibrido | hibrido-enchufable | glp | cng), transmission (automatic | manual), bodyType (array: sedan, coupe, convertible, estate, minivan, suv, pickup, van), sellerType (all | professional | private), province (comma-separated Spanish provinces), environmentalLabel (array: 0, ECO, C, B), onlyWithWarranty, onlyCertified (booleans), sortBy ("" relevance | newest | price_asc | price_desc | km_asc | km_desc | year_desc | year_asc), maxResults (integer, total listings, default 100, 0 = no limit), includeDetails (boolean, default true: description, VIN, equipment, specs, views, dealer address), descriptionMaxLength (integer), compact (boolean), excludeEmptyFields (boolean), incrementalMode (boolean), stateKey (string), emitUnchanged, emitExpired, skipReposts (booleans). Output: one record per listing with listingId, url, title, vehicleType, make, model, version, year, kilometers, fuelType, transmission, power, cubicCapacity, bodyType, environmentalLabel, priceValue, priceCurrency, financedPrice, marketPriceAverage, marketPriceRank, priceDropAmount, financingMonthlyFee, warrantyMonths, listingType, sellerName, sellerType, sellerId, sellerRatingAverage, phone, city, province, region, imageUrl, galleryUrls, publishedAt; with details also vin, description, color, numberOfDoors, numberOfSeats, trimLevel, topSpeed, acceleration, consumptionMixed, tankCapacityLiters, trunkCapacityLiters, equipment, optionalEquipment, viewCount, favoriteCount, sellerAddress, sellerLatitude, sellerLongitude, sellerWebsite; in incremental mode also changeType (NEW | UPDATED | UNCHANGED | REAPPEARED | EXPIRED), firstSeenAt, previousPrice, isRepost, repostOfId. Pricing: pay per listing saved. Full API spec: https://apify.com/parsebird/coches-net-scraper/api. Get your token: https://console.apify.com/settings/integrations.

What is Coches.net Scraper?

Coches.net Scraper turns Coches.net and Motos.net listings into a structured dataset. At the time of writing (October 2026), Coches.net lists about 270,000 second-hand cars plus vans, motorhomes, classic cars and microcars, and Motos.net about 37,000 motorcycles.

Pick a vehicle type, add a keyword, a make and model or any of the filters, and click Start. You can also set up your search on Coches.net in your browser, copy the URL and paste it into the actor. It works as a Coches.net API alternative: no account, API key or browser needed.

What can Coches.net Scraper do?

  • 🔎 Search like on the site. Keyword, make, model, price, year, mileage, fuel, gearbox, body type, seller type, province, power, DGT environmental label, warranty and certification filters, with 8 sort orders.
  • 🔗 Paste search URLs. Every filter in a Coches.net or Motos.net search-results URL is applied. Single listing URLs work too.
  • 🚐 Every section. Cars, vans and commercial vehicles, motorhomes and caravans, classic and competition cars, microcars (sin carnet) and motorcycles, or all of them in one run.
  • 📋 Full vehicle details. Seller description, VIN, standard and optional equipment, version and trim, doors, seats, top speed, 0-100 km/h, fuel consumption, dimensions, weight, tank and trunk size, original manufacturer price, views and favorites.
  • 🏢 Dealer data. Dealer name, phone, rating, address, postal code, coordinates, website, opening hours, services and stock page.
  • 💶 Price insight. Price, financed price, Coches.net's market price average and price rank, recent price drops, financing fee, term, APR and lender.
  • 🔁 Incremental monitoring. Tag listings NEW, UPDATED, UNCHANGED, REAPPEARED or EXPIRED against earlier runs, spot price changes and relisted vehicles.
  • 📅 Scheduling. Run daily or hourly with Apify Schedules to watch new stock or price drops.
  • 🔌 API and integrations. Use the Apify API, or send results to Google Sheets, Zapier, Make, Slack or webhooks with Apify integrations. Export as JSON, CSV, Excel, XML or HTML.

What data can you extract from Coches.net?

FieldDescription
title, make, model, versionListing title, brand, model and exact version (e.g. "2.0 D4 AWD Momentum Auto")
year, kilometersRegistration year and mileage
fuelType, transmission, power, cubicCapacityFuel, gearbox, horsepower (CV) and engine size (cc)
bodyType, drivenWheels, environmentalLabelBody style, drive (4x4 / front / rear) and DGT label (0, ECO, C, B)
priceValue, financedPrice, hasTaxesCash price in EUR, price when financed, VAT included
marketPriceAverage, marketPriceRankCoches.net's average market price for similar cars and its price rating
priceDropAmount, priceDropPercent, priceDropDateMost recent price reduction
financingMonthlyFee, financingTermMonths, financingAprFinancing offer shown on the listing
warrantyMonths, listingTypeWarranty and offer type (Ocasión, Km0, Nuevo, Demostración...)
sellerName, sellerType, sellerRatingAverage, phoneDealer or private seller, rating and phone number
city, province, regionWhere the vehicle is
imageUrl, galleryUrls, imageCountMain photo and all photo URLs
vin, description, colorVIN (when the seller provides it), seller description, color
equipment, optionalEquipmentStandard and optional equipment lists, also grouped by category
topSpeed, acceleration, consumptionMixedTop speed (km/h), 0-100 km/h (s), consumption (l/100 km)
numberOfDoors, numberOfSeats, trunkCapacityLitersDoors, seats, tank and trunk size, dimensions and weight
viewCount, favoriteCountHow many times the listing was viewed and saved
sellerAddress, sellerLatitude, sellerLongitudeDealer address and map coordinates, website, opening hours
publishedAt, createdAtWhen the listing was (re)published and first created (UTC)
changeType, previousPrice, isRepostIncremental mode: what changed since the last run

How to scrape Coches.net

  1. Open Coches.net Scraper in Apify Console and sign in (or create a free account).
  2. Choose the Vehicle type, for example Cars (coches) or Motorcycles (Motos.net).
  3. Type a Keyword, or fill in Make, Model and any of the Filters (price, year, mileage, fuel, province...).
  4. Or paste one or more Search URLs copied from your browser on Coches.net or Motos.net.
  5. Set Max listings. Leave Include full details on for descriptions, VIN, equipment and specs.
  6. Click Start and wait for the run to finish.
  7. Download the results from the Output tab as JSON, CSV or Excel, or read them through the API.

How much does it cost to scrape Coches.net?

Coches.net Scraper uses pay-per-event pricing: you pay for each listing saved to the dataset. Compute and proxy costs are included in the event price, and Include full details has no extra charge.

EventFreeBronzeSilverGold
listing (per listing saved)$0.00299$0.00279$0.00259$0.00239
Per 1,000 listings$2.99$2.79$2.59$2.39

For example, 1,000 used cars with full details cost $2.99 on the Free plan. In incremental mode you pay only for the listings that are saved (by default the new, updated and reappeared ones), so a daily monitoring run that finds 40 new cars costs about $0.12. You can set a maximum cost per run in Apify Console, and the actor stops when it's reached.

Input parameters

ParameterTypeRequiredDefaultDescription
vehicleTypestringNocarscars, vans, motorhomes, classics, microcars, motorcycles or all
querystringNo—Keyword, or a JSON array of keywords such as ["gti","cupra"] (one search each)
startUrlsarrayNo—Coches.net / Motos.net search-results or listing URLs
makestringNo—Brand, e.g. BMW, Seat, Mercedes-Benz
modelstringNo—Model of that make, e.g. Serie 3, Ibiza
listingConditionstringNo"""" used (site default, includes Km 0), km0, new or all
priceMin / priceMaxintegerNo—Price range in EUR
yearMin / yearMaxintegerNo—Registration year range
kmMin / kmMaxintegerNo—Mileage range
fuelTypestringNo""gasolina, diesel, electrico, hibrido, hibrido-enchufable, glp, cng
transmissionstringNo""automatic or manual
bodyTypearrayNo—sedan, coupe, convertible, estate, minivan, suv, pickup, van
sellerTypestringNoallall, professional (dealers) or private
provincestringNo—Spanish province(s), comma-separated, e.g. Barcelona, Girona
powerMin / powerMaxintegerNo—Engine power range in hp (CV)
environmentalLabelarrayNo—DGT labels: 0, ECO, C, B
onlyWithWarrantybooleanNofalseOnly listings with a warranty
onlyCertifiedbooleanNofalseOnly certified vehicles
sortBystringNo"""" relevance, newest, price_asc, price_desc, km_asc, km_desc, year_desc, year_asc
maxResultsintegerNo100Total listings to save across all searches, 0 = no limit
includeDetailsbooleanNotrueAdd description, VIN, equipment, specs, views and dealer details
descriptionMaxLengthintegerNo0Cut descriptions to this many characters (0 = full text)
compactbooleanNofalseOnly the core fields
excludeEmptyFieldsbooleanNofalseDrop empty fields from each record
incrementalModebooleanNofalseCompare with earlier runs and tag changes
stateKeystringNo—Name of the tracked search (auto-generated from the filters if empty)
emitUnchangedbooleanNofalseIncremental mode: also save unchanged listings
emitExpiredbooleanNofalseIncremental mode: also save listings that disappeared
skipRepostsbooleanNofalseIncremental mode: skip relisted vehicles
proxyConfigurationobjectNo—Optional proxy; not needed in most cases

When startUrls are given, the search fields are taken from each URL. Price, year, mileage, power and seller type from the input still narrow every URL, and sortBy (if set) overrides the URL's order. With several searches, maxResults is shared between them.

Output example

One record per listing. Lists are shortened here.

{
"listingId": "71764123",
"url": "https://www.coches.net/volvo-xc40-20-d4-awd-momentum-auto-5p-diesel-2019-en-granada-71764123-covo.aspx",
"title": "VOLVO XC40 2.0 D4 AWD Momentum Auto",
"vehicleType": "cars",
"make": "VOLVO",
"makeId": 48,
"model": "XC40",
"modelId": 1233,
"version": "2.0 D4 AWD Momentum Auto",
"year": 2019,
"kilometers": 88671,
"fuelType": "Diésel",
"bodyType": "SUV / 4x4",
"transmission": "Automático",
"drivenWheels": "4x4",
"power": 190,
"cubicCapacity": 1969,
"environmentalLabel": "C",
"priceValue": 22990,
"priceCurrency": "EUR",
"financedPrice": 20345,
"hasTaxes": true,
"taxType": "IVA",
"marketPriceAverage": 24400,
"marketPriceRank": 3,
"financingMonthlyFee": 375,
"financingTermMonths": 84,
"financingApr": 11.84,
"hasReservation": true,
"warrantyMonths": 12,
"warranty": "12 meses (1 año)",
"listingType": "Ocasión",
"sellerName": "Crestanevada",
"sellerType": "professional",
"sellerId": "130371",
"sellerRatingAverage": 4.1,
"sellerRatingCount": 77,
"location": "Cúllar Vega, Granada",
"city": "Cúllar Vega",
"province": "Granada",
"provinceId": 18,
"region": "Andalucía",
"phone": "858211088",
"imageUrl": "https://a.ccdn.es/cnet/vehicles/20979360/c9f5497b-aaa7-499b-8fa8-ce98f0aa2b00.jpg",
"imageCount": 25,
"galleryUrls": [
"https://a.ccdn.es/cnet/vehicles/20979360/c9f5497b-aaa7-499b-8fa8-ce98f0aa2b00.jpg",
"https://a.ccdn.es/cnet/vehicles/20979360/13b50033-76a4-428c-8c1a-92d0abdf0881.jpg"
],
"publishedAt": "2026-10-16T15:08:34Z",
"createdAt": "2026-10-16T15:08:34Z",
"source": "coches.net",
"scrapedAt": "2026-10-16T15:11:48.785Z",
"vin": "YV1XZA6VCL2264733",
"description": "El Volvo XC40 2.0 D4 AWD Momentum Auto es un SUV premium que combina diseño escandinavo, confort y rendimiento…",
"status": "active",
"color": "Rojo",
"numberOfDoors": 5,
"numberOfSeats": 5,
"trimLevel": "Momentum",
"topSpeed": 210,
"acceleration": 7.9,
"consumptionMixed": 5,
"tankCapacityLiters": 54,
"trunkCapacityLiters": 432,
"lengthMm": 4425,
"widthMm": 1863,
"heightMm": 1652,
"weightKg": 1823,
"manufacturerPrice": 42166,
"equipment": [
"Acabado MOMENTUM (clasificación JATO: mediano M1)",
"Cuatro frenos de disco siendo cuatro ventilados"
],
"optionalEquipment": ["Asistencia de Aparcamiento", "Pack Business Pro", "Pack Climate"],
"viewCount": 0,
"favoriteCount": 0,
"sellerAddress": "C/ Ramal de Corpas, 7, nave 11, 18195",
"sellerPostalCode": "18195",
"sellerLatitude": 37.158571,
"sellerLongitude": -3.678796,
"sellerWebsite": "https://www.crestanevada.es/",
"sellerStockUrl": "https://www.coches.net/concesionario/concesionariocrestanevada/",
"sellerServices": ["Certificación del vehículo", "Financiación personalizada", "Seguros de coche"]
}

In incremental mode each record also has changeType, firstSeenAt, isRepost, repostOfId and repostDetectedAt, plus previousPrice when the price changed. Download the dataset in JSON, CSV, Excel, XML or HTML from the Output tab.

Use the Coches.net Scraper API

Start the actor and read its results from your own code with the Apify API clients. Find your token in Apify Console → Settings → Integrations.

Python (apify-client):

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("parsebird/coches-net-scraper").call(run_input={
"vehicleType": "cars",
"make": "Seat",
"model": "Ibiza",
"priceMax": 15000,
"province": "Barcelona",
"maxResults": 200,
})
for car in client.dataset(run["defaultDatasetId"]).iterate_items():
print(car["title"], car["priceValue"], car["kilometers"], car["url"])

JavaScript (apify-client):

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });
const run = await client.actor('parsebird/coches-net-scraper').call({
startUrls: [{ url: 'https://www.coches.net/segunda-mano/?MakeIds%5B0%5D=7&MaxPrice=30000' }],
sortBy: 'newest',
maxResults: 100,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((car) => console.log(car.title, car.priceValue, car.province));

Monitor new Coches.net listings and price changes

Turn on Incremental mode and run the same search on a schedule:

  1. The first run saves every listing and remembers them under the State key (or a key made from your filters).
  2. Later runs save only listings that are NEW, UPDATED (price, financed price, mileage, year, title, photo count, reservation, seller, description or status changed) or REAPPEARED. Add emitUnchanged to get the rest too.
  3. With emitExpired, listings that disappeared since the last run are saved as EXPIRED (sold or removed). This is only checked when the whole search is read, so keep maxResults above the search size (or 0).
  4. A new listing that matches an expired one (same VIN, or same seller, model, year and mileage) is flagged with isRepost and repostOfId. Turn on skipReposts to leave those out.

Keep the same filters and options between runs of one state key, so the comparison stays meaningful.

Use cases

  • Car dealers and buyers: track the stock of a make, model or province and get new listings every morning.
  • Price monitoring: follow price drops and compare asking prices with Coches.net's own market price average.
  • Market research: analyse used car prices by make, model, year, mileage, fuel and region across Spain.
  • Lead generation: collect dealer names, phones, addresses, websites and ratings.
  • Valuation models: build datasets of prices with mileage, year, version, equipment and specs.
  • Motorcycle market: the same data for motorcycles from Motos.net.

How it works

  1. The actor builds a Coches.net search from your filters, or reads the filters of each pasted URL.
  2. It pages through the results (100 listings per page) and removes duplicates across searches.
  3. With Include full details on, it reads each listing's detail data (description, VIN, equipment, specs, statistics, dealer).
  4. Records are saved to the dataset as they come in. Each listing is charged once, when it's saved.
  5. If Coches.net starts refusing requests, the actor switches to Apify Proxy by itself.

FAQ

How many listings can I scrape? There's no fixed cap: set maxResults to 0 to read a whole search. In our tests on Apify, 3,000 cars with full details took about 1.5 minutes, and without details it's faster still.

Can I scrape motorcycles? Yes. Choose Motorcycles (Motos.net) or paste a Motos.net URL. On Motos.net the model is matched as a keyword, because Motos.net doesn't filter by model id.

Why do keyword results include near matches? The keyword goes to Coches.net's own search, which also matches similar words (for example "gti" also finds some "GTD" cars). Combine the keyword with make, model or other filters for tighter results.

Why is the phone empty for some listings? Some sellers, mostly private ones, hide their number on Coches.net. The actor returns the phone only when the listing shows it.

Why is the VIN missing for some cars? The VIN is filled in only when the seller adds it to the listing.

Which time zone are dates in? All timestamps (publishedAt, createdAt, scrapedAt) are UTC.

Can I schedule runs and connect them to other tools? Yes. Use Apify Schedules for recurring runs and integrations for Google Sheets, Slack, Zapier, Make, n8n or webhooks. Results are also available through the API.

Something doesn't work or a field is missing? Open an issue on the actor's Issues tab with the input you used, and we'll look into it.

This actor collects publicly available vehicle listing data from Coches.net and Motos.net. Seller names and phone numbers can be personal data, so if you process them, make sure you have a lawful basis under the GDPR and Spain's data protection law, and respect the sites' terms. Scraping public data is generally lawful, but you are responsible for how you use it. Read more in Apify's blog post Is web scraping legal?, and ask a lawyer if you're unsure.

Other vehicle and Spain scrapers

ActorWhat it does
Milanuncios ScraperClassified ads from Milanuncios, Spain's general marketplace
Fotocasa ScraperSpanish property listings from Fotocasa
Habitaclia.com ScraperSpanish property listings from Habitaclia
AutoTrader.co.uk ScraperUK used and new car listings
AutoTrader Canada ScraperCanadian car listings from AutoTrader.ca
Cars.com Scraper with ContactsUS car listings with dealer phone numbers
IAAI Vehicles ScraperSalvage and insurance auction vehicles from IAAI
Turo ScraperCar rental listings, prices and hosts from Turo