EV trip charging cost
A 250 km drive at 18 kWh per 100 km draws 45 kWh, and the tool turns that into the trip's charging cost at your electricity price, plus the cost per kilometer. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Distance
- 250
- Efficiency
- 18
- Electricity price
- 0.15
- Distance unit
- Km
- Currency
- USD
- Efficiency unit
- kWh/100km
- Energy kwh
- 45
- Charging cost
- 6.75
- Cost per distance
- 0.027
Planning an electric road trip without a clear charging cost estimate leaves you guessing at fuel savings and overnight hotel-charger budgets. This EV trip charging cost calculator takes the trip distance, your vehicle’s energy consumption in kilowatt-hours per one hundred kilometers or miles, and the electricity price per kilowatt-hour, then returns the energy you will draw and the money that charge represents. Use it before a long weekend drive, when comparing home overnight rates against public DC fast-charge tariffs, or when building a multi-stop itinerary where every leg needs a transparent energy line item.
How distance, efficiency, and price become charging cost
Electric vehicles do not burn liters of fuel; they draw kilowatt-hours from the pack and later from a charger. Manufacturers and onboard computers usually publish consumption as kilowatt-hours per one hundred kilometers (or per one hundred miles in some markets). This capability multiplies trip distance by that consumption figure and divides by one hundred to get the energy the trip needs in kilowatt-hours.
It then multiplies energy by the electricity price you supply per kilowatt-hour, producing the charging cost in your stated currency. The response also returns cost per distance unit so you can compare legs of different lengths on equal footing. Weather, elevation, cabin heating, and aggressive acceleration can change real-world consumption; treat the efficiency you enter as a planning average or a worst-case figure, not a guarantee of on-road performance under every condition.
Inputs, units, and when validation rejects a request
The unit and currency fields are labels only: the service does not convert between kilometers and miles or between currencies, so keep efficiency consistent with the distance unit you choose and price consistent with the currency you display. Negative distance or negative electricity price are likewise rejected. Zero distance yields zero energy and zero cost, which is useful for template rows in batch jobs.
Typical passenger EVs often land between roughly twelve and twenty-five kilowatt-hours per one hundred kilometers depending on size, speed, and climate control load.
What you can do with it
Personal road-trip budgets
Estimate overnight home charging cost for a holiday drive from distance, your car’s kWh/100 figure, and the residential electricity rate.
Fleet total cost of ownership
Batch many legs with depot versus public electricity prices to build transparent energy line items for EV fleet reporting.
Home versus public charger comparison
Re-run the same distance and efficiency with two electricity prices to show how much a destination charger adds versus charging at home.
FAQ
How is EV trip charging cost calculated?
Energy in kWh equals distance times efficiency (kWh per 100 units) divided by 100. Charging cost equals energy times electricity price per kWh. The response also returns cost per distance unit.
What if efficiency is zero or negative?
Efficiency must be a positive number greater than zero because non-positive consumption cannot define a meaningful trip energy.
Is efficiency miles per kWh or kWh per 100 km?
This calculator expects consumption as kWh per 100 distance units (km or mi).
Does currency convert between USD and EUR?
No. Currency is only a label on the response.
How do I compare charging at home with a public fast charger?
Run the same distance and consumption twice, once with your home rate and once with the public tariff. The gap between the two costs is what the public charger adds for that trip.
Related tools
For developers — API access
Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.
API endpoint
Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.
Call it from your stack
curl -X POST https://api.kit.forhosting.com/travel/ev-trip-cost \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"distance":250,"efficiency":18,"electricity_price":0.15}'const res = await fetch("https://api.kit.forhosting.com/travel/ev-trip-cost", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"distance": 250,
"efficiency": 18,
"electricity_price": 0.15
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/travel/ev-trip-cost",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"distance": 250,
"efficiency": 18,
"electricity_price": 0.15
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/travel/ev-trip-cost", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"distance":250,"efficiency":18,"electricity_price":0.15}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"distance":250,"efficiency":18,"electricity_price":0.15}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/travel/ev-trip-cost", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"distance": 250,
"efficiency": 18,
"electricity_price": 0.15
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "travel.ev_trip_cost",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.
Pricing
Published price — no tokens, no invented credits. A failed task is never charged.
Errors
| HTTP | Code | Meaning |
|---|---|---|
401 | unauthorized | Missing or invalid API key. |
402 | insufficient_balance | Your balance doesn't cover the task price. |
404 | unknown_type | That task type doesn't exist. |
429 | rate_limited | Too many requests. Use the webhook instead of polling. |
Technical notes
The formula is deterministic and identical in the free browser tool and the paid API, so route planners, fleet dashboards, and personal spreadsheets share one figure instead of three conflicting mental models.
Inputs, units, and when validation rejects a request
Send a non-negative distance, a positive efficiency in kilowatt-hours per one hundred distance units, a non-negative electricity price per kilowatt-hour, and optional labels for distance_unit (km or mi) and currency (for example USD or EUR). Aliases are accepted for convenience: consumption and kwh_per_100 for efficiency, and price_per_kwh or price for electricity_price. Efficiency must be strictly greater than zero; zero or negative consumption is rejected with invalid_input and is not charged, because dividing energy by a non-positive figure is meaningless and would either crash or invent infinite cost.
Using the free browser tool, the API, and multi-leg pipelines
Cache results when inputs are stable, and re-run when the driver updates pack-derived efficiency after a real trip so next week’s estimate tracks the vehicle you actually own. Use the in-browser tool for a single weekend itinerary before you leave home, or call the same JSON contract from a route planner, fleet TCO worksheet, or batch job that prices dozens of legs. The published API price is $0.002 per successful item; failed validation does not consume prepaid balance. Pair charging_cost with your public versus home rates by running the same distance and efficiency twice with different electricity_price values, then compare the two results to decide whether a detour to a slower but cheaper charger is worth the time. For multi-stop trips, sum energy_kwh and charging_cost across legs rather than averaging efficiency blindly: different highway versus city segments often deserve different consumption inputs.
Technical questions
Is this free, and what does the API cost?
The in-browser tool is free and runs locally. API usage is prepaid KIT balance at $0.002 per successful request. Invalid input fails without charge.