Utilitarian Spot
Access historical and day ahead prices of energy across the EU. Simple, fast and free.
Current Electricity Prices
API Documentation
REST API Endpoints
All timestamps are ISO‑8601 in UTC. Responses are JSON arrays of { timestamp, value }.
Latest Prices
Today + tomorrow (published day‑ahead)
GET /electricity/{ZONE}/latest/
Daily
Quarter‑hourly prices for a specific day
GET /electricity/{ZONE}/{YYYY}/{MM}/{DD}/
Monthly
Yearly
Python Examples
import httpx
# Latest prices for SE1
latest = httpx.get(
"https://spot.utilitarian.io/electricity/SE1/latest/"
).json()
# All prices for 2022
year_2022 = httpx.get(
"https://spot.utilitarian.io/electricity/SE2/2022/"
).json()
# Prices for May 2022
may_prices = httpx.get(
"https://spot.utilitarian.io/electricity/SE3/2022/05/"
).json()
# Specific day: May 3rd 2022
may_3rd = httpx.get(
"https://spot.utilitarian.io/electricity/SE4/2022/05/03/"
).json()
Response Format
[
{
"timestamp": "2025-10-09T00:00:00+00:00",
"value": "27.12"
},
{
"timestamp": "2025-10-09T00:15:00+00:00",
"value": "28.03"
}
]
How Price Data Works
Each price point is valid from its timestamp until the next point is reached. We don't provide time spans or intervals to reduce JSON size and improve performance.
Values are in €/MWh. Some markets provide hourly values; others provide 15‑minute values.
Available Zones
Nordics
🇸🇪 Sweden: SE1, SE2, SE3, SE4
🇩🇰 Denmark: DK1, DK2
🇳🇴 Norway: NO1, NO2, NO3, NO4, NO5
🇫🇮 Finland: FI
Central Europe
🇩🇪 Germany: DE_LU
🇦🇹 Austria: AT
🇫🇷 France: FR
🇧🇪 Belgium: BE
🇳🇱 Netherlands: NL
🇵🇱 Poland: PL
Eastern & Southern
🇪🇪 Estonia: EE
🇱🇹 Lithuania: LT
🇱🇻 Latvia: LV
🇮🇹 Italy: IT-NORTH, IT-CENTRE_NORTH, IT-CENTRE_SOUTH,
IT-SOUTH, IT-SICILY, IT-SARDINIA, IT-CALABRIA
🇪🇸 Spain: ES
🇵🇹 Portugal: PT
Technical Notes
CORS Enabled
Call endpoints directly from browsers
Static & Cacheable
Use If-Modified-Since headers
ENTSO-E Data
UTC time, €/MWh currency