~/europe-power-grid LIVE --:--:-- apps ← about me

Europe Power Grid

Live electricity generation mix for 29 countries · nuclear, wind, solar, hydro, gas & coal · carbon intensity, cross-border flows, day-ahead prices & 24-hour history · data from Fraunhofer ISE / ENTSO-E

▶ Europe right now loading…
Generation
across reporting countries
Renewable
share of generation
Carbon
weighted g CO₂/kWh
Cleanest
 
Dirtiest
 
% of generation from renewables
low
high
Each tile is a country, placed roughly where it sits on the map. Click one to open its live breakdown below. Grey tiles are still loading or have no data published for this interval.
Germany
Generation
total output now
Demand
 
Renewable
share of generation
Carbon
 
Day-ahead
 
Generation mix
By source
Last 24 hours
Hover or drag across the chart to read any moment. Sources are stacked bottom-up, largest first.
Cross-border flows
green = exporting to that neighbour · red = importing from it
Day-ahead price
▶ All countries
Country Gen GW Load GW Renew % Solar % Wind % Nuclear % Fossil % g CO₂
Click any column to sort, or any row to open that country. Percentages are shares of that country's own generation, so they add to 100% within a row.
▶ How this works

Every fifteen minutes, each European transmission system operator publishes how much electricity its country produced, broken down by fuel. That obligation comes from EU transparency regulation, and the results land on the ENTSO-E Transparency Platform. Fraunhofer ISE cleans and republishes it through the free energy-charts.info API, which is what this page reads.

One wrinkle: the upstream API does not send CORS headers, so a browser is not allowed to call it directly from another domain. This page therefore requests it through a thin read-only relay on jasperbernaers.com that does nothing but forward the query and hand back the JSON unchanged — it stores nothing and sees nothing about you beyond the country code you clicked. If that relay is unavailable it falls back to public CORS relays, and if the upstream ever enables CORS it will simply call it directly.

The generation mix here counts only actual generation. The consumption series that the API also returns — pumped-storage pumping, battery charging, cross-border trading, load, residual load and the pre-computed share figures — are deliberately excluded from the mix so that the percentages describe what power stations are producing, and nothing else. Renewable share is taken straight from the source. Carbon intensity is the one estimated figure on the page: a weighted average using standard direct-emission factors per fuel, explained in the FAQ below.

No accounts, no API keys, no cookies, no analytics profile of you, no ads. Just a single HTML file and a public research API. Data is licensed CC BY 4.0 by Fraunhofer ISE.

Frequently asked questions — 43 answers on live European electricity data

01. The basics

What is the Europe Power Grid dashboard?

It is a free, live view of how electricity is actually being generated across Europe right now. For each country you can see how many gigawatts are coming from nuclear, wind, solar, hydro, gas, coal, biomass and the rest — updated continuously, with a 24-hour history chart, cross-border flows and day-ahead prices. Everything runs in your browser: no signup, no account, no tracking.

Where does the data come from?

All figures come from the public API of energy-charts.info, run by Fraunhofer ISE — Europe's largest solar energy research institute. Fraunhofer ISE aggregates and cleans data published by the ENTSO-E Transparency Platform, which every European transmission system operator is legally required to feed. So the numbers ultimately come from the grid operators themselves, not from estimates or models.

How often does the data update?

Most countries publish in 15-minute intervals; a few publish hourly. The underlying platform typically lags real time by 15 to 60 minutes because operators have to validate the measurements first. This page refreshes the selected country every 3 minutes and the Europe overview every 10 minutes, so what you see is as close to live as the official data allows.

Is it really live, or is it yesterday's data?

It is live in the sense that it is the most recent validated data point available — usually somewhere between 15 and 90 minutes old. The timestamp shown next to each country tells you exactly how old the reading is. If a country's data feed stalls, the age counter will keep climbing and you will know not to trust it as current.

Is it free? Do I need an account?

It is completely free and there is nothing to sign up for. There are no accounts, no API keys, no paywall and no ads. The page is a single static HTML file that talks directly to a public research API from your browser.

Do you store or track anything about me?

