Responsible UX writing for machine learning
What you can learn from my experience at Booking.com
It’s been almost a year since my product team started working with machine learning models. We’re using them to show the most relevant rooms to people looking for a place to stay.
On websites loaded with different choices and offers, prediction models may be a handy way to help people quickly make sense of lots of options, zeroing in on what’s best for them.
Machine learning models also get called prediction algorithms, and although there’s a difference between these two, they essentially tell you the probability of something being relevant for a person browsing the website.
I found myself in the midst of having to understand what a model actually does to know what copy to write. It made me read and think about craft and ethics-related aspects of UX writing and machine learning in order to keep writing responsibly (i.e. accurately, honestly and transparently).
Before you trust me on anything, please take this article with a grain of salt. Although some predictions of a model can hit the bullseye, others might be quite off since we try to predict something with incomplete knowledge.
Sometimes UX copy and design can be perfect but the model has imperfect prediction. This could be quite damaging for your brand’s reputation as you could be wholeheartedly recommending something that might not be good for people. The other way around is true as well. Pairing a perfect model with inaccurate copy and design may result in a completely ignored recommendation.
There is no universal formula applicable to all products using machine learning, even within the same company. Still, I believe it is good to exchange our UX writing experiences for machine learning. We should start a conversation that will be an important one for the future of our profession. As technologies like machine learning evolve, we have to evolve too — particularly in how responsible our approach to copywriting for machine learning is. Feel free to join the conversation and share your views and experiences in the comments.
Understand the model
Like with any other product, you can’t write for it if you don’t understand what it’s about. UX writing for algorithm-based products is almost the same. It includes an extra step to understand the essence of the ways an algorithm makes its calculations.
If you’re part of a product team, be a part of the conversation from the moment an algorithm idea starts brewing. If you’re a freelancer writing for the algorithm-based product, have direct communication with a data scientist. That will help you get the essence of the prediction logic. Understanding the purpose of a model and the prediction logic it uses helps us to write more accurately and transparently.
Understanding an algorithm does not mean that you have to be able to understand the essence of things like linear vs. random forest model structure (it’s still a challenge for me, too). You need to talk to your data science engineer and ask them to explain (in human language) what the features are which the model takes into consideration.
It could be simple. Let’s say that a model checks your hotel bookings to understand which room facilities are the most important to you. It also looks into people from your area who travel to your destination and how they rated those facilities. Another feature it takes into consideration is what are the most filtered for facilities in the destination you’re travelling to.
Depending on the space or a decision you make, you can write something like this:
You get it. All are kind of saying the same thing — helping a person understand what can they expect to get. Yet the way you choose to convey the message differs.
The number of details is a decision you have to make. When writing UX copy to explain the algorithm, you can have many approaches to explaining what, why and how. Which one you choose is up to you. You can decide based on a stage in a user journey or the impact a specific feature has on a person.
While struggling to find the best answer to this dilemma, I’ve developed a set of decision-making pointers that make my life easier.
UX writing approach: General vs explicit
I divide copy into General or Explicit writing categories, with neither being any better or worse. Let’s say a simple algorithm predicts that you’re likely to book a room with free cancellation because you’ve done mostly that in the past. Here’s a classification of potential copy approaches I created for my own sanity and structure.
When you don’t have much space for the explanations, you might try sharing just basic information as in “Top options include free cancellation”. You’re telling a person what they are seeing, but without going into the details of why are they seeing it. With this, you do not dive deep into explaining the algorithm predictions.
You can test more conversational tone as in “We’re showing free cancellation options first” or “You may be interested in free cancellation options”, but due to lack of space still not deep-diving into the prediction logic. In the first option, you’re building trust by explaining the reason for the order. The second one is in the form of a slight nudge, a suggestion, but the autonomy of choice is left to a person looking for a room.
You can offer a more detailed explanation which would help shine the light on the logic of the prediction algorithm, as in “First results include free cancellation because you’ve booked it before” or splitting it into two lines (header and subheader) as in “Top options include free cancellation based on your previous trips with us”. Clearly, for the last two options, you would need some extra space.
So this would be a brief overview of my personal theories and classifications. That helps me build an A/B testing experimentation line in a structured and strategic way. With it, I aim to get a clear answer to what is most helpful for travellers using Booking.com. At the same time, it helps me learn while comparing the impact so I can improve both my craft and the user experience.
How Spotify does it
To illustrate this with a familiar example, let’s have a look at what I’ve seen on my Spotify account a few days ago. They’ve used both explicit and general approaches on the same page.
In a conversational tone, including header and subheader, I was told what kind of songs are suggested (Sad songs), but not really explained why. As stakes are not high, it’s fine to leave it without more details. As a user, I know why — it comes from what I’ve listened to recently.
Using the full subheader space for an explanation, I can learn that an algorithm made a prediction of albums I like based on my previous music preferences. Not only do I know what, but I know why and how the prediction is made as well.
An algorithm suggested both of these music selections. It based it on what I’ve listened to or what other people who listened to similar music liked, etc.
Still, one of them explained why (“because you listened to”), while the other didn’t.
And it didn’t make it any less ethical. In this case, it’s more of a style choice as the impact on me is not huge. If each subheader would have “based on what you like…” it might lose its power and I might become blind to it. It is more important to know that a more unique section — New albums — is based on what I like, rather than one of many mood sections. Especially because Spotify knows that I rarely explore mood-based suggestions.
I would expect an explanatory “because” part in the copy if the stakes were higher. It would happen in the case of an algorithm predicting I like the songs and asking me to spend money on them. Additionally, an explanation would help when I have the possibility to directly customize the algorithm and remove/add options I like.
So depending on what’s at stake, you can go for more or fewer explanations but it has to be your conscious choice. If your writing touches sensitive stuff such as someone’s wallet, be as explicit as possible. If not, it’s up to you, the space available and stylistic choice you want to make. These are decisions you will have to make with or without machine learning models. As a UX writer, you’ll base these decisions on the principles that guide your approach.
Be responsible. Assign a weight to all ingredients — a message’s sensitivity, placement, style, tone of voice and consistency with the rest of the user journey.
Always write responsibly
My team has an unwritten agreement. We don’t use models that we can’t explain clearly and comfortably. Algorithms may give us a great advantage — but they also bring an enormous responsibility.
Models often include a vast amount of features, so it wouldn’t even be possible to spell everything out. That’s one of the reasons we recently joined forces with a group of excellent data scientists and developers from our company. A goal is to make a framework that would help highlight the most important features for each person.
At the same time, it will help me translate these features into a solution that works with the experience. This requires including many placeholders in the copy and juggling with translations into 40+ languages at the same time. All worth an effort as the expected results will be a milestone for ML and UX copy collaboration.
You might not have this sort of framework to tell you which features are the most important per person. Still, you can rely on knowing your product and user testing to understand what people care about. If there is an overlap between the features models include and what people care about — write about it. Highlight what helps people make an informed decision while swimming in the sea of algorithmic predictions.
Challenge your data scientist and your product team. Ask them to use models only to help people without nudging them into buying something they don’t need. Trust and loyalty are way more important than one-off financial wins.
The application of machine learning in e-commerce is maturing. Our responsibilities as writers to stay fair, understanding and helpful should mature too. Do you agree?