GridPassport Research · Q1 2026 edition

Q1 2026: where European electricity markets moved most

See where wholesale prices fell below zero most often, which markets recorded the widest daily swings and when the cheapest three-hour windows most often appeared. The comparison uses published observations—not forecasts, household tariffs or modelled savings.

Period
Jan 1, 2026–Mar 31, 2026
Qualifying markets
30
Published dates
90/90
Latest source update
May 31, 2026, 18:36 GMT+2

What the data says

Three useful signals—not one opaque score.

Negative-price frequency, within-day spread and a recurring cheap window answer different questions, so this report keeps them separate.

Most negative-price days🇪🇸 Spain58.9%

53 of 90 qualifying days contained at least one reported interval below €0/MWh.

Widest average daily spread🇱🇹 Lithuania199.9 EUR/MWh

Mean of each observed day's high-minus-low wholesale reference price. This is not a household tariff spread.

Most common cheapest 3h window02:00-05:00local market time

The most frequent label across 537 qualifying market-day observations; individual markets differ.

Q1 2026 findings

The events behind the headline numbers.

This is the first complete quarterly baseline in the archive. Like-for-like change reporting begins with the next edition.

Broadest negative-price dayMar 22, 202617 markets

At least one negative interval appeared in 17 of 30 qualifying observed markets.

Widest single observed daily spread🇪🇪 Estonia842.0 EUR/MWh

Mar 30, 2026; one dated market observation, not a typical household price movement.

Negative-price exposure

How often did a market fall below zero?

Top 12 markets by share of qualifying observed days with at least one negative interval. Bar length uses the actual percentage on a 0–100% scale.

  1. 🇪🇸 Spain53/90 days58.9%
  2. 🇵🇹 Portugal35/90 days38.9%
  3. 🇫🇷 France26/90 days28.9%
  4. 🇬🇷 Greece15/90 days16.7%
  5. 🇩🇪 Germany / Luxembourg bidding zone14/90 days15.6%
  6. 🇱🇺 Luxembourg12/90 days13.3%
  7. 🇦🇹 Austria12/90 days13.3%
  8. 🇸🇮 Slovenia9/90 days10.0%
  9. 🇳🇱 Netherlands9/90 days10.0%
  10. 🇬🇧 Great Britain wholesale7/78 days9.0%
  11. 🇭🇷 Croatia8/90 days8.9%
  12. 🇧🇪 Belgium7/90 days7.8%

Full market table

Negative prices, spread and cheapest window.

