What is considered a good response time for a dynamic, personalized web application?

PerformanceScalability

Performance Problem Overview


For a complex web application that includes dynamic content and personalization, what is a good response time from the server (so excluding network latency and browser rendering time)? I'm thinking about sites like Facebook, Amazon, MyYahoo, etc. A related question is what is a good response time for a backend service?

Performance Solutions


Solution 1 - Performance

There's a great deal of research on this. Here's a quick summary.

>##Response Times: The 3 Important Limits by Jakob Nielsen on January 1, 1993

>Summary: There are 3 main time limits (which are determined by human perceptual abilities) to keep in mind when optimizing web and application performance.

>Excerpt from Chapter 5 in my book Usability Engineering, from 1993:

>The basic advice regarding response times has been about the same for thirty years [Miller 1968; Card et al. 1991]:

>* 0.1 second is about the limit for having the user feel that the system is reacting instantaneously, meaning that no special feedback is necessary except to display the result. >* 1.0 second is about the limit for the user's flow of thought to stay uninterrupted, even though the user will notice the delay. Normally, no special feedback is necessary during delays of more than 0.1 but less than 1.0 second, but the user does lose the feeling of operating directly on the data. >* 10 seconds is about the limit for keeping the user's attention focused on the dialogue. For longer delays, users will want to perform other tasks while waiting for the computer to finish, so they should be given feedback indicating when the computer expects to be done. Feedback during the delay is especially important if the response time is likely to be highly variable, since users will then not know what to expect.

Solution 2 - Performance

We strive for response times of 20 milliseconds, while some complex pages take up to 100 milliseconds. For the most complex pages, we break the page down into smaller pieces, and use the progressive display pattern to load each section. This way, some portions load quickly, even if the page takes 1 to 2 seconds to load, keeping the user engaged while the rest of the page is loading.

Solution 3 - Performance

I have been striving for < 3 seconds for my applications, but I'm a bit picky when it comes to performance.

If you ask around, they say that people start to lose interest in the >= 7 second range, by 10-15 seconds you have typically lost them, unless you REALLY have something they want or need.

Solution 4 - Performance

It depends on what keeps your users happy. For example, Gmail takes quite a while to open at first, but users wait because it is worth waiting for.

Solution 5 - Performance

Of course, it lays in the nature of your question, so answers are highly subjective.

The first response of a website is also only a small part of the time until a page is readable/usable.

I am annoyed by everything larger than 10 sec responses. I think a website should be rendered after 5-7 sec.

Btw: stackoverflow.com has an excellent response time!

Solution 6 - Performance

Our company has a 5 second response time standard limit, and we aim for 2-3 seconds in general. This accounts for 98% of page loads. A few particular tasks are allowed to go up to 15 seconds, but we then mitigate that time by putting up a page and refreshing every 5 seconds telling the user that we are still trying to process the request. That way the user sees that something is happening and doesn't just leave. Although, considering that I work on a website whose users are forced to use for business reasons, they aren't going to leave, but they are capable of complaining quite loudly.

In general, if the processing is going to take more than 5 seconds, put up a temporary page so that the user doesn't lose interest.

Solution 7 - Performance

I think you will find that if your web app is performing a complex operation then provided feedback is given to the user, they won't mind (too much).

For example: Loading Google Mail.

Solution 8 - Performance

Not only does it depend on what keeps your users happy, but how much development time do you have? What kind of resources can you throw at the problem (software, hardware, and people)?

I don't mind a couple-few second delay for hosted applications if they're doing something "complex". If it's really simple, delays bother me.

Solution 9 - Performance

2 to 3 seconds

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionMichael BobickView Question on Stackoverflow
Solution 1 - PerformanceHank GayView Answer on Stackoverflow
Solution 2 - PerformanceJeshurunView Answer on Stackoverflow
Solution 3 - PerformanceMitchel SellersView Answer on Stackoverflow
Solution 4 - PerformanceLiamView Answer on Stackoverflow
Solution 5 - PerformancePeter ParkerView Answer on Stackoverflow
Solution 6 - PerformanceElieView Answer on Stackoverflow
Solution 7 - PerformanceChris HawesView Answer on Stackoverflow
Solution 8 - PerformancewarrenView Answer on Stackoverflow
Solution 9 - PerformancetyshockView Answer on Stackoverflow