No personal data is collected. Your country selection is stored in the URL so you can bookmark or share it. The only outbound requests are for the energy data itself, which travel through a read-only relay on this domain that logs nothing and simply forwards the query upstream. There is no login, no cookie wall and no advertising network.

02. Reading the numbers

What is the difference between generation and load?

Generation is how much electricity power plants inside the country are producing. Load is how much electricity the country is consuming. They are rarely equal: the gap is filled by imports or exports across interconnectors. A country generating 40 GW while consuming 45 GW is importing roughly 5 GW from its neighbours.

Why does 'renewable share' sometimes show two different numbers?

Because there are two honest ways to measure it. Renewable share of generation asks: of everything produced here, how much was renewable? Renewable share of load asks: of everything consumed here, how much was covered by domestic renewables? A country exporting a lot of wind power will have a high generation share but a lower load share, and vice versa. Both values come straight from the data source rather than being estimated here.

What does GW mean, and how is it different from GWh?

A gigawatt (GW) is a rate — how fast electricity is flowing at this instant, like the speedometer in a car. A gigawatt-hour (GWh) is a quantity — how much energy flowed over time, like the odometer. This dashboard shows power in GW because it is a snapshot of right now. One gigawatt is roughly the output of a large nuclear reactor, or enough to supply about a million European homes.

Why do some sources show negative values?

Two things in the data can legitimately go negative. Hydro pumped storage consumption and battery consumption are negative because the plant is drawing power from the grid to store it rather than supplying it. Cross border electricity trading goes negative when the country is a net exporter. These series are deliberately excluded from the generation mix on this page so that percentages add up to a meaningful 100%.

What is 'residual load'?

Residual load is total demand minus wind and solar output. It is the part of demand that still has to be met by dispatchable plants — gas, coal, nuclear, hydro reservoirs, imports and storage. Grid operators watch it closely because it tells them how much controllable capacity they need on standby. When residual load goes very low or negative, the grid is running mostly on weather.

What is pumped storage, and why does it appear twice?

Pumped hydro storage is Europe's biggest battery. When power is cheap and plentiful it pumps water uphill into a reservoir; when power is scarce it lets the water run back down through turbines. It therefore appears both as generation (releasing) and as consumption (pumping). This page counts only the generating side in the mix, and treats the pumping side as demand.

Why do the percentages not exactly match my national grid operator's website?

Several reasons, all legitimate. National operators often include small distribution-connected plants that are not reported to ENTSO-E, they may publish at different time resolutions, and they may categorise sources slightly differently — for example counting waste-to-energy as partly renewable. The ENTSO-E data used here is standardised across Europe so countries are comparable to each other, which sometimes means it differs a little from any single national figure.

What does 'Others' mean in the mix?

It is the catch-all category ENTSO-E uses for generation that does not fit the standard fuel types, or that an operator has chosen not to break down further. It is usually a small slice. Because its true carbon content is unknown, this page assigns it a mid-range emission factor when estimating carbon intensity.

03. Countries and coverage

Which countries are included?

Twenty-nine European countries: Germany, France, the United Kingdom, Spain, Italy, Poland, the Netherlands, Belgium, Austria, Switzerland, Sweden, Norway, Denmark, Finland, the Czech Republic, Portugal, Greece, Romania, Hungary, Bulgaria, Slovakia, Croatia, Serbia, Slovenia, Ireland, Estonia, Latvia, Lithuania and Luxembourg. Coverage depends on what each operator publishes, so a few small countries report fewer categories than the big ones.

Why does a country sometimes show no data?

Usually a temporary publication gap at the source: an operator missed a delivery window, or the transparency platform is doing maintenance. Occasionally a very small grid simply does not report a given interval. Try again in a few minutes, or pick another country — a gap in one country does not affect the others.

Is UK data still included after Brexit?

Yes. The United Kingdom left the EU internal electricity market but National Grid ESO still publishes generation data, and it remains available through the same aggregation. UK cross-border flow data is patchier than for EU members, so import and export figures for Great Britain can be incomplete.

What is a bidding zone, and why does the price section use different codes?

