Another ski season went by without me getting out anywhere near as often as I wanted. Today I finally admitted it was over: the roof box came off my BMW X3 (F25), roof bars included.
Once you are married with kids, hobbies like skiing quietly slide down the list. We did get out a few times with the little one, so the box earned its keep.
The one thing nobody argues about is roof box fuel economy: the thing drinks fuel. I had written about that on feel alone before. This time I had a full season of fill-up records, so I could finally put a number on it.
Why roof box fuel economy always suffers
A roof box does two things to your car: it pushes more air out of the way, plus it adds weight. Only one of those really matters.
Frontal area of the car
The F25 X3 catalogue figures give a rough frontal area if you take the overall height, subtract the ground clearance, then multiply by the width.
(1,675 mm height − 210 mm ground clearance) × 1,900 mm width = 27,835 cm²
That ignores the tyres, but it is close enough for a comparison.
Frontal area of the roof box
Mine is an INNO Shadow 16 (BR1200BK). It is discontinued now, though INNO still sells the same shape under a newer name.
810 mm wide × 340 mm tall = 2,754 cm²
Add that to the car:
27,835 cm² + 2,754 cm² = 30,589 cm²
That is a 9.9% increase in frontal area. The roof bars add a bit more on top, but I gave up trying to calculate those.
The weight penalty is almost irrelevant
I weighed up the hardware too, just to be thorough:
- Roof box: 19 kg
- XS450 mounting feet: 2.7 kg
- TR141 fitting hooks: 0.88 kg
- XB130 rear bar: 1.44 kg
- XB123 front bar: 1.36 kg
Total: 25.38 kg (about 56 lb).
That takes the car from 1,870 kg to 1,895 kg, an increase of roughly 1.3%. Honestly, carrying one extra passenger changes more than that. Aerodynamics is the story here, not mass.
Real fuel economy: 13 tanks with, 13 tanks without
I kept the box on for about three months. That came to 13 fill-ups, so I took the 13 fill-ups immediately before fitting it as the comparison set.
With the roof box fitted
The box went on with the roof bars at the end of 2020, so these records run from late December 2020 to mid-March 2021.
| Fill-up | km/L | Distance (km) | Fuel (L) |
|---|---|---|---|
| 1 | 16.70 | 1,019 | 61.01 |
| 2 | 18.28 | 1,014 | 55.46 |
| 3 | 19.08 | 815 | 42.71 |
| 4 | 18.31 | 1,034 | 56.46 |
| 5 | 18.20 | 990 | 54.40 |
| 6 | 18.37 | 1,037 | 56.46 |
| 7 | 16.24 | 853 | 52.52 |
| 8 | 16.44 | 873 | 53.09 |
| 9 | 18.90 | 1,022 | 54.07 |
| 10 | 19.60 | 942 | 48.06 |
| 11 | 17.95 | 767 | 42.73 |
| 12 | 14.26 | 781 | 54.76 |
| 13 | 17.72 | 948 | 53.50 |
| Total | 17.65 | 12,095 | 685.23 |
Not one tank cracked 20 km/L. The best was 19.60 km/L.
Over 12,095 km on 685.23 litres, the overall figure was 17.65 km/L. For anyone thinking in other units, that is 5.67 L/100 km, or about 41.5 mpg (US).
Winter brings strong headwinds plus longer warm-up idling, so conditions were not identical to autumn. With 13 tanks on each side, though, I think the sample is big enough to mean something.
I also have aluminium tape stuck on the box in a few places to reduce drag. It went on from day one, so I cannot separate its effect. Without it the numbers might have been worse.
Without the roof box
These are the fill-ups from before the box went on, running from late September 2020 to early December 2020.
| Fill-up | km/L | Distance (km) | Fuel (L) |
|---|---|---|---|
| 1 | 20.18 | 1,026 | 50.85 |
| 2 | 21.06 | 806 | 38.28 |
| 3 | 18.87 | 630 | 33.39 |
| 4 | 17.31 | 792 | 45.75 |
| 5 | 20.00 | 800 | 40.00 |
| 6 | 21.03 | 1,015 | 48.26 |
| 7 | 18.59 | 1,004 | 54.00 |
| 8 | 20.00 | 859 | 42.95 |
| 9 | 19.28 | 1,253 | 65.00 |
| 10 | 19.56 | 1,193 | 61.00 |
| 11 | 19.10 | 1,182 | 61.88 |
| 12 | 18.42 | 1,002 | 54.41 |
| 13 | 19.76 | 679 | 34.37 |
| Total | 19.43 | 12,241 | 630.14 |
12,241 km on 630.14 litres works out at 19.43 km/L, which is 5.15 L/100 km, or about 45.7 mpg (US).
The first four rows are on winter tyres, the other nine on summer tyres (newest first). The best tank of the whole set, 21.06 km/L, came after switching to winter rubber. My winter tyres are Pirelli Ice Asimmetrico Plus 225/60R17, second season, plus they happen to be very economical. That is why I was comfortable mixing both tyre types into one comparison.
The result: about 9% worse
19.43 km/L dropped to 17.65 km/L. That is a 9.1% loss.
Frontal area went up 9.9%. Fuel economy fell 9.1%. Those two numbers landing almost on top of each other is more satisfying than it has any right to be.
Same commute, same driving style, same roads. So the honest answer on roof box fuel economy, for a car shaped like mine, is roughly a 9% hit. The measured penalty matched what my right foot had been telling me all winter.
What that means for other cars
Drag scales with speed, so your result depends heavily on how you drive. My mileage is mostly motorway at 90 to 100 km/h (56 to 62 mph), which is close to the worst case.
Apply the same 9.1% to other starting points:
- A car doing 20 km/L becomes 18.2 km/L
- A car doing 15 km/L becomes 13.6 km/L
- A car doing 25 km/L becomes 22.7 km/L
In US mpg: 40 mpg becomes 36.4, 30 mpg becomes 27.3, 25 mpg becomes 22.7.
Your car shape, your speed, your box, your bars: all of it moves the number. Treat this as a ballpark rather than a specification.
What it costs in fuel
Fuel economy translates straight into money, which is why it nags at me.
At my mileage, a 10% swing is ¥2,000 to ¥3,000 a month (roughly $13 to $20). Over a year that is tens of thousands of yen, a couple of hundred dollars. Enough to notice.
Take the roof box off when you are not using it
Removing a roof box is a hassle, plus you need somewhere to store the thing. After running the numbers, though, leaving it up there all year is simply throwing fuel away.
I make a point of pulling mine off as soon as the season ends. Taking it off after every single trip would be ideal. That is a step too far for me.
If you cover serious distance, keeping the car in its most efficient shape is worth the effort, for your wallet as much as for the planet.
This article is also available in Japanese.

