Taking a lorry off the road with some code
How changing the way we decided what packaging to send our customers had a big impact on our transport footprint
No one would get their delicious Gousto meals if it wasn’t for the box that carries them so safely across the country. One of the first priorities for my team is making sure every Gousto box is perfectly packed, so that no one gets a damaged box on their doorstep.
To make sure the packaging fits, there are two main things we adapt for every box — the size of the box itself, and the size of the chilled insulation that sits inside (to keep your cheese and meats chilled).
Figuring out the right sized box to use doesn’t sound like a particularly complex task, but it turns out there are a lot of variables to consider, from the size of the order to the size of each recipe and how the individual ingredients in that recipe need to be insulated. When you consider we have 40 recipes on our menu every week and millions of possible combinations of recipes, you can see how things get complicated pretty quickly.
Out with the old…
When Gousto first started out, we would determine the size of your order by considering two things — how many portions of food have you added, and if you have ordered anything bulky from Gousto Market (e.g. bottles of wine).
This system worked quite well — a couple who ordered 2 meals a week would receive a small box, and a family who ordered 4 meals a week and some bottles of wine would receive a large box.
What we found when we dug deeper was that we could do better than this. It turns out the size of a recipe can vary quite a lot depending on its ingredients — so ordering our Curried Cauliflower, Cashew & Potato Tray Bake (cauliflower is our largest ingredient) needs a bigger box than our Beef Keema With Lime & Coriander, which takes up significantly less space.
The problem with this approach is that when we send you a box that’s too big for your order, we’re spending energy transporting unnecessary air to the destination. On top of this, if the box is too big, there is room for ingredients to move around and they are more likely to become damaged en route to our customers. However, if the box is too small, the ingredients might get squashed together and become damaged.
Damaged ingredients not only represent a bad customer experience, they are also food waste — plain and simple. As we’re on a mission to reduce food waste and improve the world around us, we decided this approach wasn’t good enough. At Gousto, we like to Think Big and Own the Solution, so we decided to explore different ways we could improve.
…And in with the new
With the launch of our new ERP system in May last year, we gained the ability to make decisions about packaging not just at the portion level, but at the ingredient level. This means we can make more granular decisions about what packaging to send you —instead of sending you a box that’s “big enough”.
We did some work to label every ingredient and Gousto Market add-on in our system with its corresponding volume. So when you place your order, we look at the size of every item that’s going into your box, as well as the temperature it has to be kept at in order to work out the optimum packaging.
The Nuts and Bolts
Here’s how it works: Every combination of ingredients and products has either a “Chilled” or an “Ambient” volume score — for example, cauliflower, our largest ambient ingredient, has an ambient score of 5832, a pack of chicken thighs has a chilled score of 748, and a bottle of Malbec from Gousto Market has a score of 14000.
To start working out what packaging we’ll send, we first calculate the ideal chilled insulation based on your order’s Chilled score.
Calculating the box size is similar. We use the Ambient score to determine the smallest box we could send you — and we make sure that we take into account what insulation we’ve chosen to pack. This prevents us from attempting to pack impossible combinations like a large insulation in a small box. There isn’t enough room inside a small box for such large insulation — so we would dynamically increase your box size to fit the larger insulation.
We want to be able to provide the best packaging experience for every box — ultimately no order should ever be limited by packaging restrictions, so if you wanted to order 10 meals and 10 bottles of wine, we should upgrade you to a bigger box, or a combination of boxes. Our system sets us up for this kind of supply-side capability, but there is further experimentation to be done to optimise the combinations of ingredients in different boxes.
Sometimes, it is possible to order a whole box with no chilled ingredients at all. As more people try out plant based diets this becomes more likely, as many of the key staples of plant-based meals like vegetables, pulses and grains don’t need to be kept as cold as meats and cheeses. In this case, we could in theory remove the chilled insulation all together, but there is currently some work to be done in order to implement this.
Using this system, we’ve been able to:
- Fit 20% of orders into smaller packaging
- Send 1 less lorry out from the warehouse every day.
- Save an estimated 27 tons of wool insulation and 6 tons of plastic.
Not a bad result, wouldn’t you agree? We still have lots more we want to do to improve the packaging experience for the customer and make Gousto the number one sustainable food choice, but intelligent packaging represents a stepping stone on that journey. And speaking as a developer, it feels great to work in a Tech team where the code you write can make such a tangible change to our environmental footprint.
Oh, and our customers love it too :)