Smart Packing: A Way To Increase Eurotunnel Capacity?

How much more traffic could Eurotunnel carry if cars were loaded in an optimal way?

The Eurotunnel, built in 1994, has grown into one of the most popular routes across the English Channel, taking 10.3 million passengers between England and France every year. A compelling alternative to ferries and the passenger train service, Eurostar, Eurotunnel allows customers to drive their car onto a train in Folkestone and drive off the train in Calais 35 minutes later.

Eurotunnel trains have two decks where cars drive in at the back on one side, and out at the front when the train reaches the other side. Each deck is made up of around a dozen carriages, with doors between them. When a car is too long to fit in a carriage with the other cars already in there, it has to leave a space at the back of this carriage and start a new carriage. This is where there might be potential for improvement — can we make these spaces smaller by loading cars in a different order?

I’ve often taken the Eurotunnel, sometimes having to wait 20 minutes for a train because our car just didn’t fit on the previous train. I’ve also been on trains where there are noticeably large empty spaces in carriages, wondering if these could be eliminated or significantly reduced by being smarter about how cars are loaded onto the train. Just how much spare capacity is there?

How things are packed matters

It’s not difficult to estimate an upper bound on the amount of spare capacity: take a train, count the number of cars per carriage, estimate their lengths, and see how much unused space is left.

So that’s what I did. On a recent train I took, I walked through and counted the number of cars in each carriage, as well as recording their makes and models so I could look up their lengths.

The train I was on had 2 decks with 12 passenger car carriages on each deck, making for a total of 24 carriages. 101 cars were on the train, with between 4 and 5 cars in each carriage.

How many more cars could we fit on if we loaded them in the optimal order?

Based on the length of the cars in the most fully packed carriage, I estimate a carriage to have approximately 23m of usable space in it. This gives us 24 * 23 = 552m of usable space. The total length of all the cars in the train was 460.5m. This leaves 92m, meaning that if the cars had been packed optimally, utilising every last cm of space, we could have packed on 20% more cars…

This is not realistic, of course. Cars come in fixed sizes, so we’ll never be able to do anything about a 1m space at the end of a carriage. But it gives us an upper bound, as we know that we couldn’t possibly fit more cars in when all the unused space is full.

What about a lower bound? I found an alternative configuration for the cars in the train I was on, taking into account the length of each of the cars, which would leave 50.5m of free space at the end of the train. This translates to approximately 10%.

Waiting for the next train

If my train was representative, we could transport 10-20% more cars on each fully loaded train. How significant is this? What costs would be involved?

I’m sure any Eurotunnel executive would love to have an easy way to raise profits by 10–20%, but unfortunately that’s not what this is. This number only applies:

  • During busy periods, when trains run full and there is always a backlog of cars waiting for the next train. Making use of this during less busy periods would imply running trains less frequently, negatively impacting the customer experience.
  • If we can get the cars in the right order. Even if we can work out an improved configuration, is it actually feasible to get the cars in that order given that they probably won’t arrive in that order? Would there be a lot more overhead in terms of time, space, or staff required to do this, which might negate the benefits?

While 10–20% during busy periods might not mean a lot to Eurotunnel’s bottom line, it would mean a lot to the 10 or so cars who would currently be stuck at the front of the queue waiting 20+ minutes for the next train. While this takes care of the first point, we’re still left figuring out how to get the cars in this order.

Could another car have fit behind this one?

So let’s take a step back. At this point you might wonder how I arrived at that improved configuration from earlier. Maybe I spent hours in Excel, painstakingly trying out different configurations and seeing which one was best. Or maybe I wrote an algorithm which did that and spat out the best configuration it could find. In fact, I did neither. This is the method I used, starting from the way cars were arranged on the train I was on:

  1. If the first car in a carriage can fit into the carriage in front of it, then move it forward one carriage.
  2. There is no step two. That was it.

This might seem obvious, almost to the extent that it seems wrong.

How could this make any difference? Isn’t that how the cars are loaded anyway?

Mostly, yes. But this is not always easy — when cars are being loaded, they’re in a tight line, and having a car go into a carriage to then reverse out of it if it doesn’t fit isn’t an option, as this would require the whole line of cars to move back. This results in scenarios like the diagram below.

Two different scenarios with the same cars

The first case is where there is enough space to fit another car in the carriage, but because it’s hard to tell whether it will fit it doesn’t make sense to risk having the purple car go forward in case it has to reverse out again.

The second case is what would ideally happen, and is the improvement presented in the alternative configuration I suggested.

How can we make this happen?

There are two strategies we could use to turn the first scenario into the second one:

Make trial and error an option

When loading into a tight space, hold back the line of cars while seeing if the car at the front can fit.

Pro: no extra infrastructure needed

Con: extra loading time required

Figure out whether a car will fit in a space before it moves forward

Use a combination of sensors and data about the length of each car to measure whether a car will fit into a space, giving a green or red light to indicate whether a car should proceed to the next carriage or not.

Pro: no extra loading time required

Con: extra infrastructure needed


I would be interested in knowing if the first strategy has been considered, as it could be implemented and tested very quickly. The second strategy would require more planning and investment, but would pay back over time.

The next step would be to make intelligent use of both decks. Since both decks are loaded simultaneously, cars could be redirected onto the deck which would allow them to leave the least unused space in their carriage, with minimal overhead in terms of staff or time — for example, the staff could have an app telling them which deck to direct each car onto, based on where they would make the best use of space.

I can’t imagine there would be anything worth doing beyond that point, but here’s a challenge: you can find the data and my calculations in this shared document. Let me know your ideas, or any improvements on mine. And if you really want to expand on this, collect and share your own data!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s