Let us say I am an electricity retailer who wants to serve residential customers. I have heard that people like fixed-price contracts and I want to provide those contracts. I don’t like gambling, so I want to make sure that I make a consistent profit on all my customers.
But how can I make a consistent profit when energy prices change every hour?
A normal way to make a consistent profit as an electricity retailer offering fixed-price contracts is to buy energy futures to cover the future consumption of all customers. That way, I always know how much the energy I provide to customers will cost. If the rate I charge customers is The cost of energy futures for the customer + a profit margin and I buy the correct amount of futures to cover the customer’s consumption, then I have a good business where I will get a consistent profit margin. Unfortunately, it is not easy to charge customers for the cost of energy futures for two reasons:
Remember that these contracts are fixed-price. During the contract term, the price for a given customer will not change. However, I can change the price that I offer to new customers (or renewing customers) as often as I want. Now I am wondering, how often should I update the rates offered to new customers to maintain a consistent margin?
First I want to look at the worst-case scenario where energy future prices increase every day. I created a simulation to explore this question based on some assumptions:
In this worst-case scenario, I am undercharging every customer. But the more frequently I update customer rates, the less I undercharge. The results of this simulation look like this:
Profit | |
Update Rates Every 10 Days | -980 |
Update Rates Every 5 Days | -760 |
Update Rate Every 1 Day | -584 |
In the worst-case scenario, updating customer rates daily is almost 2X better than updating rates every 10 days. This scenario may not seem very realistic, but this is how energy future prices look for Texas in 2025:
Let’s move on from the worst-case scenario to a more general analysis.
We can simulate many different scenarios by generating random energy future prices. I decided to randomly generate a number between 0.97 and 1.03 to represent the movement of prices. This is clearly a huge approximation – a stochastic process would be much better. The results of 10,000 simulations yield the following results:
Standard deviation of profit outcomes | |
Update Rates Every 10 Days | 0.72 |
Update Rates Every 5 Days | 0.60 |
Update Rates Every 1 Day | 0.50 |
And the following outcome histogram:
Frequent rate updates significantly decrease the standard deviation of profit outcomes. But energy futures are not the only source of randomness for electricity retailers.
When I update the simulation to randomly acquire 1, 2, or 3 customers every day, the results change quite a bit:
Standard deviation of profit outcomes | |
Update Rates Every 10 Days | 1.11 |
Update Rates Every 5 Days | 0.90 |
Update Rates Every 1 Day | 0.68 |
The benefit of frequent rate updates increases when additional randomness is introduced.
This simulation does not take into account customer churn; feel free to extend my code to implement a churn model!
A key piece of this puzzle is having energy forwards that are accurate and updated frequently. At Willard Energy Software, we know how important this is, and you can expect a laser focus on our data quality. Check out our offerings at willard.energy!