How the comparison works ↓
Published wholesale reference-price observations. Rank uses the share of each market's qualifying observed days containing at least one negative-price interval.
RankMarketObserved daysNegative daysNegative intervalsAvg daily spreadCommon cheapest 3hCoverage
1SpainJan 1, 2026–Mar 31, 202690/9058.9%53 days0.64%53/8,334 intervals91.6EUR/MWh12:00-15:0019 days · local time100.0%up to 1 price area
2PortugalJan 1, 2026–Mar 31, 202690/9038.9%35 days0.53%35/6,644 intervals72.4EUR/MWh11:00-14:0016 days · local time100.0%up to 1 price area
3FranceJan 1, 2026–Mar 31, 202690/9028.9%26 days0.31%26/8,258 intervals113.2EUR/MWh03:00-06:0028 days · local time100.0%up to 1 price area
4GreeceJan 1, 2026–Mar 31, 202690/9016.7%15 days0.19%15/7,826 intervals155.3EUR/MWh12:00-15:0021 days · local time100.0%up to 1 price area
5Germany / Luxembourg bidding zoneGermany household prices · Luxembourg household pricesJan 1, 2026–Mar 31, 202690/9015.6%14 days0.16%14/8,492 intervals122.6EUR/MWh12:00-15:0018 days · local time100.0%up to 1 price area
6LuxembourgJan 1, 2026–Mar 31, 202690/9013.3%12 days0.56%12/2,159 intervals98.7EUR/MWh11:00-14:0023 days · local time100.0%up to 1 price area
7AustriaJan 1, 2026–Mar 31, 202690/9013.3%12 days0.14%12/8,630 intervals134.4EUR/MWh02:00-05:0024 days · local time100.0%up to 1 price area
8SloveniaJan 1, 2026–Mar 31, 202690/9010.0%9 days0.11%9/8,570 intervals132.9EUR/MWh11:00-14:0022 days · local time100.0%up to 1 price area
9NetherlandsJan 1, 2026–Mar 31, 202690/9010.0%9 days0.10%9/8,588 intervals118.6EUR/MWh02:00-05:0021 days · local time99.4%up to 1 price area
10Great Britain wholesaleJan 1, 2026–Mar 31, 202678/909.0%7 days0.19%7/3,742 intervals77.4EUR/MWh02:00-05:0015 days · local time100.0%up to 1 price area
11CroatiaJan 1, 2026–Mar 31, 202690/908.9%8 days0.09%8/8,613 intervals138.9EUR/MWh11:00-14:0022 days · local time100.0%up to 1 price area
12BelgiumJan 1, 2026–Mar 31, 202690/907.8%7 days0.08%7/8,608 intervals111.7EUR/MWh02:00-05:0023 days · local time100.0%up to 1 price area
13HungaryJan 1, 2026–Mar 31, 202690/906.7%6 days0.07%6/8,597 intervals181.6EUR/MWh11:00-14:0025 days · local time100.0%up to 1 price area
14CzechiaJan 1, 2026–Mar 31, 202690/906.7%6 days0.07%6/8,610 intervals130.6EUR/MWh11:00-14:0026 days · local time100.0%up to 1 price area
15SlovakiaJan 1, 2026–Mar 31, 202690/906.7%6 days0.07%6/8,612 intervals150.7EUR/MWh11:00-14:0025 days · local time100.0%up to 1 price area
16BulgariaJan 1, 2026–Mar 31, 202690/905.6%5 days0.06%5/8,392 intervals171.5EUR/MWh03:00-06:0019 days · local time100.0%up to 1 price area
17RomaniaJan 1, 2026–Mar 31, 202690/905.6%5 days0.06%5/8,414 intervals173.3EUR/MWh03:00-06:0018 days · local time100.0%up to 1 price area
18DenmarkJan 1, 2026–Mar 31, 202690/903.3%3 days0.02%3/17,144 intervals124.5EUR/MWh02:00-05:0019 days · local time100.0%up to 2 price areas
19LatviaJan 1, 2026–Mar 31, 202690/902.2%2 days0.02%2/8,343 intervals199.8EUR/MWh02:00-05:0018 days · local time100.0%up to 1 price area
20LithuaniaJan 1, 2026–Mar 31, 202690/902.2%2 days0.02%2/8,351 intervals199.9EUR/MWh02:00-05:0018 days · local time100.0%up to 1 price area
21SwedenJan 1, 2026–Mar 31, 202690/902.2%2 days0.01%2/34,244 intervals86.6EUR/MWh02:00-05:0022 days · local time100.0%up to 4 price areas
22SwitzerlandWholesale market onlyJan 1, 2026–Mar 31, 202690/901.1%1 days0.05%1/2,123 intervals58.7EUR/MWh02:00-05:0034 days · local time98.3%up to 1 price area
23FinlandJan 1, 2026–Mar 31, 202690/901.1%1 days0.01%1/8,432 intervals110.5EUR/MWh02:00-05:0017 days · local time100.0%up to 1 price area
24EstoniaJan 1, 2026–Mar 31, 202690/900.0%0 days0.00%0/8,273 intervals193.9EUR/MWh02:00-05:0017 days · local time100.0%up to 1 price area
25North MacedoniaJan 1, 2026–Mar 31, 202684/900.0%0 days0.00%0/1,924 intervals127.7EUR/MWh02:00-05:0022 days · local time95.5%up to 1 price area
26SerbiaJan 1, 2026–Mar 31, 202685/900.0%0 days0.00%0/1,987 intervals124.0EUR/MWh11:00-14:0020 days · local time97.4%up to 1 price area
27IrelandJan 1, 2026–Mar 31, 202690/900.0%0 days0.00%0/2,154 intervals105.1EUR/MWh03:00-06:0020 days · local time99.8%up to 1 price area
28MontenegroJan 1, 2026–Mar 31, 202680/900.0%0 days0.00%0/1,825 intervals100.4EUR/MWh11:00-14:0020 days · local time95.1%up to 1 price area
29ItalyJan 1, 2026–Mar 31, 202690/900.0%0 days0.00%0/51,754 intervals82.9EUR/MWh02:00-05:0024 days · local time100.0%up to 7 price areas
30NorwayJan 1, 2026–Mar 31, 202690/900.0%0 days0.00%0/42,518 intervals64.8EUR/MWh02:00-05:0022 days · local time100.0%up to 5 price areas

For households

Wholesale movement is a signal, not your bill.

Negative wholesale prices do not automatically mean free household electricity. Supplier margins, network charges, taxes, fixed fees and tariff rules still apply. Timing becomes directly relevant only when a retail tariff passes market changes through quickly enough.

The linked market names open GridPassport's separate household-price benchmarks where Eurostat coverage exists. For the practical layer, read what negative prices can mean at home.

Methodology

Comparable periods, visible limitations.

The rules exclude partial current days and require each displayed market to cover most of the exact report period.

01

Included observations

Only dates inside Jan 1, 2026–Mar 31, 2026 and rows with at least 80% usable source coverage. Each displayed market needs at least 72 of 90 days (80%).

02

Negative-price measures

A negative-price day contains at least one reported market interval below €0/MWh. Interval share divides negative intervals by all usable intervals. Resolutions differ, so intervals are not described as hours.

03

Volatility proxy

Daily spread is the highest minus lowest published wholesale reference point in the market aggregation. Its mean is a descriptive range, not a statistical volatility forecast.

04

Cheapest three-hour window

For each market-day, GridPassport identifies the cheapest contiguous three-hour wholesale reference window. The most frequent local-clock label is descriptive, not a recommended household schedule.

05

Market comparison limits

Multi-area markets use GridPassport's existing aggregation. The Germany/Luxembourg bidding zone and the separate Luxembourg source row use distinct source representations; their household links are therefore shown explicitly rather than treating the zone as one country.

06

No household or ROI claim

Values are wholesale reference prices normalized to EUR/MWh. They exclude retail components and do not calculate household bills, battery value, charging savings or product ROI.

Freshness and sources

Published market data with source links.

The aggregate was built Aug 30, 2026, 01:16 GMT+2 from observations updated as late as May 31, 2026, 18:36 GMT+2. Operators may revise historical values; a later correction can update the same stable report URL.

Completed periods only

Quarterly reports.

A quarter appears here only after the full period and coverage checks pass. Monthly evidence remains in the existing wholesale archive rather than a duplicate report series.

Open data

Need the numbers behind this report?

Download one aggregate row per market, including the exact period, denominator, negative-price frequency, spread, recurring window, coverage and source names.

Download this period as CSV

Tomorrow, without checking

Turn the price curve into one useful daily email.

Choose a country, see its cheapest and peak window, then receive the next published day-ahead brief by email.