Estimate a car's value using age, mileage, normal miles, and the dollar effect of being above or below normal.
Advanced options
Table of contents
How to use our Car Depreciation by Mileage Calculator
- Enter Original price when new ($), Car age (years), Current mileage (miles), Yearly age value loss (%), and Normal miles per year (miles).
- Open Advanced options only if you want to change Mileage price effect (% per 1,000 miles), Condition adjustment (%), Future years to estimate (years), or Future driving per year (miles).
- Click Calculate and read Estimated current value first, then check Mileage effect on value and Miles above or below normal to see how mileage changed the estimate.
- Sanity-check the result: if Estimated current value is higher than the original price or clipped to $0, review the rate, mileage effect, and condition inputs before relying on it.

Definitions
Original price when new ($): The new-car price used as the starting point for value loss.
Car age (years): How long the car has existed since new; decimals are allowed for partial years.
Yearly age value loss (%): The percent of value lost each year before mileage and condition changes.
Normal miles per year (miles): The annual mileage used to decide whether the odometer reading is high or low for the car's age.
Mileage price effect (% per 1,000 miles): The percent change in age-based value for each 1,000 miles above or below normal.
Condition adjustment (%): A manual percent increase or decrease for condition, separate from age and mileage.
Miles above or below normal: Current mileage minus normal mileage for the car's age; positive means above normal, negative means below normal.
Estimated current value: The final estimate after age, mileage, and condition adjustments, floored at $0.
Common mistakes and quick fixes
Mistake: Using the loan balance or down payment for Original price when new ($).
Fix: Use the MSRP or original new-car price you want to measure depreciation from.
Mistake: Entering miles driven this year in Current mileage (miles).
Fix: Enter the full odometer reading so Miles above or below normal is based on the car's total use.
Mistake: Treating Normal miles per year (miles) as your personal goal instead of the comparison baseline.
Fix: Use the yearly mileage you consider normal for this car's age and market.
Mistake: Setting Yearly age value loss (%) to 100 or more.
Fix: Use a percent from 0 up to, but not including, 100 so the age-based value can be calculated.
Mistake: Making Mileage price effect (% per 1,000 miles) too large, which can push Estimated current value to $0.
Fix: Lower the mileage effect or compare the result with real listings before using the estimate.
Mistake: Reading Average value lost per mile so far as the cost of the next mile.
Fix: Use it only as a past average; Mileage effect on value is the mileage adjustment used in this estimate.
Limitations & Key Assumptions / Boundary Conditions
- This is a planning estimate, not a dealer offer, insurance value, tax basis, or professional appraisal.
- The calculator uses one yearly age value loss rate for the whole period, so it does not model faster first-year loss or model-specific resale curves.
- The mileage adjustment is a simple percent per 1,000 miles above or below normal. Real buyers may react differently to service history, trim, fuel type, accidents, location, and demand.
- Condition adjustment (%) is user-entered. If the condition number is too optimistic or too harsh, the estimate will move by the same direction.
- Estimated current value and Estimated future value are floored at $0 because market value cannot be negative. A $0 result means the assumptions are too harsh for this simple model.
- Average value lost per mile so far is not shown as a meaningful per-mile result when Current mileage (miles) is 0, because dividing by zero is not possible.
- The future estimate keeps the same depreciation rate, normal miles per year, mileage effect, and condition adjustment. It does not predict repairs, accidents, tax credits, inflation, or market shortages.
Methodology
How the estimate is built
The calculator starts with compound age-based depreciation, then adds a signed mileage adjustment and a signed condition adjustment. Mileage is compared with normal mileage for a car of the same age. Cars with above-normal mileage usually lose value compared with similar lower-mileage cars, so a positive mileage gap creates a negative dollar adjustment.
age_base_value = original_price * (1 - annual_depreciation_rate / 100) ^ car_age_years
normal_miles = car_age_years * expected_miles_per_year
mileage_gap = current_mileage - normal_miles
mileage_value_adjustment = -age_base_value * (mileage_effect_percent_per_1000 / 100) * (mileage_gap / 1000)
condition_adjustment = age_base_value * (condition_adjustment_percent / 100)
raw_current_value = age_base_value + mileage_value_adjustment + condition_adjustment
estimated_current_value = max(0, raw_current_value)
Other results
Value change since original price keeps its sign, so a negative number means the car is estimated to be worth less than the starting price.
value_change_since_original = estimated_current_value - original_price
average_value_lost_per_mile = (original_price - estimated_current_value) / current_mileage
If Current mileage (miles) is 0, the per-mile result is not available because the formula would divide by zero.
Future value
The future estimate repeats the same method after adding the future years and future driving you entered.
future_age = car_age_years + future_years
future_mileage = current_mileage + future_years * future_miles_per_year
future_normal_miles = future_age * expected_miles_per_year
future_gap = future_mileage - future_normal_miles
future_age_base = original_price * (1 - annual_depreciation_rate / 100) ^ future_age
future_mileage_adjustment = -future_age_base * (mileage_effect_percent_per_1000 / 100) * (future_gap / 1000)
future_condition_adjustment = future_age_base * (condition_adjustment_percent / 100)
estimated_future_value = max(0, future_age_base + future_mileage_adjustment + future_condition_adjustment)
future_value_change = estimated_future_value - estimated_current_value
Mini-example
With a $35,000 original price, 5 years of age, 75,000 miles, 15% yearly age value loss, and 11,000 normal miles per year, normal mileage is 55,000 miles and the car is 20,000 miles above normal. Using a 0.5% mileage price effect per 1,000 miles and no condition change, the age-based value is $15,529.69, the mileage effect is -$1,552.97, and the estimated current value is $13,976.72.