Electricity and LNG Costs Comparison in Croatia (2023-2025MY), and Potential Savings with Battery Storage
Introduction
Electricity prices in Croatia have shown significant volatility, with medium-sized households paying €0.15 per kWh in December 2024, while wholesale prices reached €98 per MWh. Croatia’s reliance on fossil fuels and imported LNG plays a major role in these costs, particularly as the country transitions to cleaner energy. Here, we explore how battery storage and solar photovoltaics (PV) could mitigate rising costs for utilities and consumers.
Analysis of Current Prices
Potential Savings with Battery Storage and Solar PV
With Croatia’s volatile energy landscape, battery storage and solar PV present valuable solutions for mitigating rising costs. By using storage systems to manage peak demand and enhance grid reliability, municipalities could help stabilize or reduce electricity costs for communities. The graph below projects potential cost reductions if storage facilities are adopted by municipalities.
# Load required packages
library(ggplot2)
library(dplyr)
# Sample data for potential cost reductions - replace with actual projections
date_projection <- as.Date(seq(as.Date("2025-01-01"), as.Date("2027-12-01"), by = "month"))
current_costs <- c(rep(100, 12), rep(105, 12), rep(110, 12)) # Projected costs without storage
reduced_costs <- current_costs * 0.85 # Projected costs with 15% reduction from storage
# Create data frame for projection
projection_data <- data.frame(date_projection, current_costs, reduced_costs)
# Plot potential cost reductions
cost_reduction_plot <- ggplot(projection_data, aes(x = date_projection)) +
geom_line(aes(y = current_costs, color = "Current Costs (€ per MWh)"), size = 1.2) +
geom_line(aes(y = reduced_costs, color = "Costs with Battery Storage (€ per MWh)"), size = 1.2) +
labs(
title = "Projected Utility Costs with Battery Storage (2025-2027)",
x = "Date",
y = "Projected Costs (€ per MWh)"
) +
scale_color_manual(values = c("Current Costs (€ per MWh)" = "purple",
"Costs with Battery Storage (€ per MWh)" = "orange")) +
theme_minimal(base_size = 14) +
theme(
plot.title = element_text(hjust = 0.5, size = 18, face = "bold"),
axis.title = element_text(size = 14),
axis.text = element_text(size = 12)
)Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
ℹ Please use `linewidth` instead.
# Print the plot
print(cost_reduction_plot)# Load necessary libraries
library(ggplot2) # ggplot2 is used for creating visualizations in R
# Data for gas savings in bcm (billion cubic meters)
# Define the sectors and their corresponding gas savings
sectors <- c("Residential Sector\n(Energy Efficiency and Heat Pumps)",
"Efficiency and Electrification",
"Renewable Hydrogen",
"Solar & Wind",
"Biomethane")
# Define gas savings in bcm for each sector
gas_savings <- c(37, 12, 25, 21, 17) # Savings values in billion cubic meters
# Create a data frame to hold the sector names and their gas savings
savings_data <- data.frame(sectors, gas_savings)
# Plotting the data
ggplot(savings_data, aes(x = sectors, y = gas_savings, fill = sectors)) +
geom_bar(stat = "identity", show.legend = FALSE) + # Create a bar plot with bars representing gas savings
labs(
title = "Equivalent Gas Savings from RePower EU Plan", # Title of the plot
subtitle = "Potential Savings by Sector (in bcm)", # Subtitle providing additional context
x = "Sectors", # Label for the x-axis
y = "Gas Savings (bcm)" # Label for the y-axis
) +
geom_text(aes(label = gas_savings), position = position_stack(vjust = 0.5), color = "white", size = 5) +
# Add text labels to the bars indicating the gas savings values
theme_minimal(base_size = 14) + # Use a minimal theme with a base font size of 14 for better readability
theme(
plot.title = element_text(hjust = 0.5, size = 20, face = "bold"), # Center and style the title
plot.subtitle = element_text(hjust = 0.5, size = 16, face = "italic"), # Center and italicize the subtitle
axis.title = element_text(size = 14), # Increase the font size for axis titles
axis.text = element_text(size = 12), # Increase the font size for axis text
panel.grid.major = element_line(color = "lightgray", linewidth = 0.5), # Customize major grid lines with a lighter color
panel.grid.minor = element_blank(), # Remove minor grid lines for a cleaner look
axis.text.x = element_text(angle = 15, hjust = 1), # Rotate x-axis labels for better readability
plot.background = element_rect(fill = "white", color = NA), # Set a white background
panel.border = element_blank() # Remove the panel border
) +
scale_fill_brewer(palette = "Set2") # Use a color palette for a more visually appealing fillConclusion
Battery storage and solar PV can play a transformative role in Croatia’s energy market by stabilizing costs, enhancing grid flexibility, and reducing dependence on fossil fuels. As these technologies are adopted more widely, municipalities can expect reduced utility costs, creating a sustainable and more predictable energy future for Croatian communities.