ActorStack.dev

The market-average price and price rank coches.net publishes — and what they are worth

Coches.net computes its own valuation for each model and publishes it next to the asking price. Two fields, filled on 77.6% of listings, that replace a pricing model you would otherwise have to build.

By Oswaldo Carabano7 min read

Short answer

`price_average_indicator_eur` is coches.net's own estimate of what a given model is worth on the Spanish market, and `price_rank_indicator` places a specific listing against that estimate. Together they let you find cars asking below their own marketplace's valuation in one query. Measured on 550 listings, both are filled on 77.6% overall — 86.6% of dealer listings but only 38.2% of private ones.

Key points

  • The valuation is the marketplace's, not an independent one. That is its strength — it is the number the market itself publishes — and its limit.
  • Coverage is 77.6% overall, and it splits sharply by seller: 86.6% for dealers against 38.2% for private sellers.
  • Filtering on price rank replaces a residual-value model for the common case of "find cars priced below market".
  • Of the eleven coches.net scrapers on Apify at the time of writing, one other exposes these two fields.
  • Because the field is absent on 22.4% of rows, any screen built on it silently excludes those cars unless you handle the null explicitly.
On this page6 sections

Most car-data projects begin by building a valuation model, because the obvious question — “is this car cheap?” — needs a reference price. Coches.net publishes one. Two fields, filled on 77.6% of listings, that answer the question the model was going to answer.

What the two fields are

  • price_average_indicator_eur — coches.net's own estimate of what this model is worth on the Spanish market.
  • price_rank_indicator — where this particular listing sits against that estimate.

The marketplace computes the estimate itself and publishes it next to the asking price, in the search results. This Actor passes both through unchanged rather than deriving anything from them, which is deliberate: dressing somebody else's estimate up as your own valuation is how a dataset acquires an error nobody can trace.

Coverage, and the dealer/private split

Measured on 550 listings across 35 makes and 38 provinces:

SegmentValuation present
All listings77.6%
Dealer listings86.6%
Private listings38.2%

That gap is the single most important thing on this page. A screen filtered on the valuation is not a screen of the market — it is a screen of the dealer market plus a third of the private market, and any conclusion about private-versus-dealer pricing drawn from it inherits the bias.

Coches.net does not document why the coverage differs. The measurement stands; the explanation is not mine to give.

Using them to find underpriced cars

The naive version is one comparison: asking price below the estimate. The version that survives contact with the data uses both fields and a percentage:

the screen, in pseudo-SQL
SELECT ad_id, make, model, year, km, price_eur,
       price_average_indicator_eur AS market_eur,
       ROUND(100.0 * (price_average_indicator_eur - price_eur)
             / price_average_indicator_eur, 1) AS gap_pct
FROM listings
WHERE price_average_indicator_eur IS NOT NULL
  AND price_eur < price_average_indicator_eur * 0.90
  AND price_rank_indicator IN ('below_market', 'good_price')
  AND data_age_hours < 48
ORDER BY gap_pct DESC;

The data_age_hours condition is not decoration. A bargain from a week-old cached row is frequently a car that has already sold, and the freshness fields exist precisely so this can be a condition rather than a hope.

The full workflow, including the gaps that look like bargains and are not, is in finding used cars priced below market.

Three honest limits

  1. It is the marketplace's estimate, not an independent one. That is its value — it is the number the market itself publishes and buyers are shown — and it is not a claim about accuracy. Coches.net does not publish the methodology behind it.
  2. It is missing on 22.4% of listings, unevenly.
  3. It is a model-level average. A 320d Touring with 40,000 km and one with 180,000 km are compared against the same reference, which is why mileage has to be in your screen even though the valuation appears to have priced it in. It has not.

Handling the missing 22.4%

The dangerous failure is silent exclusion. A query with price_eur < price_average_indicator_eur * 0.9 and no null handling quietly drops every listing without a valuation — which is most private sellers, often the cheapest segment.

Three defensible approaches:

  • Exclude explicitly and report the count you removed. Honest and easy.
  • Impute from your own rows: group by make, model and year band and use the median asking price of the group. Weaker than the site's estimate but it covers everything.
  • Segment the analysis: run dealers and private sellers separately and never compare the two directly, since their coverage differs by more than two to one.

Building your own valuation instead

Worth doing if valuation is your product rather than a filter. The inputs are all at 100% coverage — make, model, year, mileage, power, province, fuel type, seller type — which is a better feature set than most public car datasets offer, and the site's own estimate becomes a benchmark to test yours against rather than a dependency.

For everyone else, two fields that already exist beat a model you have to maintain. Of the eleven coches.net scrapers on Apify at the time of writing, one other exposes them — which is the actual reason this page exists.

Frequently asked questions

What is `price_average_indicator_eur`?
Coches.net's own estimate of what a given model is worth on the Spanish market, published alongside the asking price and passed through unchanged by this Actor.
How reliable is coches.net's price rank?
It is reliable as a record of what the marketplace itself says, which is often exactly what you want. It is not an independent valuation, and it is missing on 22.4% of listings — mostly private ones.
Why is the market-average price missing on private listings?
Measured on the same 550-listing sample, it is present on 86.6% of dealer listings and only 38.2% of private ones. The site does not document why; the difference is large enough that it should shape which segment you screen.

Sources

Every URL below was requested and returned a page on the date shown.

  1. Operator claimchecked 18 Aug 2026
    Coches.net Car Listings & Dealer Scraper — Actor README and input schemaActorStack / Apify Store
  2. Site declarationchecked 18 Aug 2026
    coches.net/robots.txtcoches.net
Close-up of a car instrument cluster showing the speedometer in kilometres and miles per hour.
coches.netGuide

Cars below market price

A concrete screen: which fields to filter on, which segments carry the valuation data, and how to avoid the two biases that make a below-market list look better than it is.

8 min
A narrow street in Valencia, Spain, lined with parked cars and apartment blocks.
coches.netGuide

Spanish market analysis

What you can and cannot conclude from marketplace listings: asking prices are not transaction prices, inventory is not demand, and the badge distribution tells you more than the fuel type does.

8 min
A laptop screen showing a plain text-mode terminal with a command prompt.
coches.netExplainer

Coches.net API

Coches.net publishes no public listing API. What it does publish is a server-rendered payload and a detailed robots.txt — which together define exactly what a compliant integration can read.

6 min