Open data
Open data
Every public data file from EREVergelijken.eu, with its fields, how often it is updated, the licence and a citation.
How to cite us
Cite a page with the title, the URL and the date on the page (updated or checked). Cite a dataset with the name, the file URL, the date inside that file and CC BY 4.0.
Licence
These files are under CC BY 4.0. Attribution: EREVergelijken.eu (the ERE Team).CC BY 4.0.
ERE providers (Dutch labels)
Every compared provider with pricing, payout, contract, net indication and trust score. Dutch labels.
Updates
Terms are checked on the 1st of the month (terms-check.yml). A check only reads; a person updates the source file. This JSON file is rebuilt on every publish. dataCheckedOn is the latest provider check.
Date field: dataCheckedOn
Fields
| Field | Meaning |
|---|---|
| title, publisher, source, license | Name, publisher EREVergelijken.eu, page source and CC BY 4.0 (name, url, attribution). |
| dataCheckedOn | Latest check date of a provider in the list (YYYY-MM-DD). |
| referenceAnnualKwh | Annual kWh the net indication is calculated on. |
| notes | How to read commission, the volume schedule, the minimum and maximum, the net indication and the trust score. |
| providers[].slug, name, url | Key, name and the page on EREVergelijken.eu. |
| providers[].website, legalEntity | Own site and legal entity, or null when that is not public. |
| providers[].registration | open, preregistration, waitlist or closed. |
| providers[].audiences | Audiences, for example private, business, HOA. |
| providers[].eligibility | Who can sign up, in one sentence, in the language of this file. |
| providers[].neaListed | Whether the provider is on the NEa list of registration service providers. |
| providers[].commission | Standard 1-year commission as a fraction (0.15 is 15%), or null when no percentage is public. |
| providers[].commissionAtReferenceKwh | Fraction at referenceAnnualKwh. The published volume tier at that volume, otherwise the same as commission. |
| providers[].commissionTiers | Volume schedule or null. Each item: fromKwh, toKwh (where the next step starts, or null), rate, and termMonths (12 is 1 year). |
| providers[].commissionMinEur | Minimum commission in euro per charger a year (incl. VAT), or null. The commission is gross times the rate, then limited. |
| providers[].commissionMaxEur | Maximum commission in euro per charger a year (incl. VAT), or null. |
| providers[].annualFeeEur | Fixed amount in euro per year, or null. |
| providers[].pricing, payout, payoutText, contract, contractMonths, lockIn | Pricing text, payout code and text, contract text, term in months, and whether leaving is restricted. |
| providers[].netEurPerYearAtReferenceKwh | Indicative net per year: low and high, or null when we cannot estimate an amount. |
| providers[].trustScore, trustBand | Trust score from 0 to 10 and the band label, or null. |
| providers[].hiddenFees, hiddenFeesCode, checkedOn | Hidden fees in words and as a code, and this provider’s check date. |
Example citation
EREVergelijken.eu (the ERE Team). "ERE providers (Dutch labels)". https://erevergelijken.eu/data/ere-aanbieders.json. CC BY 4.0. Data checked on October 21, 2026.
ERE providers (English labels)
The same rows as ere-aanbieders.json, with English text.
Updates
Same cadence as ere-aanbieders.json.
Date field: dataCheckedOn
Fields
| Field | Meaning |
|---|---|
| title, publisher, source, license | Name, publisher EREVergelijken.eu, page source and CC BY 4.0 (name, url, attribution). |
| dataCheckedOn | Latest check date of a provider in the list (YYYY-MM-DD). |
| referenceAnnualKwh | Annual kWh the net indication is calculated on. |
| notes | How to read commission, the volume schedule, the minimum and maximum, the net indication and the trust score. |
| providers[].slug, name, url | Key, name and the page on EREVergelijken.eu. |
| providers[].website, legalEntity | Own site and legal entity, or null when that is not public. |
| providers[].registration | open, preregistration, waitlist or closed. |
| providers[].audiences | Audiences, for example private, business, HOA. |
| providers[].eligibility | Who can sign up, in one sentence, in the language of this file. |
| providers[].neaListed | Whether the provider is on the NEa list of registration service providers. |
| providers[].commission | Standard 1-year commission as a fraction (0.15 is 15%), or null when no percentage is public. |
| providers[].commissionAtReferenceKwh | Fraction at referenceAnnualKwh. The published volume tier at that volume, otherwise the same as commission. |
| providers[].commissionTiers | Volume schedule or null. Each item: fromKwh, toKwh (where the next step starts, or null), rate, and termMonths (12 is 1 year). |
| providers[].commissionMinEur | Minimum commission in euro per charger a year (incl. VAT), or null. The commission is gross times the rate, then limited. |
| providers[].commissionMaxEur | Maximum commission in euro per charger a year (incl. VAT), or null. |
| providers[].annualFeeEur | Fixed amount in euro per year, or null. |
| providers[].pricing, payout, payoutText, contract, contractMonths, lockIn | Pricing text, payout code and text, contract text, term in months, and whether leaving is restricted. |
| providers[].netEurPerYearAtReferenceKwh | Indicative net per year: low and high, or null when we cannot estimate an amount. |
| providers[].trustScore, trustBand | Trust score from 0 to 10 and the band label, or null. |
| providers[].hiddenFees, hiddenFeesCode, checkedOn | Hidden fees in words and as a code, and this provider’s check date. |
Example citation
EREVergelijken.eu (the ERE Team). "ERE providers (English labels)". https://erevergelijken.eu/data/ere-providers.json. CC BY 4.0. Data checked on October 21, 2026.
ERE price
The current median, the current indication and every dated observation from a named source.
Updates
Every Tuesday (price-record.yml, npm run price:record). That job writes new observations itself. current.date is the newest source in the median.
Date field: current.date
Fields
| Field | Meaning |
|---|---|
| title, publisher, source, license, unit | Name, publisher, page /ere-prijs/, CC BY 4.0, unit EUR per ERE. |
| current.price, current.low, current.high, current.date | Median, low and high of the band, and the date of the newest source in that median. |
| indication | Current indication, or null when fewer than 2 sources qualify. price is the median. low and high are the lowest and highest figure the sources state (the source band, or the price itself). from and to are YYYY-MM-DD. sources has label, date, price and url. Median of the latest price indication per named source, plus a dated benchmark, within the last 14 days of the newest named observation. No realised sales. An aggregator without a named source does not count. This is a different figure from current. |
| observations[].date, source, label, kind, named | Reference date, source key, label, kind (benchmark, realised, indicative, aggregator) and whether the source is named. |
| observations[].price, low, high, url, note | Price per ERE, optional band, source URL and optional note. Aggregators are not part of current or indication. |
Example citation
EREVergelijken.eu (the ERE Team). "ERE price". https://erevergelijken.eu/data/ere-prijs.json. CC BY 4.0. Data checked on October 18, 2026.
ERE market monitor
One JSON file per quarter: price, providers, trust, commission, payouts and public charging, with sources.
Updates
Rebuilt on every publish. The edition covers one quarter (period.start to period.end). What changed after that is included through includedThrough. The ERE price follows the Tuesday price check, the electricity price the daily day-ahead check.
Date field: modified
Fields
| Field | Meaning |
|---|---|
| id, title, period, published, includedThrough, modified | Quarter id, title (nl and en), period.start and period.end, publication date, how far post-quarter notes go, and the latest date in the file. |
| license, voice, citation, findings | CC BY 4.0, the public voice (the ERE Team), a citation sentence and the findings, each in nl and en. |
| figures[] | id, label, value, unit, asOf, source. These are the edition’s measured variables. |
| price | method, atPrior, atEnd, live, inQuarter, anonymousExcluded, afterQuarter. Each basket has date, price, low, high and sources. |
| providers | asOf, listed, byStatus, closed, addedToComparison, rows (name, slug, status, trustScore, commission, annualFeeEur, guaranteedMinPerKwh). |
| trust | asOf, n, median, average, averageRounded1, bands. |
| commission | asOf, n, min, max, median. Fractions, not percent signs. |
| breakEven[] | slug, name, fee, feeNow, atEnd, atLive. kWh a year where a fixed fee equals the median commission. |
| charging | asOf, acMedian, dcMedian, acLow, acHigh, dcLow, dcHigh, networks (slug, name, ac, acMin, dc, dcMin). Euro per kWh. |
| links | html (nl and en), json and csv of this edition. |
Example citation
EREVergelijken.eu (the ERE Team). "ERE market monitor". https://erevergelijken.eu/data/ere-marktmonitor/2026-q3.json. CC BY 4.0. Data checked on October 21, 2026.
Electricity price per month
Dutch day-ahead price per month since 2019, excluding VAT and energy tax.
Updates
Every day (daily-prices.yml, scripts/record-day-ahead.mjs) and also on Tuesday in price-record.yml. updatedOn is the date of the series.
Date field: updatedOn
Fields
| Field | Meaning |
|---|---|
| title, publisher, source, license, attribution, unit | Name, publisher, page /trends/, CC BY 4.0, the Energy-Charts / SMARD attribution, unit EUR per MWh excluding VAT. |
| definitions | Meaning of avg, smartAvg, eveningAvg, negativeHours, zeroOrNegativeHours and partial. |
| updatedOn | Date the monthly series was updated. |
| months[] | month (YYYY-MM), avg, min, max, smartAvg, eveningAvg, negativeHours, zeroOrNegativeHours, intervalMinutes, coverage, partial, through. |
Example citation
EREVergelijken.eu (the ERE Team). "Electricity price per month". https://erevergelijken.eu/data/stroomprijs-per-maand.json. CC BY 4.0. Data checked on October 21, 2026.
Electricity price per day
Day-ahead price per day since 2019, plus hours with a negative price and the cheapest consecutive hours.
Updates
Every day (daily-prices.yml, npm run dayahead:daily). updatedOn is when the series was updated; through is the last day in the file.
Date field: updatedOn
Fields
| Field | Meaning |
|---|---|
| title, publisher, source, license, attribution, unit | Name, publisher, page /stroomprijs/, licence (name, url), attribution, unit. |
| definitions, updatedOn, first, through, gaps | Field meanings, update date, first day, last day, and days with missing hours (date, hours). |
| days[] | date, avg, min, max, negativeHours, smartAvg, eveningAvg, windowStart, windowAvg, hours. Prices in EUR per MWh. |
Example citation
EREVergelijken.eu (the ERE Team). "Electricity price per day". https://erevergelijken.eu/data/stroomprijs-per-dag.json. CC BY 4.0. Data checked on October 21, 2026.
Renewable share and CO2
Renewable share of Dutch electricity load per quarter hour, plus the CO2 intensity from Energy-Charts. The source does not name a unit for CO2.
Updates
Every day at the same times as the electricity price (daily-prices.yml, npm run gridmix:record): 12:20, 14:05 and 05:05 UTC. updatedOn is the local day of the fetch.
Date field: updatedOn
Fields
| Field | Meaning |
|---|---|
| title, publisher, source, license, attribution, licenseNote | Name, publisher EREVergelijken.eu, page /stroomprijs/#groen-laden, CC BY 4.0 (name, url, attribution), the source sentence and the Energy-Charts API licence text. |
| timeZone, updatedOn, fetchedAt, today, historyDays | Europe/Amsterdam. updatedOn is the local day of the fetch. fetchedAt is UTC. today is the day the series was fetched. historyDays is 3: yesterday, today and tomorrow when the source publishes it. |
| endpoints, units, forecast | The API paths used. units.renSharePct is percent of load. units.co2 is null: /co2eq does not name a unit. forecast says whether a forecast exists, through which quarter the values are measured, and whether tomorrow is in the source. |
| definitions | Meaning of renSharePct, renKind, co2, co2Kind and localTime. |
| days[].intervals[] | unixSeconds, localTime (start of the quarter), renSharePct, renKind (actual or forecast), co2, co2Kind. Empty quarters are omitted. |
Example citation
EREVergelijken.eu (the ERE Team). "Renewable share and CO2". https://erevergelijken.eu/data/grid-mix.json. CC BY 4.0. Data checked on October 21, 2026.
Supply licences
Count of active ACM electricity supply licences, per month.
Updates
The ACM register is updated every Monday (suppliers-check.yml, node scripts/acm-licenses.mjs). This file is built from that register on every publish. basedOn.checkedOn is the register check date.
Date field: basedOn.checkedOn
Fields
| Field | Meaning |
|---|---|
| title, publisher, source, license | Name, publisher, page /trends/, CC BY 4.0. |
| basedOn | label, url and checkedOn of the ACM register. |
| method | How the count on the first day of the month is made. |
| countedFromFirstEvent, leftOut | Licences without a grant date, and revoked licences without a date. |
| months[] | month (YYYY-MM) and count. |
Example citation
EREVergelijken.eu (the ERE Team). "Supply licences". https://erevergelijken.eu/data/leveringsvergunningen.json. CC BY 4.0. Data checked on October 19, 2026.
Data history
Every recorded check of prices, terms and scores, and the corrections of our own mistakes.
Updates
No cron of its own. After a data edit: npm run history:record -- --write. startedOn is the start of the series; the latest pass is in passes.
Date field: passes[].date
Fields
| Field | Meaning |
|---|---|
| title, publisher, source, license | Name, publisher, page /trends/, CC BY 4.0. |
| startedOn | First day of the data history. |
| passes[] | date, changes, corrections, and sometimes note. One recording pass. |
| corrections[] | date, key, from, to, and sometimes note. A correction of our own mistake. |
| series | Key dataset/entity/metric, value a list of [date, value]. The value applies from that date. |
Example citation
EREVergelijken.eu (the ERE Team). "Data history". https://erevergelijken.eu/data/historie.json. CC BY 4.0. Data checked on October 21, 2026.
Switching deadlines 2027
Cancellation date per ERE provider for a switch on 1 January 2027, with the quote and the source.
Updates
No fixed cron. src/data/switching-2027.json is updated when the terms or the NEa text change. checkedOn is the check date. generated is that same date, not the publish clock.
Date field: checkedOn
Fields
| Field | Meaning |
|---|---|
| title, publisher, source, license, checkedOn, generated | Name, publisher, page /overstappen-ere-aanbieder/, CC BY 4.0. generated is the same check date as checkedOn, not the publish clock. |
| rules[] | id, title, quote, source (label, url), optional note. Quotes from the regulation and the NEa. |
| pitfalls[] | title, body, quotes (text, source), sources. |
| openQuestions[] | body. What was still open on the check date. |
| providers[] | slug, name, term, tacitRenewal (yes, no, unknown), deadline, deadlineKind (stated, derived, none-needed, not-possible, unknown), deadlineNote, howToCancel, exitCost, currentYearKwh, sources, verified (yes, partial, no), optional conflict. |
Example citation
EREVergelijken.eu (the ERE Team). "Switching deadlines 2027". https://erevergelijken.eu/data/switching-deadlines.json. CC BY 4.0. Data checked on October 11, 2026.
Public charging
Rules, supervision, prices per charging network, municipal tariffs and statistics.
Updates
Every Wednesday, and on the 1st and 2nd of the month (charging-check.yml, npm run charging:check). A check only reads; a person updates the amounts. checkedOn is the check date. generated is that same date.
Date field: checkedOn
Fields
| Field | Meaning |
|---|---|
| title, publisher, source, license, checkedOn, generated, schemaNotes | Name, publisher, page /laadtarieven/, CC BY 4.0. generated is the same date as checkedOn. schemaNotes explains null and ranges. |
| rules[], supervision[] | id, title, summary, appliesFrom, articles, sources. Rules (AFIR) and supervision. |
| networks[] | slug, name, type (fast, ac, both), adHoc and app (ac, acMin, dc, dcMin, note), priceDate, locationsNote, tariffs, sources. Euro per kWh incl. VAT, unless a note says otherwise. |
| municipal[] | city, operator, price.perKwh, price.note, countedUnder, sources. |
| stats[] | id, label, value, unit, date, note, sources. |
Example citation
EREVergelijken.eu (the ERE Team). "Public charging". https://erevergelijken.eu/data/public-charging.json. CC BY 4.0. Data checked on October 21, 2026.
Electricity label
Electricity label per household supplier: share per source, renewable share, Dutch guarantees of origin, CO2 and radioactive waste.
Updates
Every Monday, suppliers-check.yml reads the source URL (node scripts/check-stroometiket.mjs). A check only reads; a person updates src/data/stroometiket.json. checkedOn is the check date. generated is that same date.
Date field: checkedOn
Fields
| Field | Meaning |
|---|---|
| suppliers[].year | Label year |
| suppliers[].scope | Name on the label for the mix that applies to households |
| suppliers[].companyMix | Whole-company or group mix, when the label prints that separately and it differs |
| suppliers[].shares | Share per source, fraction (0.15 = 15%). null = not stated |
| suppliers[].renewableShare | Renewable share, fraction |
| suppliers[].originNl | Share of renewable electricity with a Dutch guarantee of origin, fraction |
| suppliers[].co2GramsPerKwh | CO2 in grams per kWh |
| suppliers[].radioactiveWasteUgPerKwh | Radioactive waste in micrograms per kWh |
| suppliers[].source | Source on the supplier site |
| checkedOn | Date the labels were checked |
Example citation
EREVergelijken.eu (the ERE Team). "Electricity label". https://erevergelijken.eu/data/stroometiket.json. CC BY 4.0. Data checked on October 13, 2026.
Green mobility in numbers
Fully electric share of new sales, electric passenger cars on the road, charge points, renewable electricity, grid CO2, the ERE price and the provider count.
Updates
No fixed cron. External figures live in src/data/green-mobility.json and are updated when a source publishes a new figure. Charge points come from the charge-point series. The ERE price and the provider count come from the comparison on every publish. checkedOn is the newest date in the file. generated is that same date, not the publish clock.
Date field: checkedOn
Fields
| Field | Meaning |
|---|---|
| title, publisher, source, license, voice | Name, publisher EREVergelijken.eu, page /groene-mobiliteit-in-cijfers/, CC BY 4.0, public voice the ERE Team. |
| checkedOn, generated | Newest date in the file (YYYY-MM-DD). generated is that same date, not the publish clock. |
| citation | Citation sentence in Dutch and English. |
| figures[] | id, group, value, decimals, unit, asOf, label, note, source. label and note are nl and en. asOf is the date of that figure. |
Example citation
EREVergelijken.eu (the ERE Team). "Green mobility in numbers". https://erevergelijken.eu/data/groene-mobiliteit.json. CC BY 4.0. Data checked on October 21, 2026.
Chargers and the MID meter
Per model whether it has a built-in MID meter: yes, no, optional or unknown, with the note and the source.
Updates
No fixed cron. The file is rebuilt on every publish from src/data/charger-brands.json. checkedOn is the check date in that file. generated is that same date, not the publish clock. A check reads the manufacturer sources. A person updates the source file.
Date field: checkedOn
Fields
| Field | Meaning |
|---|---|
| title, publisher, source, license, voice | Name, publisher EREVergelijken.eu, page /welke-laadpalen-hebben-een-mid-meter/, CC BY 4.0, public voice the ERE Team. |
| checkedOn, generated, schemaNotes | Check date (YYYY-MM-DD). generated is that same date. schemaNotes explains yes, no, optional and unknown, and which brands are left out. |
| counts | brands, models, yes, no, optional, unknown. yes is a built-in MID meter. unknown is not filled in. |
| brands[].slug, name, page | Key, name, and the brand page in Dutch and English. |
| brands[].models[] | name, mid (yes, no, optional, unknown), note (nl and en, or null), source (URL or null). |
Example citation
EREVergelijken.eu (the ERE Team). "Chargers and the MID meter". https://erevergelijken.eu/data/laadpalen-mid.json. CC BY 4.0. Data checked on September 23, 2026.