How many times have you navigated away from a slow loading webpage? Abruptly closed an annoying mobile app? Or ended a customer help chat without solving your enquiry all because the service was just slightly slower than you expected?
In an age where, most of the time, web and mobile interactions seem instantaneous, that’s what we’ve come to expect. As we become accustomed to running our lives on demand, our attention spans have dropped and we have become more sensitive to delays. According to Google Web team’s RAIL performance model, users begin to lose focus on the task at hand after just 1000 milliseconds of delay.
In reality these interactions are never immediate, but the lag is so minimal (usually cut down to milliseconds) that it usually goes unnoticed. When that lag reaches a noticeable point, however, then you have a problem. When app speed doesn’t meet the expectations of its users, the result is poor customer experience, and possible negative financial implications for your product or service.
This lag is known as latency, and if you’re a developer or a product manager, it’s in your app’s best interest to minimize it.
What is latency?
Roughly defined, latency is the time it takes between performing a live action and receiving a response. A simple example of an action would be navigating to a webpage. The response in this situation is the browser loading the page.
You’ll often hear latency grouped with other measures like bandwidth and throughput in discussions about data, speed, and networks. The major difference between them is that latency is a measure of time, while bandwidth and throughput are measures of quantity.
While they are different, they can affect each other and shouldn’t necessarily be thought of in isolation.
What does latency look like to users?
There are many ways in which high latency causes a poor user experience. Here are just a few examples…
Page load speed
This refers to the example mentioned earlier—navigating to a page or executing a command on a page and then waiting for a new page to load. High latency on a website is caused by multiple factors including needing to retrieve data from third-party sources or incorrect prioritization of content loading.
No matter the reason, high latency on a webpage can affect user behavior.
Yahoo’s research arm found most users can detect a delay over 1000 milliseconds. In addition, their analysis found that “given two content-wise identical search result pages, […] users are more likely to perform clicks on the result page that is served with lower latency.”
While this study was specific to search engines, these results can be applied to any service that depends on fast user decisions to drive revenue, such as e-commerce.
Chat has become the go-to method for customer service interactions, offering convenience for individuals who don’t want to use the phone or wait for an email reply. It’s typical for users to expect immediate responses in chat (whether coming from a bot or a real person), and a recent study found that the relevance of a chat response combined with its speed is a critical factor in customer satisfaction.
Poor chat experiences due to high latency also lead to channel switching. An exasperated customer may eventually pick up the phone and then become even more frustrated when they have to start from scratch to explain their issue again.
There is a tradeoff between latency and video quality with most video streaming providers. If you want your video to start quickly, you’re going to have to settle for low-resolution content, especially on mobile applications. High-resolution at high speeds is offered at a premium or sometimes not at all. As mobile devices are increasingly used for video consumption, users expect to experience content with the same speed and clarity as they do at home.
Another function of video streaming important to consumers is two-way video chat. For some individuals, this is the most affordable way to communicate with loved ones in other countries. High latency leads to communication breakdowns and users will most likely move away from products with a bad reputation for lag.
Over the past two decades video gaming has morphed from an activity often done alone or with a few friends to one that can involve hundreds of players interacting simultaneously. Even the slightest lag could throw off someone’s game significantly.
Console and PC gaming continues to dominate while skepticism about cloud gaming platforms like Google Stadia persists. Cloud gaming platforms process inputs remotely, introducing a network round-trip which is experienced as lag and is especially problematic in realtime gaming, where it’s vital that multiplayer environments are in sync. Gaming has become a business and source of income for the most skilled, so serious gamers will probably stick to what they know until they can be assured that high latency will not be an issue in these platforms.
Why should I care about latency?
Even if you are a developer, there are times when you’re a consumer. You know that latency is more than just an annoyance or an inconvenience. It’s a problem that influences the behavior of us all and can cut directly into profits.
- Users abandon carts when a page loads too slowly or there is an unreliable connection between an app and the payment processor. Think about your experiences of using sites and apps which crashed, froze, or just took too long to load. Few of us are willing to complete a frustrating transactional experience the first time round, let alone return to use the same site or app again. Last year, Amazon found that every second of latency cost them 1% in sales.
- Consumers may uninstall apps and actively switch to a competitor that is known to have low latency (according to an Apteligent survey, almost 50 percent of consumers say they would uninstall an app if it “regularly ran slowly”).
- Consumers who are unhappy with speed may also write negative reviews which deter others from using an app or service. Especially those who are frustrated by having been unable to communicate efficiently with customer service agents due to lag. As options for realtime access to customer service have expanded, reducing latency, brands who have embraced newer developments have noticed a marked increase in customer satisfaction scores.
- Google has confirmed that speed is a ranking factor in their SEO algorithm, both for desktop and mobile searches, meaning that the load time of your site is factored into search engine results. Page speed contributes to a high quality user experience, and these are the sites that Google wants to return results for. Faster pages, happier users, more visibility.
What causes latency?
While high latency can be caused by something on the end user’s side like out-of-date equipment, there are issues that are within the control of the developer.
- Geographical distance between client devices and servers responding to requests.
- Data packets crossing multiple networks.
- Webpage or application construction; especially if multiple elements come from third parties.
How can I fix latency issues?
It is possible to create smoother experiences by implementing some of the following methods:
- Using a content delivery network (CDN) to store content closer to end users and deliver it to them faster.
- Optimizing loading of third-party content by reducing file sizes if possible.
- Employing tactics that change a user’s perception of speed, but do not change actual latency (such as loading page elements as they are needed, a skeleton version of a site instead of a full version, or using an animated progress bar to communicate that an app is “working”).
How to avoid latency issues by using the Channels API
Pusher Channels allows developers to create realtime experiences (e.g., chat, polling, trading, or collaboration) at scale without worrying about complicated infrastructure which contributes to high latency.
One of our most popular Channels use cases is gaming. As mentioned earlier, low latency is critical for online multiplayer experiences. With Channels you can build multiplayer game sync, enabling seamless multiplayer experiences across different devices. You are also able to monitor and track communications in realtime with less than 240 milliseconds of latency.
A key component of improving latency in a Channels app is cluster configuration. When you create a Channels app, you can choose which cluster it exists in. This allows you to host your app close to your customers and minimize latency when the application is sending and receiving messages.
We have several public clusters, but can create clusters in custom locations on request. If you’re interested in a bespoke plan, you can get in touch with us to find out more about how this we can help you to reduce latency.