19th September 2019
Behind the Wheel of Fortune
Gilly Ames, Developer
When customers submit meter readings through our site, they get the opportunity to spin our “Wheel of Fortune” (OooOoh).
You get one spin per month, per fuel. Every month we have over 4000 lucky winners, who’ll each take home anything from £1 to £512 energy credit. Submitting meter readings isn’t exactly fun, and not many people know how crucial regular readings are to keeping your energy account in check. We wanted a fun way to engage customers to submit readings, that also rewarded them for their extra effort. So, a few of our devs got to work creating the Wheel of Fortune.
We’ve had a number of questions about how the Wheel works. Is it really random? How many people reeeeeally win? WHY HAVEN’T I WON YET?
So we wanted to take a little time to explain more about it. So, here it is – the truth behind the happy spinny wheel, straight from one of the very developers who built it, Gilly...
Why did we build it?
Meter readings are absolutely vital to our business. They’re the foundation of everything we provide for customers. Meter readings are how we can tell how much energy you use, which we need to give you an accurate bill. On a larger scale, we need to be able to calculate how much energy our customers use altogether, so that we know how much green energy we need to buy from our renewable sources to put into the grid. Without accurate meter readings, we have to resort to that most fickle of tools: estimation. That’s not good for anyone. No one likes an estimated bill that might see you pay too much, or – if it’s too low – set you up for a surprise higher bill in the future. Regular meter readings help us understand your energy usage over the year, which helps us work out how much a regular monthly payment for you should be.
So we encourage all our customers to give regular meter readings however they can. Back in the early days (when we still measured customers in the thousands, and our office was one floor of a condemned building in Soho) we wondered whether we could offer people a reward for submitting readings online. We wanted to do this to save our hard-working and talented energy experts from too much copying and pasting of meter readings from emails, and encourage customers to use our super easy online function to submit theirs instead. This saves our customers and our team a little time.
Though we’re absolutely always happy to help with any query, our tech team like automating little work-arounds like this, so our team are freed up to help with the really complex problems that need someone to write a personal response, or be there to take a phone call, that no amount of automation or clever technology can solve. It’s what they're great at. The more we can get our technology to do for them, the more efficient our business is, and the cheaper we can make your energy bills.
Why a wheel?
Someone asked “Can we make a bit of a game out of it? Something you can play when you give readings online?” The idea went through various evolutions from there. First it was going to look like a slot machine. Then we settled on a wheel, thinking it would be fun to offer different kinds of prizes. In September 2017, we started work on a prototype. Then other things came up, and then it was Christmas, and then more things. Finally, in April 2018, the same week we were moving out of that condemned office building and into another down the road, we finally launched THE WHEEL! At that time, the monthly prizes on offer were £5 and £50 credits, and one £500 grand prize. That’s over £1000 a month in an attempt to get more regular monthly readings and take the load off our energy specialists
As time went on, and our customer numbers grew, it seemed fair to offer more prizes to win. We now have thousands of £1 prizes to give away each month, as well as £64 prizes and a £512 grand prize (because we like 8s). That brings our monthly give-away to over £5000 a month. We also show the number of people who have won each month when you give us a meter reading, so you can see how many of our prizes we’ve given away.
A side note on accessibility
We take accessibility seriously and we want anyone who is giving us online meter readings to be able to play. The wheel should be fully accessible to anyone using assistive technology (like a screen reader), and if you have any trouble with assistive tech and the wheel, please do get in touch on our dedicated accessibility mailing list. We’ve worked with users to fix bugs with the wheel this way, as well as helping people find workarounds for bugs in older versions of assistive software.
How does it work?
(Technical levels - 🌶️ Beginner 🌶️🌶️ Novice 🌶️🌶️🌶️ Developer)
Technical level: 🌶️
We assign the prizes randomly throughout the month, and we show how many prizes have been won so far when you submit a reading. When you spin the wheel, our prize randomiser checks whether your spin wins a prize, and then we show that in the wheel.
Talk is cheap, show me the code.
Technical level: 🌶️🌶️🌶️
The interface of the wheel is built in React, and is backed by a couple of REST API endpoints. The spinning animation is controlled through CSS. The very earliest, most embryonic expression of that, was a cat that always landed on its feet. The thinking there is that the UI shouldn’t provide any direct input into the prize randomisation, as it could prove to be exploitable. All the randomness should come from the backend system. So the UI is just a fun way to display the same kind of process that would happen if you clicked on a button (which, if you take a look, is what the wheel actually is).
The interactive element for the spinning was coded from first principles using trigonometry (thank you Mrs Edwards, my secondary school maths teacher).
When you spin the wheel, it sends a POST request to fetch the prize, and we update the segment of the wheel that we know it will land on (because of the predictable animation).
Smart meter customers
If you're a smart meter customer and would like to play, just get in touch and we will provide you with a link.
Rewarding our loyal customers
We love our customers, and we try all sorts of games, competitions and projects that we think are a fun way of getting people to engage with us. We’ve given away cuddly toys, drive days, even a brand new Tesla! But if you’re looking for a simple, cast iron reward from us, all you need to do is use your referral link and get some friends and family to join us too. We’ll give you and them £50 of account credit when they join us directly. No randomisation, no spinning, just £100 to share and our heartfelt thanks.
Hey I'm Constantine, welcome to Octopus Energy!×Close window