Fuel is 40 to 55 percent of the running cost of a commercial vehicle in India. Yet most transporters know their fuel bill only as a monthly total. Cost per kilometre, per vehicle, per driver is what turns that total into decisions: which truck to sell, which driver to train, which route to reprice. This guide gives the formula, a worked example and the benchmarks.
The formula
Three numbers, two divisions:
Mileage (km/L) = kilometres run ÷ litres used
Fuel cost per km (₹/km) = litres used ÷ kilometres run × diesel price per litre
or simply diesel price ÷ mileage.
Example: a 12-tonne truck runs 2,400 km in a month and uses 600 litres at ₹90 per litre.
- Mileage = 2,400 ÷ 600 = 4.0 km/L
- Fuel cost per km = 90 ÷ 4.0 = ₹22.50 per km
- Monthly fuel = 600 × 90 = ₹54,000
If the same truck ran at 4.5 km/L, the month would cost ₹48,000: a ₹6,000 difference on one truck from half a kilometre per litre.
Getting the two inputs right
The formula is trivial. The inputs are where fleets go wrong.
Kilometres
Do not use the driver's logbook or the odometer reading he reports. Use GPS distance for the same period. GPS distance is the sum of the route actually driven and cannot be rounded up, written in advance, or forgotten. Over a month on a truck the GPS and odometer figures should agree within 2 to 3 percent; a bigger gap means a tampered odometer or a device fitted wrongly.
Litres
Use the full-tank method:
- Fill the tank completely and record the odometer or GPS distance reading. This is the start of a stretch.
- Every partial fill in between: record the litres, but do not calculate anything yet.
- At the next complete fill, record the litres and the distance again. The stretch is closed.
- Litres used in the stretch = litres at this full fill + all partial fills since the last full fill.
- Kilometres in the stretch = distance now minus distance at the last full fill.
The full fill is the trick: because the tank is full at both ends, the litres bought equal the litres burnt, with no need to know the tank level. Partial fills are simply added in. Any method that relies on "the gauge showed half" is a guess.
If you skip a full fill (the driver filled only ₹2,000 worth for three weeks), the chain breaks and you start a new stretch at the next full fill. Mark it; do not try to calculate across it.
Worked example from a fuel log
| Date | Fill type | Litres | Amount | GPS km reading |
|---|---|---|---|---|
| 1 Oct | Full | 210 | ₹18,900 | 1,42,300 |
| 6 Oct | Partial | 80 | ₹7,200 | 1,43,010 |
| 11 Oct | Full | 165 | ₹14,850 | 1,43,560 |
Stretch 1 Oct to 11 Oct: litres used = 80 + 165 = 245. Distance = 1,43,560 − 1,42,300 = 1,260 km.
- Mileage = 1,260 ÷ 245 = 5.14 km/L
- Cost per km = 90 ÷ 5.14 = ₹17.50 per km
The 210 litres at the first fill belong to the previous stretch. Note also that only the GPS distance and the two receipts were needed; no sensor, no dipstick.
What is a normal mileage in India
Rough fleet averages for loaded running in mixed highway and city conditions. Your own figures will vary with load, terrain and age.
| Vehicle | Typical km/L | Fuel cost per km at ₹90/L |
|---|---|---|
| Three-wheeler goods (diesel) | 18 to 22 | ₹4 to ₹5 |
| Pickup / small tempo (1 to 1.5 t) | 12 to 15 | ₹6 to ₹7.50 |
| LCV 4 to 7 tonne | 8 to 10 | ₹9 to ₹11 |
| 12-tonne truck | 4 to 5 | ₹18 to ₹22.50 |
| 25-tonne multi-axle, loaded | 3 to 3.8 | ₹24 to ₹30 |
| 40-foot trailer / bulker | 2.5 to 3.2 | ₹28 to ₹36 |
| 32-seat bus | 5 to 6.5 | ₹14 to ₹18 |
| 50-seat bus | 3.5 to 4.5 | ₹20 to ₹26 |
| Excavator (per hour, not km) | 10 to 15 L/hour | ₹900 to ₹1,350 per hour |
A truck 15 percent below the fleet average for its class deserves a look. Below 25 percent, something is wrong: theft, a mechanical fault, or a driver who idles with the AC on.
The three numbers to watch every month
- Mileage per vehicle, trend over the last five stretches. A gradual fall means maintenance (injectors, tyres, air filter). A sudden fall on one stretch means theft or a wrong entry.
- Idle hours per vehicle. A heavy truck burns 2 to 3 litres per hour idling. Three hours of idle a day is ₹20,000 a month on one truck. GPS engine hours and idle time give this directly.
- Cost per km by driver. Same truck, same route, two drivers: a 10 percent gap between them is normal; 25 percent is a training conversation. Compare drivers on the same vehicle, not across vehicles.
Idle fuel: the hidden line
The full-tank method includes idle fuel automatically, since idle diesel is burnt but adds no kilometres. That is why a truck stuck in a plant queue shows a worse km/L for the stretch. To separate the two:
Idle litres ≈ idle hours × idle burn rate (2 to 3 L/hour for a heavy truck, 0.8 to 1.2 L/hour for a car or pickup)
Subtract idle litres from the stretch total to get the moving mileage. If the moving mileage is normal and only the idle is high, the problem is the queue or the driver's habits, not the engine.
Doing this without spreadsheets
A fleet platform with a fuel log does the whole calculation from two inputs per fill: litres and amount. The GPS distance and the pump location fill in from the device, the full fill closes the stretch, mileage and cost per km appear per vehicle, and the flags (overfill beyond tank capacity, mileage drop against the previous stretches, a fill recorded while the vehicle was moving) come out automatically. SaralTrack's fuel log works this way without a fuel sensor; our guide on catching fuel theft without a fuel sensor explains the flags.
FAQ
How do I calculate fuel cost per km for a truck?
Divide the litres used between two full fills by the kilometres run in the same period to get km per litre, then divide the diesel price by that figure. A truck at 4 km/L with diesel at ₹90 costs ₹22.50 per km in fuel.
What is a good mileage for a 12-tonne truck in India?
Four to five km per litre loaded on highway and mixed routes. Below 3.5 km/L on a regular route points to idling, overloading, a mechanical issue or fuel theft.
Why does my mileage look different every month?
Partly load and route, but mostly because the measurement period did not start and end with a full tank. Use the full-tank method and compare stretch to stretch, not calendar months.
Do I need a fuel sensor for this?
No. Receipts plus GPS distance are enough for mileage and cost per km. A fuel sensor adds real-time tank level and catches siphoning on the road; it does not improve the cost calculation.
How much diesel does an idling truck use?
Two to three litres per hour for a heavy truck, about one litre per hour for a car or pickup. Air conditioning adds 20 to 30 percent.