Coches.net Scraper - Spanish Used Car Listings & Prices
Pricing
from $2.00 / 1,000 listings
Coches.net Scraper - Spanish Used Car Listings & Prices
Scrape coches.net used, km 0 and new car listings in Spain: cash and financed prices, year, mileage, fuel, horsepower, DGT label, province, dealer or private seller, warranty and photos. Search by URL or by make, model, province and filters.
Pricing
from $2.00 / 1,000 listings
Rating
0.0
(0)
Developer
SR
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Coches.net Scraper
The Coches.net scraper collects Spanish car listings from coches.net for dealers, importers and pricing analysts. Search used (segunda mano), km 0 or new cars by make and model, Spanish province, price, year, mileage and fuel, or paste a coches.net search URL. Each dataset row is one car advertisement with the cash price, the financed price when the dealer offers one, vehicle specifications, the DGT environmental label, seller details, warranty and original photos.
What the Coches.net scraper delivers
Use this actor to compare asking prices across provinces, build a shortlist of vehicles for import, review dealer inventory, or collect a dated snapshot for market research. The cash price and dealer-financed price are separate fields so you can compare the same type of offer. Price reductions, the source's market average and its price rating add context where the listing provides them. These are asking prices and source estimates; they do not represent completed sales or guaranteed valuations.
The actor supports cars in the used, km 0 and new sections. It reads listing information. Detailed equipment lists, vehicle descriptions, transmission filters, motorcycles, vans and motorhomes are outside the current scope. A car listed by a dealer and a private seller can have different optional fields. The output preserves those differences with null values instead of filling missing information with estimates.
Use cases
- Dealer stock and pricing. Track how competing dealers in your province price the same make, model and year, and spot reductions through
previous_priceandprice_drop_percent. - Import sourcing. Filter by year, mileage, fuel and DGT label, sort by price, and export a shortlist with the dealer name, rating and warranty months for each car.
- Market research on Spanish used car prices. Run the same search on a schedule and compare snapshots by
listing_idandfetched_atto follow asking prices, stock levels and time on the market. - Finance offers. Compare
pricewithfinanced_priceand the stated instalment, term and APR to see how dealers use financing to lower the advertised price. - Electrified fleet monitoring. Select the CERO or ECO label to watch supply and prices of electric and hybrid cars per province.
Coches.net scraper input
Start with a make and a result limit. make accepts a name or slug, such as Toyota or Mercedes-Benz. model requires make. The actor checks that coches.net applied your selection and rejects an unknown make or model. This helps prevent a misspelt model from silently returning every car from the make.
For a more focused search, add provinces, an array of Spanish province names or slugs. For example, Madrid and A Coruña are recognised. Set price_min and price_max for cash prices in EUR, year_min and year_max for registration year, or km_min and km_max for mileage in kilometres. A minimum must not exceed its maximum. power_min_hp and power_max_hp select engine power in horsepower.
fuel_types accepts diesel, petrol, electric, hybrid, plug_in_hybrid, lpg, cng and other. environmental_labels accepts zero, eco, c and b; zero corresponds to the DGT CERO label. Multiple values match any selected value. seller_type accepts all, professional or private. with_warranty requires listings that indicate a warranty, and keywords adds free-text search terms.
Choose offer_type used, km0 or new. The default is used. sort supports relevance, price_asc, price_desc, year_asc, year_desc, km_asc and km_desc. Relevance can show promoted top advertisements; an explicit price, year or mileage order follows the source's chosen order. include_top_ads, enabled by default, controls whether promoted listings are included.
A supplied url takes priority over the other search fields. The result limit, top-ad setting and continuation cursor still apply. Supply a coches.net results URL, including its filters. Search URLs using /search/ are accepted and converted to an equivalent results search. Detail URLs for a single advertisement are rejected. The actor starts at page one and manages pagination itself.
max_items defaults to 100 and accepts up to 10,000 unique car listings. It is a maximum rather than a promise: a narrow search may have fewer results. Promoted advertisements are deduplicated by their listing identifier along with ordinary advertisements. cursor resumes a search from the next_cursor of an earlier run.
Example input
This search for a Volkswagen Golf in Madrid, registered in 2018 or later with at most 100,000 km, cheapest first, returned 413 matching cars on coches.net:
{"make": "Volkswagen","model": "Golf","provinces": ["Madrid"],"year_min": 2018,"km_max": 100000,"sort": "price_asc","max_items": 30}
Coches.net scraper output
The dataset contains one row per unique listing. Core fields are listing_id, url, title, price, currency, brand, condition, country, image_url, position, source and fetched_at. Currency is EUR and the market is ES. The condition label is preserved as displayed by the source in Spanish; offer_type provides a separate normalised value.
Vehicle fields include make and model names and identifiers, year, mileage in kilometres, fuel label and identifier, horsepower, DGT environmental label and body-type identifier. Mileage can be null for new cars. A fuel value or horsepower may be absent from an individual advertisement; the actor keeps that field null.
Commercial fields include financed price, stated financing provider and terms, previous price, price reduction, market average, seller type, dealer name, dealer rating and review count, warranty flag and warranty months. Financing conditions belong to the particular advertisement and should be confirmed with its seller. Seller phone numbers are delivered only for professional dealers. Private sellers always have a null phone field, including listings where a contact number is present in the source data.
The row also contains province, city and region where supplied, original gallery images, image count, publication and creation timestamps, certification and reservation flags, and the source page. fetched_at is a UTC retrieval timestamp. Keep it with the listing identifier when comparing successive snapshots because asking prices, photos and availability can change.
Example output
One row from the Golf search above, delivered on 5 October 2026. The gallery is shortened to two of its 19 images and the dealer phone field is left out here; everything else is as delivered:
{"source": "coches-net-scraper","fetched_at": "2026-10-05T21:21:38.197Z","listing_id": "71634461","url": "https://www.coches.net/volkswagen-golf-business-10-tsi-81kw-110cv-5p-gasolina-2018-en-madrid-71634461-covo.aspx","title": "VOLKSWAGEN Golf Business 1.0 TSI","brand": "VOLKSWAGEN","condition": "Ocasión","currency": "EUR","country": "ES","make": "VOLKSWAGEN","make_id": 47,"model": "Golf","model_id": 89,"price": 13790,"financed_price": 11990,"includes_taxes": true,"financing": {"lender": "lendrock","monthly_instalment": 143.32,"terms_months": 120,"apr": 7.9348,"down_payment": 0},"previous_price": null,"price_drop_percent": null,"price_rating": "fair","market_average_price": 13600,"year": 2018,"mileage_km": 90262,"fuel_type": "Gasolina","fuel_type_id": 2,"power_hp": 110,"environmental_label": "c","body_type_id": 1,"offer_type": "used","province": "Madrid","province_id": 28,"city": "Leganés","region": "Madrid","seller_type": "professional","seller_name": "Muy Car Madrid - Leganés","seller_id": "133987","seller_rating": 4.6,"seller_review_count": 49,"has_warranty": true,"warranty_months": 12,"is_certified": false,"has_reservation": true,"is_top_ad": false,"is_urgent": false,"image_url": "https://a.ccdn.es/cnet/vehicles/20877445/95276bd3-0554-43ce-9367-26fc40117b61.jpg","images": ["https://a.ccdn.es/cnet/vehicles/20877445/95276bd3-0554-43ce-9367-26fc40117b61.jpg","https://a.ccdn.es/cnet/vehicles/20877445/4643805f-5f0b-4f42-bb12-aea13c2bcb98.jpg"],"image_count": 19,"published_at": "2026-09-30T14:01:29.000Z","created_at": "2026-09-30T14:01:29.000Z","page": 1,"position": 4}
The run's OUTPUT record includes total_results, pages_fetched, partial, warnings, search and next_cursor. The source's total counts ordinary results; promoted rows can make delivered counts differ. The summary record reports delivered listings, pages fetched and the free-plan allowance remaining. The actor automatically follows continuation cursors while its run budget allows. If a page remains unavailable, it retains the listings already collected and reports the unfinished search. Use the returned cursor with the same search to resume.
How to scrape coches.net
- Open the actor and enter a make, for example Toyota, or paste a coches.net results URL.
- Add a model, provinces and the price, year, mileage, fuel or DGT label filters you need.
- Set
max_itemsto the number of cars you want and start the run. - Download the dataset as JSON, CSV or Excel, or read it through the Apify API and integrations.
- Schedule the same input daily or weekly to build a price history.
How it compares to other ways to get coches.net data
Browsing coches.net by hand works for a handful of cars but does not give you a spreadsheet of hundreds of listings with consistent fields, dates and positions.
Writing your own coches.net scraper means maintaining page parsing, pagination, deduplication of promoted ads and retries yourself, and keeping up with changes to the site. This actor delivers a stable, documented row instead.
The coches.net developer zone offers search boxes to embed on your own website. Those widgets send visitors to coches.net; they do not hand you listing data to analyse.
Other coches.net scrapers in the Apify Store differ in fields and pricing, so compare the output before you choose. This actor keeps the dealer-financed price separate from the cash price, includes the stated financing terms, the DGT environmental label, dealer rating and warranty months, checks that a requested make and model were actually applied instead of silently widening the search, and never returns private sellers' phone numbers.
Pricing
The intended pricing is $0.002 per delivered listing plus a $0.0005 run-start event. Check the actor's current Store pricing before running; the Store price controls the actual charge. Listing events are charged only for rows delivered to the dataset. Repeated advertisements are not charged twice within a run. A search with no matching cars produces no listing charge and retains only the run-start event.
Users without a paid Apify plan receive at most ten listings per run. The actor applies that limit before collecting additional pages and reports the allowance in the run output. Paid users can request the full supported limit. Apify's own platform usage is separate from the listing event price.
FAQ
Can I collect both used and new cars?
Yes. Choose used, km0 or new with offer_type. Run separate searches when comparing those groups because their mileage and pricing conventions differ.
Why is a financed price lower than the cash price?
A dealer may advertise a different purchase price when financing is arranged through its lender. Compare price with financed_price and review the stated financing conditions. The actor does not calculate a total borrowing cost.
Can I export results to a spreadsheet?
Yes. Apify datasets support formats including JSON, CSV and Excel. Use scalar fields for a flat spreadsheet; gallery images and financing conditions are nested fields that are easiest to preserve in JSON.
Does the actor collect private phone numbers?
No. It returns business phone numbers for professional dealers where supplied. Phone fields for private sellers are always null.
What happens if the requested model does not exist?
The actor returns an invalid-input message. It does not deliver a broader make search as though it matched your model. Correct the model name and start a new search.
Can I paste a coches.net URL instead of filling in the fields?
Yes. Copy the address of a coches.net results page with your filters applied and put it in url. It takes priority over the other search fields; max_items, include_top_ads and cursor still apply. A link to a single car advertisement is rejected.
How many cars can one run return?
Up to 10,000 unique listings per run, limited by how many cars match your search. For larger collections, split the search by province, year or fuel type, or continue with the returned next_cursor.
Is there a coches.net API for market data?
The developer zone of coches.net offers embeddable search widgets rather than a data feed of listings. This actor works as a coches.net API for that purpose: start it with a JSON input through the Apify API and receive structured JSON rows back.