Every user has a set of expectations regarding your product (app, website, new feature, etc.) before they start using it. A good design not only fulfills expectations but also sets and manages them. A bad one does the same, but in a “grenade + monkey” fashion.

So how do we set, fulfill and manage them? Let me use a real world example to illustrate the matter.

Setting Expectations

It’s a rare thing nowadays for a customer to stumble upon a completely original service they have no idea about. Even if it’s a first time user, there is a high chance they:

heard something about your product from friends / social media / advertising

saw an introduction video from a landing page

compare it with something similar from past experience (even if it’s not an accurate comparison)

By the time the user actually starts using your product, or some part of it, they already have expectations. It means that they will be looking for features they’re expecting and will ignore features they aren’t.

Here’s an example of how expectations are set:



Slack. Marketing pitches aside, what 1st-time users see when first visiting their website is A messaging app for teams. What kinds of expectations do they get from this sentence?

Messaging App for teams

Send messages

Receive messages

Some kind of contact list

If there is a messenger, I expect to message with it.

Messaging App for teams

Mobile version

Standalone version

If there is an app, I expect to download it.

Messaging App for teams

Corporate pricing

Management tools integration

I expect some kind of pricing and team tools, based on my previous experiences.

Let’s call this our basic set of expectations. People will be looking to fulfill them above all others.

Users are motivated to fulfill their expectations. If they are unable to do this, well, then the design is bad and people will be frustrated. Which leads us to…

Fulfilling Expectations

I might be saying the obvious, but here we go. Good design fulfills user expectations. Additionally, every feature has its own level of expectation.

In every set of expectations there are some we highly expect, those we’re not sure we’ll find, and those that we don’t expect at all. The goal is to fulfil expectations starting from the highest to the lowest.

This menu is a good example of how user’s expectations are fulfilled:



Product, Pricing and Support. These 3 options fully cover our first set of expectations. Better yet, their order reflects not only their popularity, but the level of expectation as well.

High: Download an app. Most of the people just want to get the app

Download an app. Most of the people just want to get the app Medium: Pricing. Price expectations are usually not a top priority at this point because people haven’t used the product yet

Pricing. Price expectations are usually not a top priority at this point because people haven’t used the product yet Low: Not many of us expect support in a messenger. But support itself is an expectation management machine

Think about it. Most of the presale/support questions begin with low expectations from your users. If people ask how to download your app, that might be a bad sign. On the other hand, if your support covers low expectations, it’s great, engaging, builds loyalty, and is actually a topic for a whole other article.

So expectations were set they were met. What else could be done? Let’s see.

Managing Expectations

One would think that a “Product” button would lead us straight to a “Download” button. That would be good. But why don’t we use this to our advantage?

Think about what kinds of expectations users have at this moment? Same as I mentioned a few paragraphs above- messaging, receiving, and a contact list.

Plus the user will be focused on finding these features. So they need to download an app and fulfil their current expectations. This is their motivation.

But there are so many other small handy things that make this app stand out. How might you tell users about them? You create another set of expectations using pre-existing ones.

People focused on finding that “Download” button see this video tour. Suddenly, they have a great opportunity to fulfil their current expectations (to see if the messenger really sends messages) just by watching a video.

Guess what? The video is a great opportunity to mention not just key app features but small, classy ones, as well, in a brief, convenient format- not to mention creating a set of new expectations, of course.

Ok, all this theory is very good. A good, prepared example of how you set, fulfil, and manage user’s expectations. In the next article, based on my recent usability studies of one of our features, I’ll show you a bad one. More importantly, I’ll also show how to deal with it.

About the Author

Andrew Burmistrov is a usability specialist of Icons8. He started his career as a phone support specialist, telling jokes while customers were rebooting their computers, then moved to usability testing and occasional writing.