In mid-January there was a Tesla story that broke around Nassim Taleb, a well-known author and scholar with a sizable Twitter following. He complained online about unintentionally buying a software upgrade for his car because the purchase screen had no confirmation or password requirements to complete the purchase. Basically, he butt-dialed a $4,000 upgrade. And getting a response from Tesla customer service turned out to be challenging … and not helpful.
As someone with over 20 years of user interface and experience design under my belt, I thought I’d take a closer look at Tesla’s software design, how Nassim Taleb may have gotten in this situation, and if Tesla may have used dark patterns in their software design.
So the story of Nassim Taleb’s experience flew under the radar for me and I didn’t read about it until more than a week had gone by. And a friend of the show, Michael March, reached out to me to get my take on a Twitter thread that had sprung up around Tesla’s user experience design. I’ve been designing websites and mobile apps for over 20 years, so this fell right into my wheelhouse. I may be a little late to the party, but I thought it was still and interesting topic to follow up on.
Here’s a quick recap of Nassim Taleb’s experience.1 He had opened the app to the recently added “Upgrades” screen where you can purchase software updates like full self-driving and speed boosts for your car. While the app was on this screen he put it into his pocket, which is when the “buy” button was unintentionally hit. At the time this happened it appears there may not have been a purchase confirmation screen, so the purchase immediately went through to the credit card Tesla had of file. Once he discovered the problem, he tried contacting Tesla within a day or two by sending an email to customer service. About 8 days later he got a response from Tesla that software updates are non-refundable, along with a pretty poor rationale as to why.
“This would be similar to the situation of paying for an addition to a house, deciding you don’t like it, and then requesting a refund from the contractor.”
This response is so bad in so many ways. It’s obvious that software is completely different from building a physical addition to a house. Why Tesla makes software upgrades non-refundable is perplexing. And the fact that Tesla downplays the “all sales are final” aspect of it by using dark gray text on a black background, isn’t helping matters. Even the Google Play store gives you 48 hours to obtain a refund after purchasing an app. Turning a software feature on and off is flipping a bit in the software, so it’s easy to do. But putting that to the side for the moment, let’s take a look at the Tesla app’s user flow and what’s it’s actually doing.
There was an interesting Twitter thread that Michael March sent my way from Ted Stein.2 Someone gave him their Tesla credentials so he could download and test out the user flow himself. He walked through his experience with it on Twitter. Two of the many things he pointed out as problematic in the user flow were: 1) the upgrade for full self-driving was automatically checked when getting to the upgrade screen, and 2) he found there is no authentication for the purchase other than the final “buy” button.
There’s some nuance to this that I think gets lost in his analysis though. On the first issue, he’s absolutely correct. The upgrade screen automatically checks the box on the items in the list. On the second point … yes … sort of. On Apple devices the default purchase option is Apple Pay, so the giant button on the screen is for that. Tap that button and you see a purchase confirmation screen with another Apple Pay button. Tap that and you’ll get the Apple Pay authentication screen, which requires either your Touch ID or Face ID unlock and double tap of the sleep button on the side of the device. There’s no way to accidentally purchase with that path. However, you can tap on the “Purchase with credit card” text below the Apple Pay button, which is a problematic design choice. It doesn’t look like a button or tappable at all. But if you tap that, the confirmation screen does in fact end on a screen without further authentication. One more tap there and the purchase just happens. Is that a bad thing?
In user experience design the main goal is to create a user flow that swims in the same direction as the user of the software. If you go against the users natural flow, then you’re creating resistance and friction. That results in an experience that can be … frustrating … confusing … and can make the user feel angry or stupid. Obviously, something you want to avoid. Now, I’ve been doing UI/UX design for a very, very long time. I built my first website in 1994 and started getting paid to build websites in 1997. If you’re interested in user experience design, there’s an absolutely fantastic book that I always recommend, which can be read in an afternoon, that’s called, “Don’t Make Me Think” by Steve Krug. The title alone conveys the basic gist of what’s important. Bad user experience isn’t one horrible aspect to a design, it’s usually death by a thousand cuts. So even with the best of intentions you can end up with a design that wears your users down and frustrates them enough to give up on your product. So if your intentions are pure and genuine, but still problematic, at least you’re on the light side of the force.
However, there are also design patterns that deliberately work against the natural flow of a user. This is where a designer, product owner, or executive gives in to the temptations of the dark side of the force. These are referred to as dark patterns in UI design. A good example is the first point that Ted Stein brought up. Automatically checking an options box in a sign up or purchase flow. How many times have you seen a checkbox automatically checked for “sign up for our newsletter” when you create a new account on a service? That’s a dark pattern. They’re counting on people not noticing and just clicking the sign up button. Another example I’m sure a lot of you have encountered is trying to cancel an order or close an account with a service. The links to do so may be buried three layers deep in the customer service section, or worse yet, they won’t let you do it online at all. They force you to call a number. That’s a dark pattern. It’s the business putting their needs and desires higher than the needs and desires of the user.
Over the course of my career I’ve had to fight against this with colleagues again and again. It doesn’t come from a place of malice, but from short-sighted goals. Excuses like, “We don’t want people to close their account,” or “we don’t want to make it easy for people to get refunds.” Like the act of hiding it is going to make it so people don’t want it. Bad customer service can completely damage or destroy a brand.
51% of people say they’ll move away from a brand after a bad customer service interaction.3 Companies like Zappos built their brand and customer loyalty on customer service. It’s not easy to show the ROI for good customer service, but it’s easy to show what happens when your brand gets so tarnished that the only way out is to rebrand. In the US, the cable company Comcast was America’s most hated company. They ended up rebranding to Xfinity to try and get out from under that horrible reputation. Verizon took a major brand hit during the California wildfires with a poor customer service response when fire departments asked for faster services to help coordinate and combat the fires. Customer service and experience can make or break a company. It’s something I’ve brought up about Tesla in previous videos. WhileTesla is nailing it on many fronts, customer service is their Achilles heel right now.
So is Tesla using dark patterns? Yes, they are. They shouldn’t be auto checking the upgrade options on the upgrades screen. Not doing so would be a simple way to cut down on accidental purchases. They should also draw more attention to the non-refundable aspect of these purchases, and not try to play it down by making the text dark gray on a black background. Or they could add a checkbox with text on the confirmation screen that reads, “I understand that software upgrades are non-refundable.” You’d have to check that box before tapping the buy button. But they do at least have a confirmation screen. It’s not clear if this confirmation screen was there when Nassim Taleb butt-purchased his upgrade though. As of right now it takes two taps to initiated the actual purchase. That’s a good thing. The built-in Apple Pay authentication also works in their favor to prevent accidental purchases, but the lack of authentication for a non-Apple Pay credit card purchase can be perceived as problematic. But is it a dark pattern? I’m not convinced it is. If you’re not using Touch or Face ID on your iPhone, there are two settings for password protecting your App Store purchases: require password every time, or require password every 15 minutes. But if you look at Amazon, one of the largest online retailers in the world, they don’t require you to authenticate before purchasing if you’re already logged in. Just add items to your cart, go to checkout, confirm and go.
On services I’ve worked on over the years, purchase authentication isn’t meant to prevent accidental purchases, but to make sure that the owner of the account is the person using the device at the time of purchase. That’s it. And that’s why I don’t think it’s an intentional dark pattern Tesla created for non-Apple Pay credit card purchases. From their point of view, you’ve already authenticated into the Tesla app by logging into your account to use the app. Just like Amazon. The flaw is that it may have been hours or days since you authenticated into the app. There’s a possibility that someone else picking up your phone can make a purchase. However, that’s extremely unlikely if you have a passcode to unlock your phone in general. But Tesla shouldn’t count on users having passcodes to unlock their phone, which is why it’s not good … not that you might accidentally double tap your way through a confirmation screen. I think the real dark pattern, and the one that has to get fixed, is the auto-checking that box on the upgrades, as well as rethinking the non-refundable text on that same screen. Perhaps even adding the additional “I understand” checkbox to the confirmation screen. Just those alone would stop all accidental purchases. Like a said … it’s nuanced.
Overall, I think Tesla’s UI team does a good job with their software user flows, especially in the car. I’ve been considering doing a deep dive and breakdown on the user experience flows within the car. If you’d like to see that, be sure to let me know in the comments. The Tesla mobile app is pretty streamlined and simple, so there’s not many ways to screw things up. The home screen provides a nice snapshot of your car’s charge and most commonly used controls, but there are some downsides. If you go into the climate controls and turn it on, there’s not an obvious indication of that. The fan icon turns gray … that’s it. Why not turn the button the color of what’s happening, like red for heating up or blue for cooling down. It would stand out more and be a simple reminder of what’s happening without having to tap into the climate screen. How about giving the user customization options for which controls they’d like to see on the home screen? Climate, frunk, and door locks seem like obvious choices, but I’d prefer to have my trunk … not the frunk on there. Some might want the start or homelink buttons on the home screen instead.
So while I give them give higher marks for the the day to day software that we use, Tesla’s use of dark patterns when it comes to marketing and selling things is problematic and needs to be addressed. In addition to the dark patterns in the upgrade screen, they also use dark patterns on the website if you look at buying a car. The website defaults to showing you incentivized prices … not the actual cost. If you don’t notice this, you might think that’s the actual cost until you get to the end of the flow and get the sticker shock from the higher, upfront price.
And then there’s some odd bugs that keep lingering in the app. Definitely not a show-stopper, but my referral screen has never shown me my leaderboard referral numbers and CO2 offset … ever. A lot of you have used my referral code when you bought your car (big thank you for that), but for some reason the leaderboard shows me with 0 referrals and 0 CO2 offset. I don’t care too much about that, but the fact a bug like this exists makes you raise an eyebrow and wonder how accurate and reliable the rest of the app might be.
That brings me back to customer service and perception. I don’t think there was any malice or deception intended with Tesla’s upgrade purchase flow, but there are flaws in the logic used around requiring authentication that create perception issues. I may not agree with Tim Stein’s take on the purchase flow, but it ultimately doesn’t matter if customer service comes back to a customer complaint with a response like Nassim Taleb received. Customer service could have easily rescued a flawed software user flow and made a great user experience with a simple, “We’ve refunded your money and are bringing this issue up with the product team to review. Thanks for being a valued Tesla customer.” Nassim Taleb would have walked away feeling happy. Tesla would have strengthened it’s brand with him … ultimately helping to cultivate a customer that’s more likely to recommend a Tesla to friends and family. And the product team would have feedback from a user around a real perception problem in their software user flow design.
Elon and the Tesla team are not stupid people and I’m sure they understand and get this, but it seems like customer service is something that’s taken a back seat while the company ramped up the Model 3 production. Sadly, it’s still something they’re struggling with, but it’s also something they’re more than capable of fixing. And the use of dark patterns in their sales flow needs to stop.