Estimate the total cost of owning a vehicle
What a car costs to run over a holding period: depreciation, fuel, insurance, maintenance, and taxes and fees, totalled and broken down per component and per year.
Read the breakdown, not just the total. Every component carries its own confidence. measured means a published dataset covers this exact vehicle — EEA or EPA consumption for the model/year/kW band, an official fuel-price series, a depreciation curve fitted across live comparable listings. estimated means authored constants or data stretched to fit the cohort. Collapsing the response into a single number throws away the only signal that separates the two, and the components differ in quality within a single answer.
Money values are integers in assumptions.currency, with the single exception of totals.perKm, which carries 3 decimals. assumptions states what the figures were computed against — the car's current market value, the annual distance, the horizon — so a caller can reproduce or re-scale them.
Country differences are real, not cosmetic. CZ/SK/PL price MTPL (third-party liability) insurance on an engine-power band and carry no annual passenger-car road tax; US figures follow the Edmunds True Cost to Own convention and include roughly 6% sales tax on the car's value, with liability-only insurance. US tax and fee figures are national expected values across 50 state regimes — useful for comparing cars, not a bill for any one state.
Nothing is prorated for a partial year: years buys whole years, and year 1 carries the one-off charges (US sales tax, registration). A 404 means a whole component could not be estimated, and names which one in missing — an expected outcome for a rare car or a drivetrain with no local price series, not an error to retry unchanged.
Query parameters
Vehicle manufacturer (case-insensitive). Common aliases are resolved for you (volkswagen → vw). Not restricted to the /vehicle-valuation catalogue — the depreciation component is fitted against the listing store directly.
Vehicle model (case-insensitive). Matched as a base model — A6 and A6 Allroad are different cohorts; trim codes are folded to their series (320d → 3-series).
Model year, from 1990 up to next calendar year (a later year is rejected with 400). Required, unlike /time-to-sell: depreciation is a function of the car's age, so there is no cohort-wide answer to fall back on. No literal maximum is declared here because it moves every January.
ISO 3166-1 alpha-2 market code. Narrower than the other market endpoints because a total needs all five components to exist locally — a fuel-price series, an insurance premium model and the tax regime, not just listings. CZ/SK/PL share the EU shape; US is a separate regime end to end.
Fuel type (case-insensitive). Omit it and the drivetrain is inferred from what the market actually sells for this model and year. lpg is rejected for US with a 400 — there is no retail autogas price series to run the fuel component against.
Engine power in kW. Narrows the depreciation cohort and selects the CZ/SK/PL insurance band. Ignored for US insurance, which is not power-rated.
Annual distance in km. Drives the fuel component and the mileage-dependent share of maintenance and depreciation. Defaults to 15000 for CZ/SK/PL and 19300 for US (12,000 miles).
Holding period in whole years. Year 1 carries the one-off charges (US sales tax, registration), so a 1-year horizon is not one fifth of a 5-year one.
Currency every money value is denominated in. Defaults to EUR for CZ/SK/PL and USD for US. Not constrained by country — any of the four is accepted for any market, so a fleet can report a Czech car in EUR or compare a US car against a European quote.
Response
Cost of ownership over the requested horizon, with a per-component and per-year breakdown.
Example response
{
"vehicle": {
"make": "Skoda",
"model": "Octavia",
"year": 2019,
"fuel": "diesel",
"kw": 110,
"requested": {
"make": "skoda",
"model": "octavia"
}
},
"country": "CZ",
"assumptions": {
"kmPerYear": 15000,
"years": 5,
"currentValue": 12800,
"currency": "EUR",
"fuelPriceFlat": true
},
"totals": {
"total": 18092,
"perYear": 3618,
"perMonth": 302,
"perKm": 0.241
},
"breakdown": {
"depreciation": {
"total": 6400,
"method": "market-cross-section",
"valueBasis": "median"
},
"fuel": {
"total": 5112,
"consumptionL100km": 4.8,
"provider": "eea",
"fuelKey": "diesel",
"modelYearUsed": 2019,
"sampleSize": 42,
"pricePerUnit": 1.42,
"priceUnit": "litre",
"priceCurrency": "EUR"
},
"insurance": {
"total": 2100,
"annualPremium": 420
},
"maintenance": {
"total": 3900
},
"taxesAndFees": {
"total": 580,
"items": [
{
"label": "Motorway vignette",
"total": 460,
"recurring": true
}
]
}
},
"perYear": [
{
"year": 1,
"calendarYear": 2026,
"vehicleAge": 7,
"depreciation": 1700,
"fuel": 1022,
"insurance": 420,
"maintenance": 620,
"taxesAndFees": 116,
"total": 3878
}
]
}