#19 The perception of performance
Do milliseconds and kilobytes make the difference?
In the previous articles on performance we have heard a lot about technical refinements to increase performance. Now we would like to take a slightly different point of view on this topic - from the perspective of user experience and perceptual psychology.
Nowadays, we expect to be able to access digital services immediately, anytime, anywhere. Stocky animations, long response times or static loading screens feel almost unbearable. On the other hand, time goes by in a blink when we watch the trailer of the long-awaited blockbuster, for example. In short: Staring at a loading screen for 20 seconds feels much longer than watching a video which also has a length of 20 seconds. This example already indicates that humans are pretty bad at estimating time spans. In addition, the perception of time depends on many factors, such as age, time of day, stress levels and cultural background.
Hence, when we talk about performance and the perception of speed and time from the user experience perspective, we are less talking about milliseconds or kilobytes. It's not about objective units of computation. It's all about the subjective perception of the user - the so-called "brain time“.
„Make sure that your digital product feels fast“
But why is the perceived time for digital products so important? Speed and performance are essential components of a good user experience. If users perceive a digital product or service as slow and sluggish, they have a negative user experience. Even a slight delay in the page loading of an online shop can lead to a loss of conversions, higher bounce rates or a negative perception of a brand. That's why perceived speed is so important and why we must primarily make sure that the digital product feels fast.
And of course, performance is also about milliseconds and kilobytes. Especially in the case of micro-interactions. Response times of less than 100 milliseconds are essential to ensure that the user does not notice any unpleasant delay. The maximum response time for immediate action is under one second. Delays in this interval are noticeable, but are usually tolerated, since it is usually the response time during a human-to-human conversation.
Why distractions and mental activity enhance performance.
Every event, in our case an action that takes place in a digital project, can be categorized into a passive and an active phase. In a passive phase, such as loading a web page, the user has no control over the pause time. The passive phases are generally negatively connotated. In addition, people tend to perceive passive phases being approximately 36% longer than active phases. Active phases, on the other hand, are characterized by mental activity of the user. A good example is playing a quiz. The time flies by here. And things even get better. Most people do not perceive active waiting as waiting at all.
„People tend to perceive passive actions being approximately 36% longer than active actions“
If technological performance increases can only be realized with very high costs and efforts, one might first try to improve the subjective perception of speed by converting passive phases into active phases. In a nutshell: we need to keep the users mentally busy or distract them.
Can't wait …
The simplest mechanics are loading spinners or progress bars. They distract from the actual passive waiting. Loading spinners have the disadvantage, however, that they neither indicate how much remains to be loaded, nor how much is actually being loaded. How many times did we stare at happily rotating loading spinners while the system had come to a standstill for a long time. A period of uncertainty followed. Progress bars fulfill this kind of expectation management, because the user can estimate how long he has to wait. The combination of progress bars and emotional loading animations that tell, for example, short stories with suitable content, works much better. The best are loading screens that even include interactions.
One outstanding example is the "Practise arena" of the computer game series "FIFA". While the game is loading in the background, and this takes quite a while, the user can already practice goal kicks by playing a mini-game. The distraction is so perfect that most players do not even realize that this is just a loading screen.
Another popular mechanism to make the loading times of computer games bearable are short textual additional information in addition to a spinner. These texts often contain hints, that might be useful for the next level.
Back to the web, though: Flight search engines, for example, often show additional information during loading that explains what "complex" processes are running in the background. For example: How many airlines are checked? How many airlines have already been asked? etc. They not only increase the entertainment value, but also enhance acceptance of the unwanted pause. Because apparently the system is very busy to find the cheapest flights. Right?
Video portals like Vimeo or Youtube frequently struggle with time-consuming uploads. For them, the bottleneck is not their own infrastructure but the user's Internet connection. So you can't improve the process from a technical point of view. Nevertheless, they have found a charming way to subjectively shorten the loading time. They let the user enter the metadata for the video during the sometimes very long-lasting upload, thus avoiding the unpleasant feeling of wasted time.
A glance into the future
Another way to improve the perceived performance is to instantly show dummy content. Many digital platforms use the skeleton pattern for this. While waiting for the actual content, light grey placeholder boxes are usually displayed at the exact positions where the real content will be placed later. This provides cognitive distraction and reduces transition anxiety. The user can anticipate what to expect next. Additional animations of the dummy content also gives the user reassuring feedback, indicating that the content continues to load in the background. To enhance the positive effect, the animations should be slow and steady.
Cheating the user with optimism
Besides the numerous possibilities to keep the users busy or distract them, I would like to mention optimistic actions. We shorten the perceived duration of time a process takes by stating that a process has been completed even though the process has not yet been completed. This sounds confusing, but it is actually quite simple. Let's imagine that a user wants to flag an article with a "Like". After clicking the "Like" button, there will be an immediate visual feedback that the "Like" was successful. In fact, the process still continues in the background, and repeats until it is successfully completed. This action is also called an asynchronous action. This makes the interaction feel incredibly fast. If the action was not successful afterwards, the user gets an error message. This kind of "cheat" of course only makes sense if the actions are of rather low importance and we can additionally assume that the action will be executed successfully in most cases. For critical actions such as purchase processes we would rather advise not to use optimistic actions.
Improve performance significantly or not at all
The Weber-Fechner law from the field of psychophysics states that a change is only perceived by the user above a certain threshold value. This threshold is called "just noticeable difference" (JND). This applies to all sensory perceptions - but also to the perception of time.
If you examine time periods of less than 30 seconds - and thus 99% of the time periods occurring in digital services are covered - the temporal performance increase should be at least 18% in order to be recognized by the user as a positive experience at all. It should therefore be carefully considered whether a high technical effort for a minimal performance improvement is even worth it. On the other hand, this also means that if the code slows down by 18% - due to the fact that the service has been enhanced with additional features - the user will not be negatively affected. This is called "regression allowance“.
„The temporal performance increase should be at least 18%“
One thought at the end: If the performance of your own product is similar to that of a competitor's product, you should consider sacrificing some performance in order to make your service more reliable, easier to use or enriched with new features. The user will appreciate the qualitative added value compared to the slight loss of speed.
Accelerated performance can make your product worse
But watch out. Sometimes users already have certain expectations regarding services. Accelerated and high-performance processes can confuse users and reduce their confidence in a service. You can find examples of this in the financial world, where trust and security are important quality features. According to the maxim "quality takes time", it is sometimes advisable to slow down processes intentionally in order not to interfere with users' learned experiences. Users are used to the fact that important services in the real world take their time and are prepared for a certain waiting time. If this waiting time is missing, the user quickly becomes insecure and asks himself whether the service meets his quality requirements. A process that is too performant could therefore be more destructive than a slower process.
Tomorrow is the last article: The speed of use.