Electricity is priced per bidding zone, not per country. Most countries are a single zone, but some are split: Sweden has four (SE1–SE4), Norway five (NO1–NO5), Denmark two (DK1 and DK2) and Italy several. Where a country has multiple zones this page shows one representative zone and labels it, because there is no single national price to quote.

Why is Luxembourg's generation so small?

Luxembourg genuinely generates very little of its own electricity and imports the large majority from Germany and Belgium. Its numbers are small but correct. It is a good illustration of why generation mix and consumption mix are different questions.

04. How the grid actually works

Why does solar output collapse to zero every evening?

Because photovoltaic panels need daylight. Across Europe solar output traces a bell curve peaking around local solar noon, rising steeply in spring and summer and shrinking to a few hours in midwinter. Watch the 24-hour chart at different times of year and the seasonal difference is dramatic — in June Germany can peak above 40 GW of solar; in December it barely reaches 10.

Why does wind output swing so much from day to day?

Wind power scales with roughly the cube of wind speed, so a modest change in weather produces a very large change in output. A single Atlantic depression tracking across Europe can take north-west European wind generation from near zero to record highs within two days. This variability is why the grid still needs dispatchable backup and interconnection.

What is the 'duck curve'?

It is the shape of residual load on a sunny day in a solar-heavy grid: high in the morning, plunging through midday as solar floods in, then ramping sharply upward in the early evening as the sun sets and people come home. Plotted over the day it looks like the profile of a duck. The steep evening ramp is one of the hardest engineering problems in modern grid operation.

What is merit order, and why does it matter?

Power plants are dispatched cheapest-first. Wind and solar have almost zero marginal cost so they run whenever available; nuclear and lignite come next; gas and oil are the expensive marginal plants. The last plant needed to meet demand sets the wholesale price for everyone. This is why adding renewables pushes wholesale prices down, and why gas prices tend to dominate electricity prices in hours when gas is on the margin.

What is curtailment?

Curtailment is deliberately throttling back wind or solar farms even though the wind is blowing and the sun is shining — usually because the local grid cannot carry the power to where demand is, or because supply already exceeds demand. It shows up in the data as output well below what the weather would suggest. Building more transmission and storage is how operators reduce it.

Why does nuclear output stay so flat?

Nuclear plants have very high fixed costs and very low fuel costs, so they are most economic running flat out. Technically most modern reactors can load-follow, and France in particular does throttle its fleet to match demand, but as a rule nuclear forms a stable baseload band at the bottom of the stacked chart while wind, solar and gas move around above it.

What are interconnectors and why do cross-border flows matter?

Interconnectors are high-capacity cables linking national grids, often high-voltage direct current under the sea. They let a country with surplus cheap wind sell it to a neighbour with a shortfall, which lowers prices and reduces the amount of backup capacity everyone has to build. The cross-border panel shows the physical flow on each link — which is not always the same as the commercial trade, because electricity follows the path of least resistance.

What is capacity factor?

Capacity factor is actual output divided by theoretical maximum output over a period. Typical European values are roughly 85–90% for nuclear, 25–35% for onshore wind, 40–55% for offshore wind and 10–15% for solar. It is why installed capacity figures and actual generation figures tell very different stories, and why comparing nameplate megawatts across technologies is misleading.

05. Carbon intensity

How is carbon intensity calculated here?

Each generation source is multiplied by a standard direct-emissions factor in grams of CO2 per kilowatt-hour, then divided by total generation to give a weighted average. The factors used are approximately: lignite 1050, hard coal 900, coal-derived gas 800, oil 700, gas 400, waste 350, other 300, biomass 50, and zero for nuclear, wind, solar, hydro and geothermal.

Why is nuclear counted as zero carbon?

Because these are direct operating emissions — what comes out of the stack while generating. A nuclear plant emits no CO2 in operation. On a full lifecycle basis, including mining, construction and fuel processing, the IPCC puts nuclear at roughly 12 g CO2/kWh, similar to wind and below solar. Lifecycle numbers would raise every low-carbon source a little but would not change the ranking.

Is this the same number that electricityMaps or my national regulator publishes?

