Skip to content

← Back to list

Fuel: real data over the map

A pretty map isn't a product. A map that saves you twelve euros by filling up 4 km further down is. The trick lives in the combination prices + corridor + camper.

2 min read

A pretty map isn’t a product. A map that saves you twelve euros by filling up 4 km further down is a product.

The context

Diesel ranges from €1.30 to €1.75 depending on country, region, time, vendor. A two-week trip in a camper that burns 13 L/100 km is €700–800 of fuel. A decision to “fill up here or wait 30 km” can shift tens of euros.

The apps that know prices country-wide are pure directories: they hand you a list, they don’t put it over your route. The combination prices + corridor + my camper doesn’t exist as a usable product.

The decision

Two sources, not one:

  • Stations from Spain’s MITECO and from OSM (Overpass). The ministry API covers Spain with daily updates; OSM covers the rest of European geography.
  • Product (diesel A, B, gasoline 95, 98, LPG) filtered for the fuel your vehicle actually uses. The planner stores that on the profile and doesn’t make you repeat it.

Plus two overlay rules:

  • Over the corridor (~5 km each side), not over the administrative region.
  • Ordered by price delta vs local mean, not absolute price. A station at €1.42 in a €1.55 area is more useful than one at €1.38 in a €1.32 area.
Synthetic comparison of diesel prices across countries and stations along the corridor of a route.

Why MITECO + OSM and not a commercial fuel API. Commercial ones charge per query and cap you daily. For a solo dev, that’s a bill that scales with loyal users — the opposite of what current pricing wants. MITECO is open; OSM is open. OSM’s price quality is less reliable than MITECO’s, but acceptable as a complementary signal in countries without an equivalent ministry API.

What it’s not

To be explicit:

  • Not a fuel app. I’m not competing with Waze fuel or similar. If you want to compare 50 stations within 10 km, use a dedicated tool. Here you see 3–5 along the corridor.
  • Not arbitrage. I won’t tell you “drive back 20 km to save €5”. The delta is always against the real corridor, not outside it.
  • Not user content. Nobody uploads prices. If MITECO or OSM holds wrong data, it stays wrong until they correct it. Traceability is by design.

What’s next

Next post: why the code lives in three separate repositories (api, app, meta) and not in a monorepo. The same logic I apply to the product (three modes, not one) I repeat in the code (three repos, not one). For the same reasons.