Researching the timeout question for data downloads. Given some are instantaneous and others can take minutes, looking for current perspective on

  • How long will a user wait for a data download before abandoning?
  • When should a progress bar kick in?
  • When should you tell the user that it will be in their downloads when finished?

You might want to look at Nielsen Norman Groups work on response times:

Response Times: The 3 Important Limits

For slower operations: In cases where the computer cannot provide fairly immediate response, continuous feedback should be provided to the user in form of a percent-done indicator [Myers 1985]. As a rule of thumb, percent-done progress indicators should be used for operations taking more than about 10 seconds

For faster operations: For reasonably fast operations, taking between 2 and 10 seconds, a true percent-done indicator may be overkill and, in fact, putting one up would violate the principle of display inertia (flashing changes on the screen so rapidly that the user cannot keep pace or feels stressed).

One question: can your application allow for users to continue work while the downloads prepare?

If so, you can treat it like a bottom right toast or snackbar, with a dismissible message in the case where you can set expectations for longer downloads, and assure users they can continue their work.

The have another article as well: Progress Indicators Make a Slow System Less Insufferable

They caution against Static Progress Indicators:

One final way to provide feedback is through a static progress indicator. This includes an unmoving image or text, such as “Loading…” or “Please wait while we process your request” to indicate that the request has been received.

While any feedback is better than none, static indicators should be replaced with another type of indicator, because they do not offer enough information about what is happening.

The main guideline is to use a looped indicator for delays of 2–9 seconds and a percent-done indicator for delays of 10 seconds or more.

| improve this answer | |

There is another alternative, which PayPal (among others) uses for big downloads:

1 - Upon submission of the request, update the page to indicate the download is being processed.

2 - Upon completion of the processing (not the actual download):

  • If the user is still on the page, update the status and create a download link.
  • Send an email to the user to let them know the download is ready.
  • The download can now be done very quickly via the link because it is loading a fully prepared file instead of processing on the fly.

This is not perfect for everything as it requires a bit of extra work on the server to set this up. But if the preparing the download file often takes more than a few seconds it can prevent users from getting annoyed with the wait. They can choose to go elsewhere or to wait for the file to be ready, knowing that they will get an email reminder when it is ready.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.