UX Fail – SPT Underground Ticket Machines

I cycle to work but I sometimes I use public transport and I’ve always been interested in the UX of the ticket machines. I am that sad. 

In Glasgow, tickets were issued by these bad boys back in the day:

old machines

But these days it’s handled by fancy pants touchscreens. Let’s see how easy it is to buy a ticket!

So we’ve gone from an immediate 1 click solution to a six click fiasco for a primary use case I’m going to call ‘buy a single ticket’. Let’s break down that video screen by screen and see what’s going (wr)on(g) .

Step 1

step 1

Click here to begin. You might know this, but these types of touchscreen (either resistance or capacitive) are prone to calibration errors and it looks like this machine was off by a few mm. That’s why I had to have a second go at the small HERE button. So right off the bat, the interface is designed badly because the most important button on the screen is too small.

Step 2


OK, so you can buy different types of ticket, fair enough, and at least I can see my option to buy a single ticket. But It would have made more sense to surface all these on the entry screen. Christ, there was enough room!

Step 3

step 3

I got really stuck here because I didn’t know what ‘peak’ meant and it threw me. I was travelling around in the middle of the afternoon and that wasn’t what I considered peak time. And I had to process what ‘Peak all day’ meant before discounting it. Again, these options could have been surfaced on the very first screen.

Step 4

step 43

This step is proper funny. You’ll see it’s defaulted to 0. Like anyone is going to buy 0 tickets. This is just flat out stupid.

OK, let’s pretend that never happened.

Step 5


Well, gee, that was fairly pointless.

I think SPT touchscreen IT stakeholders tried to cater for a peripheral use case “what if the person buying the ticket wants to buy more than one” e.g. for a school trip or a family day out. Yeah, I get that, it’s going to happen, but you’ve spangled up the flow of a primary use case by shoe-horning it in.

Step 6

step 6

I’ve just clicked confirm! Of course I want to buy. Why are you doing this to me?


A pretty terrible user experience and my main gripes are these:

  • Small target sizes not appropriate for screens prone to calibration errors
  • Not surfacing most common options like single, return etc
  • Plain stupid default states. 0 tickets anyone?
  • Pointless confirmation step

But can we do better?

The brief would be to build a touchscreen interface that:

  • Is robust enough to deal with calibration errors
  • Allowed primary use cases to buy tickets with one touch
  • Introduced peripheral use cases in a way that didn’t interfere with any primary use cases

OK, let’s think about this. This interface will have a button saying ‘buy adult single’; allow card users to touch a card to the screen; and have options for multiple tickets and loaded cards. Maybe before I present my solution, you could have a go?

Ah go ahn.

Ach, ye really should have a wee go.

Ah go ahn now.

OK, anyway, here’s my effort:


Points of note:

  • All the options you had from the old machines are back, surfaced
  • Massive targets
  • Peripheral use cases introduced to the right and styled slightly differently so they don’t distract away from primary actions

Edit: I’ve missed out Peak all day from the screen. I forgot. I pray your forgiveness.

And what happens when I press Adult single?


Common sense right?

But what do you think? Have I missed anything out or made a bad call about something? Hook me up on Twitter and let me know.

Comments are broken.


One thought on “UX Fail – SPT Underground Ticket Machines

Leave a Reply

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

WordPress.com Logo

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

Google+ photo

You are commenting using your Google+ 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