The fine print, in plain language
How this site works, and where it could be wrong
Every number here comes from public data or a source we can point to. Where we had to make a judgement call instead of measuring something directly, we say so on this page, not just in a footnote.
Where the data comes from
- Danish vehicle registrations. The Danish Motor Registry's (DMR) public statistics extract: make, model, first registration date, fuel type, fuel consumption, CO2, weight and engine power for every registered car. We kept petrol, diesel and hybrid passenger cars first registered between 2010 and 2022, 1.778.307 cars in total.
- Reliability. Two national roadworthiness-inspection archives, combined. The UK's public MOT test archive (Ministry of Transport test, the UK's version of Denmark's "syn"), covering 48.220.796 eligible tests, published by the UK Driver and Vehicle Standards Agency under the Open Government Licence v3.0, which permits this kind of use with attribution. And Norway's periodic vehicle control (PKK / EU-kontroll), published by Statens vegvesen under CC BY 4.0, which likewise permits this use with attribution. Both are foreign data, see the caveat below.
- Fuel prices. Circle K's public price API, fetched fresh at build time. Latest figures: petrol 16.69 kr/l, diesel 17.49 kr/l (fetched 2026-07-31).
- Danish taxes. Registration tax (registreringsafgift) and ownership tax (grøn ejerafgift) rates, transcribed by hand from the Danish Ministry of Taxation's published rate tables, verified 2026-07-31. Danish tax law changes most years. If you're reading this a while after that date, treat the exact kroner figures as roughly right, not current.
- Prices. See the pricing section below, it's the part of this project with the most judgement calls in it.
Reliability comes from foreign cars on foreign roads, checked against each other
We don't have a public, model-level Danish equivalent of the UK's MOT archive, so reliability comes from foreign-market cars: foreign roads, foreign weather, foreign road salt. A model's reliability relative to other models should carry over reasonably well, since it's mostly about how the car itself is built. The exact failure rate might not, since Danish winters and Danish roads differ from either source country's. Treat the ranking between cars as more trustworthy than the exact percentage for any one car.
We adjust for how far a car has typically been driven, so a model that's usually driven hard isn't unfairly compared to one that's usually driven gently. We only publish a reliability figure where there were enough tests to be confident in it. Where there weren't enough, we say so rather than show a shaky number.
As of this update, reliability draws on two countries' inspection data, not one. We added Norway's periodic vehicle control (PKK) alongside the UK's MOT archive, and checked whether the two agree, rather than assuming a single foreign country is a safe stand-in for Denmark. They partly do, and the honest answer changes by how old the car is.
What does not carry over between the two countries is the raw pass rate: Norway's measured pass rate runs 30 to 40 percentage points below the UK's for the same models at the same age, a gap driven by different statutory defect thresholds and tester incentives, not by Norwegian cars actually failing twice as often. So we never average a UK pass rate with a Norwegian one directly. Instead, each country's rate is converted to a standardised score (specifically, the logit of the pass rate, then a z-score) computed separately within each age band and each country, which strips out that country-level offset and keeps only where a model sits relative to its peers in the same country and age band. The two standardised scores are then combined with a weighted average, weighted by how much data backs each one (a UK figure built on 400,000 tests moves the combined score more than a Norwegian figure built on 3,000), never by whether the two sources happen to agree.
What does carry over, to varying degrees, is the ordering: whether the UK and Norwegian data agree on which models are more or less reliable than their peers, at the same age. We measured this directly, model by model, within each age band:
| Age band | Cars this age today | UK/Norway agreement (rank correlation) |
|---|---|---|
| 4 to 6 years | 2020 to 2022 | 0.42, weak |
| 7 to 9 years | 2017 to 2019 | 0.46, weak to moderate |
| 10 to 12 years | 2014 to 2016 | 0.75, strong |
| 13 to 16 years | 2010 to 2013 | 0.88, strong |
Read that plainly: for the newest cars on this site, agreement between the two countries is weak, and this data does not strongly support the idea that a UK-based and a Norway-based ranking would put the same young cars at the top. For the oldest cars, the two countries agree closely, and that agreement is real evidence the ranking reflects something about how the car is built, not an artefact of one country's roads. We looked hard for a reason band 1 is weaker (fewer tests, a different mix of defects counted) and ruled both out; the honest remaining explanation is that young-car reliability differences are small enough, and swamped enough by local conditions, that a single-country ranking of the newest cars is less trustworthy than it looks.
One make group is weaker than the rest, and it isn't hidden in a make list, it falls out of the per-model numbers directly: BMW, Mercedes-Benz, Audi and Volvo, in the two youngest age bands, show close to no agreement between the UK and Norwegian data (their internal rank correlation sits around 0.1 to 0.2 in bands 1 and 2, against 0.75 to 0.85 for nameplate-clean makes like Skoda, Peugeot, Volkswagen and Toyota in the same bands). We traced this as far as we could: it survives fixing real crosswalk bugs on the Norwegian side (these makes' Norwegian model strings are bare engine codes, like "320D" or "X3 XDRIVE20D", that have to be grouped back up to a nameplate), and it is not explained by which kind of defect is counted. It is not a hardcoded flag on these four makes: the confidence badge on each car page is driven by how much that specific model's own numbers agree, and a handful of BMW, Mercedes, Audi and Volvo model/age combinations do agree well and are marked accordingly. But most of them, in the two youngest bands, don't, and are marked "low" confidence for exactly that reason.
The reliability confidence badge
Every ranked car now carries a reliability confidence badge, low, medium or high, next to the existing price confidence badge. It is built from three things: how many tests back the figure, whether one country's data backs it or both, and, where both do, how closely the two agree for that specific model and age band.
- Two sources, close agreement, comfortably more data than the bare minimum: high. Both countries independently point the same way, and neither is thin.
- Two sources in reasonable but not tight agreement, or one strong source with nothing to check it against: medium. This is most rows on the site, and that's the honest shape of the data, not a default we fell back to. A single-country figure can never reach "high" on its own, however many tests back it, because there is no way to rule out this being exactly the kind of model where a single country's ranking doesn't transfer, which is the entire reason we went looking for a second source.
- Two sources that disagree by more than one full standard deviation within their age band, or a single source that only barely clears its own stability floor: low. More data does not fix the first case: we already checked, and the disagreement between the UK and Norwegian data is real, not sampling noise, so a bigger sample on either side would not make it go away.
233 ranked rows are backed by both countries, 334 by one. Of all ranked rows, 112 are "high" confidence, 404 are "medium", and 51 are "low". Most rows land on medium, and we're reporting that plainly rather than adjusting the thresholds to make the picture look more decisive than the data supports.
The repair cost estimate is a rough index, not a garage quote
We count how often each part of a car fails its MOT test, then weight that by a per-brand multiplier for how expensive that brand's parts and labour tend to be. A failed headlamp bulb and a failed suspension arm currently count the same, a simplification since a suspension repair costs far more. We turn that index into kroner using a flat rate of 3.000 kr per point per year, a judgement call, not a measurement, because no public dataset of Danish repair costs by model exists. At that rate, repairs are a modest slice of most cars' total cost. If the true rate is much higher, the ranking within a bracket could shift, though the overall shape of the site's findings should hold.
How we estimate a used price
Bilbasen and DBA's listing databases are protected under EU database right law, and Denmark doesn't publish a public database of used car prices either. Bulk copying either site's listings is off the table. So we built an estimate instead of leaving prices out entirely, and then checked that estimate against a small number of real Danish asking prices: mostly collected by hand, filled out where needed with a handful of individual, rate-limited searches on Bilbasen and DBA, no different in scale from a buyer checking a few listings by hand, never a bulk pull of either site's database.
- Started from a market with almost no car tax. Poland's used car tax is negligible, so asking prices there are a reasonable stand-in for what a car is worth before any country's tax is added. We used a public dataset of Polish used car listings (released into the public domain, no scraping needed) to see how each model's price changes with age.
- Converted to a Danish price using Denmark's real tax formula. We transcribed the registration tax formula from the Danish tax authority's published rate tables and applied it. This is where our estimate is weakest: Danish law technically wants a used car's tax scaled down by how much it's depreciated from new, and we don't have a reliable new price for every model to base that on. We approximate around this rather than inventing a new-car price. See "known limits" below.
- Checked the result against the Danish market: asking prices we collected by hand and, for models we couldn't otherwise find enough of, through a small number of individual searches on Bilbasen and DBA, across a spread of common models and price levels, and corrected the whole estimate by the gap we found. Cars under 150,000 kr were corrected separately from cars above it, since the gap wasn't quite the same size at both ends.
This matching step has already caught one real mistake. Every BMW, Mercedes-Benz and Volvo model except the plainest names (X1, X3, GLC, V70) was quietly falling back to a whole-brand average price, because Denmark's registry spells these models "1-Serie", "A-Klasse", "XC60" while the Polish listings spell the same cars "Seria 1", "Klasa A", "XC 60": reversed word order for the first two, a missing space for the third. No model-level match, no error either, just a wrong number that looked plausible. Fixed with a table of accepted alternate spellings; every BMW, Mercedes and Volvo model now prices off its own listings.
This calibration is limited. We measured how well the correction fits the same prices we used to build it, which will always look better than how it performs on a car we haven't checked. Treat "calibrated against Danish listings" as true, and "accurate to within some exact percentage" as not yet proven.
Every price on this site also carries a confidence flag, low, medium or high, based on how many comparable foreign listings backed it up, and whether we had to borrow a whole brand's price pattern because one specific model had fewer than 15 listings of its own to build a fair estimate from. That threshold matters: a pooled Skoda price, for example, gets averaged in with Octavia, Superb and Kodiaq, so a cheap city car can end up priced like a mid-size saloon unless it clears the bar on its own. You'll see the confidence flag on any car page where it isn't "high."
Mileage matters too, and we adjust for it
A price estimate is anchored to a "typical" mileage for that car's age, not any specific odometer reading. We measured how much price moves with mileage from Danish listings (about 3.0% for every extra 10,000 km), and use that to adjust a resale value when we compare a car bought at one age to the same car sold years later.
Cars we couldn't price at all
Suzuki and DS models are barely present in the foreign listings data we use, so most of them have nothing solid to build a price estimate from. For a few (Swift, Baleno, Ignis, Celerio) we found Danish asking prices by hand and used the same shape-from-a-similar-car method used for Skoda Citigo (see known limits below), borrowing a same-segment model's depreciation curve and scaling it to that price, marked "low confidence" since it rests on one or two listings rather than a full curve. The rest still show reliability and running-cost data with no price and no ranking, clearly marked. 5 models are still unpriced.
What "most car for the money" means
Every bracket page has two lists. "Cheapest to own" ranks purely on money. "Most car for the money" blends that cost ranking with an engagement score built from power-to-weight, cylinder count and kerb weight, an equal 50/50 split, disclosed here rather than buried in the code. We measured that these two things pull in opposite directions more often than not: cars that are more fun to drive tend to cost more to run. Neither list is "more correct" than the other, they answer different questions.
What we won't do
- We don't build a bulk copy of Bilbasen, DBA or any other classifieds site's listing database. Those are protected by EU database right law, and there's no public API. A small number of individual, rate-limited searches to fill gaps in our own price calibration is not that, and we don't republish what those searches return.
- We don't pull TÜV Report or ADAC Pannenstatistik tables. Those are copyrighted; we can mention their published headline findings in prose, not reproduce their data.
- We don't rank battery electric cars in this version. There isn't enough age-band data yet to do it fairly.
Known limits, all in one place
- Reliability figures are from UK and Norwegian cars, not Danish ones, and the two sources agree only weakly for the newest cars (age bands 1 and 2) and for BMW, Mercedes-Benz, Audi and Volvo specifically in those bands. See above.
- The repair cost figure is a judgement-based rate per point, not measured invoices. See above.
- Price calibration hasn't been checked against a held-out set of listings it wasn't built from. See above.
- Skoda Citigo has two listings of its own in the foreign data we use, and one of them specifies a 1968cc diesel engine, a Citigo that was never built. So its price curve is borrowed from Volkswagen Up!, the same car on the same platform sold under a different badge (Seat Mii is the third badge, and does have enough of its own listings to price directly). Its registration tax is still calculated from Citigo's own measured CO2 figure, only the underlying market value is shared.
- The mileage adjustment uses one flat rate for every car, from the cheapest city car to the most expensive SUV, when in reality mileage probably matters more in kroner terms for an expensive car.
- Every list can be resorted for a different annual mileage than the 15,000 km baseline. Only fuel cost and how much resale value erodes move with that number; ownership tax stays flat per year regardless of how far you drive, and so does the repair estimate, so a high-mileage pick understates true cost a little.
- Cars first registered 2010 to 2013 (our oldest age band) have no later resale point in our data, so their cost figure is running costs only, not a full buy-and-sell total. These are marked with an asterisk wherever they appear.
- Fuel efficiency figures straddle a 2018 change in how the EU measures fuel consumption (NEDC to WLTP), which makes some older cars look slightly better on paper than they are. Comparisons within the same age band are largely unaffected.
- A model name can span more than one generation inside a single 3-year age band, if it had a mid-cycle facelift or engine change. Most generations last longer than 3 years, so this is the exception rather than the rule, but where it happens, that row blends specs from what a buyer would experience as two different cars.
- Hybrids aren't recorded as their own fuel type in the registry, they're filed under petrol or diesel. We flag a car as hybrid when at least 3 in 10 of the registered cars behind that row have a trim name mentioning "hybrid" or "plug-in", a lower bar than a strict majority. We needed it lower: Hyundai Ioniq, sold almost entirely as hybrid, plug-in or EV in this generation, still only matches on 44 to 49 percent of trim names, since not every hybrid trim spells it out. This still misses a few and occasionally flags a model that's only partly hybrid. Their official fuel-consumption figures also tend to run optimistic (the test allows battery assist), so a hybrid's real running cost is probably a bit higher than shown. Use the "hide hybrids" filter on any list to set them aside.
- The "hide diesel" filter works the same way, flagging a car when over half the registered vehicles behind that row are diesel. A handful of rows mix both fuels under one line, so this filter is a strong indicator, not a perfect split.
Something on this page look wrong, or missing? The full pipeline and every reference file behind these numbers live in this project's repository. Nothing here is generated on request, every figure was computed ahead of time from the sources listed above.