Not exactly, and it is worth knowing why. This page shows production-based intensity: the carbon content of electricity generated inside the country. Consumption-based figures also account for imports and exports, which can shift a heavily importing country's number substantially. Different providers also use slightly different emission factors. Treat the figure here as a well-founded estimate for comparison, not as an audited accounting number.

What counts as a clean grid?

As a rough guide: below 100 g CO2/kWh is very clean — typically hydro- or nuclear-dominated grids like Norway, Sweden, France and Switzerland. Between 100 and 300 g is clean to moderate. Between 300 and 500 g is carbon intensive. Above 500 g means coal or lignite is doing much of the work. The European average has fallen steeply over the last decade.

When is the best time to charge my EV or run the dishwasher?

Look for the hours when carbon intensity dips on the 24-hour chart. In most of Europe that means midday on sunny days when solar peaks, or windy nights when demand is low and wind output is high. Shifting flexible loads into those windows genuinely reduces emissions, and in markets with dynamic tariffs it usually saves money too.

Does biomass really deserve a low emission factor?

It is contested. Burning wood releases roughly as much CO2 at the stack as coal; the low factor used here reflects the standard accounting convention that regrowing the biomass reabsorbs it. Critics point out the regrowth takes decades — the 'carbon payback period' — which matters for near-term climate targets. The 50 g figure used here is a conventional compromise, not a settled scientific verdict.

06. Prices

What price is shown, and where does it come from?

It is the day-ahead wholesale market price in euros per megawatt-hour for the relevant bidding zone, as published through the same transparency platform. This is the price large buyers pay on the spot market — it is not your retail tariff, which also includes network charges, taxes, levies and your supplier's margin.

How do I convert EUR/MWh into something familiar?

Divide by ten to get euro cents per kilowatt-hour. So 80 EUR/MWh is 8 c/kWh at wholesale. Household retail prices in Europe are typically two to four times the wholesale price once network fees and taxes are added.

Why do prices sometimes go negative?

Negative prices happen when inflexible generation exceeds demand — for example a windy, sunny Sunday when nuclear and must-run plants cannot easily shut down. Producers then pay to keep feeding the grid rather than shut down and restart, which can cost more. Negative prices are a signal that the system needs more storage, more flexible demand or more interconnection.

07. Using this page

Can I share a link to a specific country?

Yes. Selecting a country updates the address bar, so you can copy the URL and it will open straight onto that country. Bookmarking it works the same way.

Does it work on a phone?

Yes. The map, charts and tables all reflow for small screens, and the 24-hour chart supports touch to inspect any point in time. It is designed to be readable one-handed.

Can I use these numbers in my own work?

The underlying data is published by Fraunhofer ISE under a CC BY 4.0 licence, so yes, with attribution to energy-charts.info and ENTSO-E. If you need the data programmatically, go to the energy-charts API directly rather than scraping this page — it is well documented and free.

Why does it occasionally take a few seconds to load all countries?

The overview fetches every country separately from the upstream API, a handful at a time, so as not to hammer a free public research service. Tiles fill in as their data arrives rather than making you wait for all of them. If a request fails the page retries through a fallback route before giving up on that country.

Something looks wrong. Is it the page or the data?

Check the age stamp on the country first — if it is hours old, the upstream feed has stalled and there is nothing this page can do. Compare against energy-charts.info directly to confirm. Genuine display bugs are worth reporting; the underlying figures are passed through unmodified apart from the carbon intensity estimate and the exclusion of the consumption and share series from the generation mix.

Why does the data go through a relay on your domain instead of straight to the source?

Because the energy-charts API does not send the Access-Control-Allow-Origin header, browsers refuse to hand its responses to a page served from another domain. That is a browser security rule, not a fault in the data. So this site runs a small read-only forwarder that fetches the same public URL server-side and returns the JSON untouched. It accepts only the handful of energy-charts endpoints this page uses, keeps no logs and holds no keys. If the forwarder is down the page falls back to public CORS relays, and if the upstream ever enables CORS it will call it directly.

Does this page work offline?

The page itself is a single static file, but it needs a network connection to fetch live data. Once loaded, the country you are viewing stays on screen if you lose connectivity — it simply stops updating, and the age stamp will show you that.