Methodology & sources
How to read the numbers in this dashboard: definitions, data sources, and known limitations.
Definitions
- Final energy consumption
- Energy delivered to the end consumer for actual use (heating, mobility, industrial processes...), after transformation and transport — as opposed to primary energy (extracted before transformation). This is the measure used for every figure on this site.
- Electrification rate
- Share of electricity in the final energy consumption of a sector or sub-sector, as a percentage: electricity consumption divided by total consumption, across all energy carriers.
- Sector / sub-sector
- This site distinguishes 5 sectors (residential, tertiary, industry, transport, agriculture). The electrification rate and consumption by sector are Eurostat's direct figures (harmonised EU source, see below). Detail by sub-sector comes from separate SDES sources, with a different vintage and classification: energy end-uses (heating, hot water...) for residential/tertiary (CEREN), transport modes (energy balance) and the farming branch (PEFA). It may therefore not sum exactly to the sector total. Industry is deliberately left without sub-sectors: the only breakdown available (PEFA, NACE branches) has a scope too far removed from the Eurostat total to be shown without being misleading. See
data/README.mdfor details (mapping, ID conventions). - Charging session
- A connection between a vehicle and a charge point, from plug-in to unplug: it carries a start timestamp, a duration, an amount of energy delivered, and a success status. It is the basic unit of the Charging pages.
- Location type
- Category of the location where the charge point sits. The Charging pages distinguish five: business (private use), business (open to the public), local authority, multi-unit residential, and heavy goods vehicles. Each session is linked to one of them.
Conversion factor
1 Mtoe (million tonnes of oil equivalent) = 11.63 TWh. The unit selector at the top of the page applies this conversion to every figure and chart on the site.
Sources
SDES — Energy Balance of France
SDES (Service des données et études statistiques) · updated annualFinal energy consumption by sector, by usage sub-sector (heating, domestic hot water, specific electricity...) and by energy carrier — now feeds only the sub-sectors/usage layer (subsectors.json), updated manually. Since SDES itself feeds Eurostat, it also serves as a cross-check for the electrification rate by sector published via eurostat-nrg_bal_c.
Used for: subsectors.json
SDES — Key Figures of Energy
SDES · updated annualVerified aggregated figures (annual edition), useful as a cross-check on orders of magnitude.
Eurostat — Complete energy balances (nrg_bal_c)
Eurostat · updated annualHarmonized annual series of final consumption by sector (nrg_bal) and by energy carrier (siec), the single source for the electrification rate by sector (data/processed/sectors.json, latest-year snapshot), its historical series (data/processed/timeseries.json) and now also the carrier → sector flow diagram (data/processed/sankey.json, same vintage as sectors.json).
Used for: timeseries.json, sectors.json, sankey.json
ODRÉ / RTE — Electricity balance
RTE via opendata.reseaux-energies.fr · updated annualDetailed electricity production/consumption, used as a cross-check.
Decree No. 2026-76 of 12 February 2026 — 3rd multiannual energy programme (PPE3)
Légifrance / Journal officiel · updated multi-year (new PPE edition)Official electrification targets for final energy consumption (national and, for the first time, by sector for industry), used as the target trajectory overlaid on historical series.
Used for: src/lib/targets.ts
data.gouv.fr
Etalab · updated annualMirrors of certain SDES datasets, used as a fallback when the original SDES URLs are unavailable.
National EV Charging Data Observatory — Advenir and ADEME Charging Sessions (departments)
Avere-France (programme Advenir) / ADEME · updated monthlyAnonymized charging sessions (charge points funded by the Advenir and ADEME programs): timestamp, duration, energy delivered, success, location type, department/region. Flagship source for data/processed/recharge/ (docs/PLAN-RECHARGE.md, docs/RECHARGE-R0-FAISABILITE.md § 1).
Used for: recharge/load-curve.json, recharge/trend.json, recharge/reliability.json
SDES — Figures and statistics: renewable energy data
SDES (Service des données et études statistiques) · updated annualPrimary renewable energy production by sector (1990-2024 series) and the share of renewables in gross final energy consumption by carrier (electricity, heating and cooling, transport, total), with the 2030 target. Source for data/processed/enr/.
Used for: enr/production-filiere.json, enr/part-mix.json, enr/part-enr-trend.json
ODRÉ (Open Data Réseaux Énergies) — National éCO2mix (consolidated + real-time)
RTE (Réseau de Transport d'Électricité) via ODRÉ · updated real-time (tr) / annual (aggregate built by this site from the consolidated cons-def)Carbon intensity of French electricity consumption (taux_co2, gCO2eq/kWh, RTE methodology) and national consumption (MW), at half-hourly resolution since 2012. Source for data/processed/eco2mix/: eco2mix-national-cons-def (consolidated history, annual intensity) and eco2mix-national-tr (latest real-time reading, live tile) — /electricite/carbone.
Used for: eco2mix/annual.json, eco2mix/live.json
Consolidated file of electric vehicle charging points (Etalab)
Etalab / transport.data.gouv.fr · updated near-dailyOne public charge point per row: operator, rated power, location (coordinates + INSEE municipality code), commissioning date, pricing, wheelchair accessibility. Static IRVE schema v2.3.1. Source for the data/processed/irve/ module (docs/PLAN-RECHARGE.md §5, docs/RECHARGE-R0-FAISABILITE.md §2).
Used for: irve/national.json, irve/by-region.json, irve/timeline.json
Enedis — Annual electricity consumption by sector of activity
Enedis · updated annualAnnual electricity consumption aggregated by major sector of activity (residential, tertiary, industry, agriculture) and by region, from Enedis's "electricity consumption by sector of activity" dataset (regional granularity). Source for data/processed/enedis/.
Used for: enedis/secteurs.json, enedis/regions.json
SDES — Road vehicle registrations (DiDo API)
SDES (Service des données et études statistiques) · updated annual (single SDES vintage per datafile; monthly poll is a no-op if the vintage hasn't changed, cadence recommended by docs/ELECTRIFICATION-R0-FAISABILITE.md § Cadence for this dataset type)Municipal-level registrations of new and used vehicles, by fuel/power type (including "Electric and hydrogen"), user status, group and vehicle category, 2010-2025. Feeds data/processed/immatriculations/ (dynamics of mobility electrification).
Used for: immatriculations/trend.json, immatriculations/by-department.json
SDES — Parc de véhicules routiers (API DiDo)
SDES (Service des données et études statistiques) · updated annuelle (stock au 1er janvier ; millésime SDES unique par datafile ; poll mensuel en no-op si le millésime n'a pas changé)Parc communal de voitures particulières en circulation au 1er janvier, par motorisation (dont "Electrique"), vignette Crit'Air, statut utilisateur, groupe et catégorie, 2011-2025. Alimente data/processed/parc/ (stock du parc VE, complément du flux d'immatriculations sur /mobilite/immatriculations).
Used for: parc/trend.json, parc/by-department.json
Agence ORE — Voitures particulières immatriculées par commune et par type de recharge (données AAA Data)
Agence ORE (données AAA Data) · updated trimestrielle (date_arrete, fin de trimestre ; re-téléchargé au run mensuel, no-op si inchangé)Stock trimestriel de voitures particulières en circulation par commune, dont VP rechargeables électriques et gaz (nb_vp_rechargeables_el, nb_vp_rechargeables_gaz, nb_vp), 2020-T4 → 2025-T3. Alimente data/processed/parc-trimestriel/ (vue trimestrielle du parc VE sur /mobilite/immatriculations, complément du parc SDES annuel).
Used for: parc-trimestriel/trend.json, parc-trimestriel/by-department.json
GRDF Open Data — Annual gas consumption by region and NAF code
GRDF · updated annualAnnual natural gas consumption (MWh) and number of delivery points on the GRDF distribution network, by region, major sector of activity (residential, tertiary, industry, agriculture, unassigned) and NAF code. Source for data/processed/grdf/ (the /consommation/gaz module).
Used for: grdf/national-by-sector-year.json, grdf/regional-latest-year.json
ADEME — Base Carbone® (emission factors)
ADEME · updated irregular (new major version ~annual, e.g. v17, v23…), checked on every pipeline runPublic database of greenhouse gas emission factors (gCO2e per unit, including kWh) — a reusable calculation building block for converting energy consumption into emissions. Feeds data/processed/base-carbone/factors.json (electricity, natural gas, heating oil, LPG, coal, wood).
Used for: base-carbone/factors.json
SDES — Data center electricity consumption
SDES (Service des données et études statistiques), à partir des Données locales de l'électricité et de la base OPERAT (Ademe) · updated annualAnnual electricity consumption of data centers above 1 GWh/year (2018-2024): by consumption bracket, by department, cumulative concentration, and intensity per m² of server room. Source for data/processed/data-centers/.
Used for: data-centers/trend.json, data-centers/intensity.json, data-centers/concentration.json, data-centers/departments.json
ADEME — Energy Performance Diagnostics (DPE) for existing housing (since July 2021)
ADEME · updated continuous (API updated regularly, pipeline run monthly)Energy Performance Diagnostics (DPE) for existing housing: DPE class (A→G), main heating energy (including electricity), location (BAN), diagnosis date. Source for the /logement/dpe module (state of the diagnosed housing stock and electrification of residential heating).
Used for: dpe/by-class.json, dpe/by-heating-energy.json, dpe/heating-trend.json, dpe/by-region.json
Contours des départements et régions (France métropolitaine)
france-geojson (Grégoire David) — dérivé IGN ADMIN EXPRESS / OpenStreetMap · updated Stable (géométrie administrative)Used for: src/lib/geo/departements-france.json, src/lib/geo/regions-france.json
Official targets (PPE3)
The “target” trajectories overlaid on the homepage and the Industry page come from the Décret n° 2026-76 du 12 février 2026 relatif à la 3ᵉ programmation pluriannuelle de l'énergie (PPE3) (published in the Official Journal on February 13, 2026). The decree sets the share of electricity in final energy consumption at 34% in 2030 and 38% in 2035 (up from 27% in 2023), and, for the first time, a numerical trajectory for industry: from 30% today to 47% in 2035.
This “30%” starting point for industry, cited in the decree, does not exactly match the Eurostat electrification rate shown on this site for 2024 (35.7%): this is likely a methodological or scope difference between the PPE's energy accounting and the Eurostat breakdown (nrg_bal_c) used here. Both values are shown without being merged.
Electric vehicle charging
The Charging pages rely on the Observatoire national de la donnée de recharge (Advenir × ADEME) (32.9 million sessions, 2016-07 → 2026-06). Bornes financées par les programmes Advenir et ADEME (~150 k points de charge), pas l'intégralité du parc de recharge français : les niveaux et les parts entre typologies ne sont pas directement représentatifs de l'ensemble du parc.
- 24-hour charging curve
- For each session, the energy delivered is spread pro rata across every hour of the day it spans (a session straddling two hours feeds both, proportionally). The average power shown for a given hour is the energy attributed to it divided by the cumulative active charging time within that hour, calculated only over sessions that actually delivered energy. This is therefore an average power “at the plug”, smoothed over the vehicle's entire dwell time — not a peak power: which is why even heavy goods vehicles show modest values, since many charge slowly overnight at a depot.
- Reliability and failed sessions
- The success rate is the share of completed sessions out of the total, by location type and by month. Failed sessions are never discarded: they form a dimension of their own (reliability) and are counted in the energy breakdown; they are only excluded from the average-power denominator, since no energy was delivered.
- Assigning sessions to a month
- A session's month is derived from its actual start date, never from the source file's name: a file dated “2022-08” may contain sessions that started anywhere from June to August.
Known limitations
- The electrification rate, total consumption, and the historical series by sector all come directly from Eurostat (
nrg_bal_c), regenerated automatically by a CI pipeline (npm run data:update): the reference year shown (2024) is the latest one available for France at generation time, not a value fixed by hand. - The flow diagram (Sankey) is now rebuilt from Eurostat (
nrg_bal_c), just like the sector layer: same source and vintage as the sector electrification rate. Only the breakdown by end-use sub-sector (subsectors.json) remains sourced from SDES/CEREN and updated manually — Eurostat stops at the sector level, it doesn't go down to end-use. This layer therefore has neither the same vintage nor the same method: the sum of a sector's sub-sectors, or the rate recalculated from them, can differ noticeably from the Eurostat sector figure shown — this isn't an error, just two independent sources presented side by side. - The Charging pages only cover charge points funded by the Advenir and ADEME programmes (~150,000 charge points), not France's entire charging infrastructure: the levels and the shares between location types are not directly representative of charging across France as a whole.
- The “France (weighted average)” series compared against the PPE3 targets doesn't exist as such in the source data: it is calculated by weighting each sector's rate by its consumption in the reference year (2024), with these weights applied identically across the whole series, even though each sector's actual weight shifts slightly from year to year.
- The Electricity consumption (Enedis) and gas (GRDF) pages cover the distribution network (~95% of consumption), excluding large industrial sites connected directly to the transmission network (RTE HTB / GRTgaz): the “industry” share is therefore under-estimated compared with full national balances. On the Enedis side, the series starts in 2018: a change in segmentation makes earlier years non-comparable, so they are excluded.
- The charging point fleet (IRVE) register only includes charge points that are open to the public and declared under the IRVE scheme: neither the private fleet (homes, closed businesses) nor undeclared charge points are counted.
- The carbon content of electricity (éCO2mix) page shows an RTE estimate (emission factors by generation source), not a full life-cycle analysis.
- The Housing energy ratings (DPE) page only covers homes that have undergone an energy assessment (sale, rental, new build) — not an exhaustive census of the housing stock, with a likely bias toward homes currently on the market.
- The vehicle registrations data is published by SDES with an annual vintage (no monthly granularity), and the data centers figures only cover centers using more than 1 GWh per year.
Emission factors
Supporting calculation building block (not a dedicated page): a small selection of emission factors (gCO2e per kWh) by energy carrier, taken from ADEME Base Carbone® (version V23.6). It serves as a reusable building block for modules that convert energy consumption into emissions (e.g. éCO2mix, avoided-emissions calculations).
- Électricité — mix moyen France continentale0.052 kgCO2e/kWh
- Gaz naturel — combustion0.243 kgCO2e/kWh PCI
- Fioul domestique — combustion0.325 kgCO2e/kWh PCI
- Fioul lourd — combustion0.325 kgCO2e/kWh PCI
- GPL / Propane — combustion0.271 kgCO2e/kWh PCI
- Houille (charbon) — combustion0.377 kgCO2e/kWh PCI
- Bois bûche (20% humidité) — combustion0.603 kgCO2e/kWh PCI
- Bois granulé — combustion en chaudière0.027 kgCO2e/kWh
- Bois granulés — combustion en poêle à bois0.032 kgCO2e/kWh
Sélection restreinte aux vecteurs pertinents pour ce dashboard (électricité, combustibles fossiles et bois utilisés en chauffage). Chaque valeur est la ligne "total" renvoyée par l'API pour l'élément (combustion + amont déjà sommés côté ADEME quand l'élément est décomposé) : aucune sommation n'est effectuée par ce script. Les réseaux de chaleur ont été exclus : la Base Carbone ne publie qu'une valeur par réseau nommé (des centaines d'entrées très hétérogènes), pas de moyenne nationale unique exploitable ici.