How to Fail Better than Uber
Let’s talk about failure.
I feel that word has reached a glorified state recently that it never deserved. Google the word “failure” and you’ll end up with a bunch of articles with provocative titles such as “Why Success Always Starts with Failure” and “Why Failure Is Good for Success”. Failure is also an idea that often comes up in the Lean UX approach: fail early, fail often.
I’m going to make an apparently revolutionary comment here.
Failure is bad.
Yep, it’s as simple as that. You know that gut reaction you have of not wanting to fail? It’s there for a reason. Failure is never a good objective.
If you actually go ahead and read the above articles exalting the virtues of failure or dig into the ideas behind the “fail early, fail often” mantra, you’ll see that they are not talking about how great failure is at all. Rather, the idea is about how it’s important to be willing to change when something isn’t working.
Being willing to change isn’t accepting failure though, it’s trying to avoid it. If you don’t change or adapt in these situations, then you’ve failed.
But I want to talk about failure, true failure.
As much as we try to avoid it, failure will sometimes happen. We aren’t perfect and sometimes things slip through the cracks.
At that point, you have the option of failing with grace and foresight or crashing and burning miserably.
This is why you should plan for failure in your designs.
Which brings me to Uber.
I tried to sign up for Uber recently and it was an absolutely stunning example of failing terribly.
On their website, they proudly proclaim that Uber is the “easiest way around”. After the experiences I’ve had, that’s a bold claim.
I downloaded the app from the app store onto my phone and opened it up. I went to complete the first step, which was typing in my phone number. And I was given the following message.
Your account is currently disabled. Visit t.uber.com/account-disabled for more information.
I wasn’t quite sure what this meant as I had never set up an Uber account before. I tried to click on the web address in the error message, thinking it would be a link. It was not.
After some back and forth switching between my app and my mobile browser I eventually typed the address in, hoping I’d find out more information about what this issue was.
This link took me to a page asking me to put in my first name, last name, mobile number, a description of two recent Uber trips, and my email address.
As I have never taken an Uber ride, I had no idea what to put in the box asking for two recent Uber trips.
While it would be perfectly reasonable to abandon Uber forever at this point, I was willing to try one last option. Maybe I would be able to set up an account on the website. So, I headed on over to Uber’s website and clicked to sign up.
I filled in all their form information, clicked that I wasn’t a robot, and then hit the sign-up button. And waited.
I clicked “Sign Up” a few more times, hoping something would happen, but nothing changed.
I scrolled back up on the page and it was then that I saw the red error message that had appeared beneath my phone number.
Too bad I couldn’t read the error message.
I could read right up until the part where it seemed like I might finally be getting useful advice and then it ended. I tried to highlight the box to read what the rest of the text might be. I tried to scroll down on the error message. Nothing.
It was at this point that I uninstalled the Uber app and realized that I liked taxis.
Why Was This Such a Terrible Experience?
The problem is that Uber is only designing for the “happy path” when everything works perfectly and there are no problems.
Which means when anyone deviates from the “happy path” it’s an absolute disaster.
- Error messages are not informative, and at times, not even readable
- Web addresses are not made into links and weren’t even text selectable
- Help pages are not relevant to the situation and not informative
- Feedback to user actions appears outside of the user’s area of focus
Rather than feeling clearly guided through this situation, the user is left to guess about how to resolve this on their own. This interaction does not encourage signing up with Uber or interacting with the site. It encourages people to leave and look elsewhere.
Failing with Grace
Now that we’ve walked through an example of where this isn’t working, let’s look at companies that have put more thought into their failure paths.
If you are booking a flight with WestJet and happen to choose a date where they don’t fly to your destination, you are not just met with a message saying that there are no flights. Instead, a calendar will appear that will clearly show what dates have available flights and how much it would cost to book them.
Instead of a user seeing no flights, saying ‘oh well’, and moving onto another airline, a user is guided to another path that might help them complete their goal.
You can’t fly back on Nov 3, but Nov 2 might be a good option.
You really want to watch a movie your friend recommended to you called Housebound. It sounds like a good horror movie and there’s a storm out so you’re ready for something spooky. Instead of seeing a message from Netflix saying ‘No results found’ when they don’t have the movie you want, you are presented with a list of similar movies to choose from.
Again, instead of abandoning Netflix and going elsewhere, you are now enticed to watch a different movie that might satisfy your horror craving instead.
Finally, sometimes you might not have related content to redirect users to. What do you do then?
Instead of presenting users with a boring error page, PayScale turns their moment of failure into a more pleasurable experience.
They first offer some options of their most popular content and what to do from here if you really needed the missing content and then finish with letting you know that you found a hard to come by purple squirrel.
It turns finding a page that isn’t working on their site to more of a hidden Easter Egg experience.
Failing Gracefully Sets You Apart
All these companies have thought out their entire experience and want to support people when things go wrong. It’s details like these that separate them from applications and websites that simply look nice.
If your system has failed the user in some way, it’s far better to think about how you can soften the blow rather than barely even putting in the time to make sure your error message is readable.