Why Bad User Experience is Expensive

Press Cancel to Send??

Lewis Ngugi
Maverick Challenges
6 min readNov 18, 2016


What’s the problem?

Poor design!

It creates friction. The less the design aligns with what the user is trying to accomplish, the more friction increases. Whenever friction occurs, someone becomes frustrated. The user ,may feel the frustration because they can’t complete their task. Take Sally, for instance. She is a 52-year-old grandmother, married to a peasant farmer. She is currently learning to use a smartphone to help out with enquiries coming from her grandkids who need to take care of her. She is normally very active but has recently been hampered by low vision, but struggles to accept it. Many everyday tasks are now difficult and time-consuming. She does have her reading glasses which she often has to search for. Sending money to the wrong number caused her ,as the customer, to call the organisation’s toll-free number (100) which increased Safaricom’s number of required call centre operators at Jambo Call Centre (JCC). For sure, Safaricom “felt” the frustration with a monetary impact. They measured the cost of handling a support call by dividing the support budget for a year by the quantity of calls they can handle and decided to put an end to it. How?? We will illustrate through the eyes of Sally.

About M-PESA

(For those who haven’t tried M-PESA)

Uber, Facebook, Alibaba and Airbnb are very different companies. They have different cultures, products and cost structures, they all face different risks, and have grown along different trajectories. So, what do these companies have in common? Their products do not live in the background of our lives; we think about them and interact with them every day. What those technologies do is enable existing infrastructure to be used more effectively.

Google, Facebook and Paypal are all steadily rolling out new-fangled services to turn our smartphones into digital wallets, replacing cash and cheques. Not forgetting Apple and other guys of course. Something big has been going on. M-PESA. Mobile banking, Kenya’s safer and secure alternative currency. More than two-thirds of the adult population are using M-PESA; around 25% of the country’s gross domestic national product flows through the system.

Click a few keys, exchange a few numbers, and it’s done. With just a mobile phone and a registration with Safaricom, you can pay anything in seconds, no cash, no long queues. When I was at ARK, we were huge fans of Safaricom since they introduced the Hakikisha service, they spent quite a few millions on the campaign I might say. I remembered they must have lots of talented designers and product people, because they nailed so much of the whole experience, with the critical goal being; You can now confirm who you send money to. Optimising the customer journey with products like #Hakikisha. This enhancement to M-PESA will enable you to confirm the name of the intended recipient of the funds, before completing an M-PESA transaction. However, there’s this tiny detail on the menu which keeps bugging us.

Sample #MPESA #Hakikisha confirmation message by Ben Lyon

What’s the big deal?

We assessed the M-PESA Menu’s usability against International Standards: BS EN-ISO 9241–110:2006 Ergonomics of human-system interaction — Part 110: Dialogue principles.

(Total Marks: 7/14)

  • Is the dialogue suitable for the user’s task and skill level? (Suitability for the task) 1
  • Does the dialogue make it clear what the user should do next? (Self-descriptiveness) 2
  • Is the dialogue consistent? (Conformity with user expectations) 2
  • Does the dialogue support learning? (Suitability for learning) 1
  • Can the user control the pace and sequence of the interaction? (Controllability) 1
  • Is the dialogue forgiving? (Error tolerance) 0
  • Can the dialogue be customised to suit the user? (Suitability for individualisation) 0

Existing Flow in M-PESA

For those who do not use M-PESA quite regularly, here’s the existing process of “sending money to someone” -

When the application is opened, by default, a list of services being offered, then you choose Send Money, type in the recipients phone number (assuming you have crammed it).

Fill in the amount, your personal PIN and get a confirmation of the transaction details. Clearly the title of the dialog popup needs to be changed.

Fantastic! It’s sent! Wait! What? I should wait for M-PESA to reply since you’ve sent it? If that is so, why can I cancel the transaction and you’ve already sent it?

Okay,yes it’s them I’m sending to.

The problem- Now, here I believe that the bigger problem is not I send any letter or number within 25 seconds!!! Poor Sally. I hope she can remember to read the disclaimer and she does it fast enough. The bigger problem I feel is the button labelling of the popup dialog interface. It is difficult for the user to understand that by pressing CANCEL they are allowing the transaction to proceed and he/she has to type in a character within a given time limit of 25 seconds then tap on the SEND button to STOP the transaction. The Hakikisha message’s placement on the dialog popup is easily overlooked among a profusion of other design elements.

Then, on the left, we have this beautiful popup after you press any button and hit send; to stop the transaction. On the right, you just hit cancel to send the money. Still confused.

Yeah! Sally is very confused right now.


Now to our main focus. Offer a Cancel button when users may fear that they have committed to something they want to avoid. Having an explicit way to Cancel provides an extra feeling of safety that is not afforded by simply leaving. Cancel is mainly useful for multi-step dialogs where the user has progressed past one or more pages with actions. At this time, pressing the Back button will not undo these actions and it would be better if the user would click Cancel.

Design Recommendation

Safaricom should offer STOP button to cancel the transaction. In addition to button functionalities, the SEND button should be for submitting the transaction. This option is good enough to give users the control whether they want to stop the transaction, or allow it to proceed.

Finally, amazing Safaricom designers out there, please consider this! It’ll make our experience even smoother. :)

Found this post useful? Kindly tap the 👏 button below! :)

About The Author

Lewis Ngugi is the Experience Lead of Kazi+. You can connect with him on Twitter, LinkedIn, Facebook and Instagram.