Drive twenty kilometres across a European border and the price of the identical fuel can change sharply. Same product, same tanker fleet, sometimes the same brand, very different number on the pole. Drivers usually explain this with local competition or "that country is just expensive". The real answer is mostly fiscal, and there is a public dataset that lets you prove it to yourself.
What is harmonised, and what is not
Fuel taxation in the EU works through Council Directive 2003/96/EC, the Energy Taxation Directive, which entered into force on 31 October 2003 with implementation by 31 December 2003. It is frequently misunderstood as making fuel taxes uniform across Europe. It does not.
What the directive harmonises is the structure of excise duties: the categories, the definitions, the framework. What it sets are minimum levels that indirect taxes must reach, excluding VAT. Member states retain, in the directive's own framing, extensive freedom in how they design their taxes, and they may go above the minimums as far as they like.
That single design choice explains the border effect. Europe agreed on a floor and left the ceiling to national politics. Two neighbouring countries can both be fully compliant and still tax the same litre very differently.
Three layers stacked on one litre
The number you pay is built from components that behave nothing like each other:
The product itself. Refined fuel is an internationally traded commodity. Its cost does not respect borders in any meaningful way: refineries supply across them, and cross-border price differences at this layer are comparatively small.
Excise duty. A fixed amount per volume, set nationally above the EU minimum. It does not move when crude moves. This is the layer where countries diverge most, and it is decided by national budgets rather than markets.
VAT. A percentage, applied on top, including on top of the excise duty. This is the compounding part that people miss: a country with both higher excise and higher VAT does not add the two gaps, it multiplies part of one by the other.
Then, and only then, the retailer's margin and local competition, the layer everyone talks about, and usually the smallest of the four.
Why this ordering matters: when crude prices fall and pump prices seem stubborn, the usual explanation offered is retailer greed. Often the simpler arithmetic is that only one of four layers moved, and it is not the largest one. Excise is a fixed sum per litre and does not fall with the oil price at all.
How to see it for yourself
You do not have to take any of this on trust, which is the genuinely useful part of this article.
The European Commission's Directorate-General for Energy publishes the Weekly Oil Bulletin, and it does something most price comparisons do not: it gives prices both with and without taxes, alongside VAT and excise duty information by country. National data is submitted on Wednesdays and the bulletin is issued every Thursday, with price development series running from 2005 onwards.
Do the comparison in that order and the picture inverts. Look at pump prices and Europe looks wildly inconsistent. Strip the tax out and the underlying product prices sit far closer together than the forecourt suggests. Most of what looks like a market difference between countries is a difference between finance ministries.
One caveat on using it well: these are weekly national figures. They are the right tool for understanding structure and trend, and the wrong tool entirely for deciding which station to visit this afternoon. A national average cannot tell you about a specific forecourt, and nothing published weekly can describe today.
What this means for a driver crossing borders
- Fill on the cheaper side, deliberately. Where a tax gap exists it is persistent, not a promotion: it does not disappear next week the way a local price war does. It is worth planning a tank around; where to fill up before a border lists the gap at 35 EU crossings.
- Do not drive far for it. The gap is per litre; the detour costs litres. A meaningful saving on a full tank evaporates quickly at motorway speed, and evaporates entirely if the queue at the border station is long.
- Check the fuel grade, not the label on the price board. Cross-border comparison only means anything between identical standards: E5 against E5, B7 against B7. Comparing a country's E10 to a neighbour's E5 produces a saving that does not exist.
- Remember which layer you are looking at. A cheap country and a cheap station are different phenomena. The first is fiscal and stable; the second is competitive and can change tomorrow.
- Expect diesel and petrol to diverge differently. Countries tax them independently, so the cheaper country for one fuel is not automatically the cheaper country for the other. Check the fuel you actually burn.
Where this connects to what we do
Refuelia is not a tax database and will not become one. What this structure explains is a limitation worth stating plainly: a national average can never answer a driver's question. Knowing that country A taxes fuel more heavily than country B tells you which side of a border to fill on. It tells you nothing about whether the station two junctions ahead is open, has diesel today, or is charging noticeably more than the supermarket forecourt behind you.
That second question (the specific one, about a specific forecourt, right now) is answerable only by somebody who was recently there. Which is why the prices on our map come with the minute they were reported, and why we show no price at all rather than an average dressed up as a local one. An average is a true statement about a country and a misleading statement about a station.
Use the Commission's bulletin to understand the system. Use a driver's report from an hour ago to decide where to stop.