I am designing and building an iPad app. Some pages on the app are blank when you first navigate to them prior to the page loading.

Do I need to inform the user that the page is loading or do I just leave it blank?

I'm talking about a full page load rather than lazy loaded items within a page. I believe that indicating that more child items in a list are loading is necessary but I'm unsure about a full page indicator.

Below is a mockup of something that could be done i.e. an animated gif. Is it necessary?

enter image description here

2 Answers 2


You should definitely inform users that you're loading something. If you would only show the blank screen, they will eventually not understand what's happening. Is the app broken? Is it supposed to be blank? What do I have to do?

The most important thing is, that your users don't feel stupid.

But you should avoid using a fullscreen indicator for every loading condition. Use non-modal Wait Indicators as much as possible.

The best idea is (of course) loading fast enough that you don't need an indicator at all.

  • you're right about non-modal being better, I think the majority of the loading indicators will be as lists populate and load as you scroll for example, so they will be in place rather than full screen.
    – Dave Haigh
    Sep 20, 2013 at 13:38
  • 2
    Also it'll be nice to have error message if the app fails to load the content for whatever reason (no wifi...etc.) so that the users know how to resolve the error or try again later. Otherwise showing the users an infinite loading screen is just as bad as the blank page.
    – Poyi
    Sep 20, 2013 at 17:57
  • Yes, I totally agree
    – Lovis
    Sep 20, 2013 at 19:19

If you want the app to feel snappy you should try focusing on the progress and avoid making the user aware that things are loading. Might not always be possible but in general it seems like a good pattern in the vein of "ajax, assume success".

Luke Wroblewski has an interesting article on how adding a loader made users think that their app had become slow, and how they use skeleton screens in "Polar" to make the application feel faster. http://www.lukew.com/ff/entry.asp?1797

  • Interesting article indeed, but I feel like we should be careful about those kind of "optimization". They wrote: "We used this technique in several places on Polar to effectively eliminate our spinners" - but what if you have slow network? The data loads forever. Wouldn't it be better for users to know what's going on? Maybe this relates to software-engineering rules of optimization: 1. Don't do it. 2. (for experts only) Don't do it yet
    – Lovis
    Sep 23, 2013 at 14:16
  • 1
    I totally agree that system transparency is important so if you go down this route it might make sense to set a performance threshold where you switch in a load indicator. A better approach might be to view the app as a web browser. Use a global loading indicator that shows that the app is fetching but display each piece of content directly as it arrives. Sep 26, 2013 at 9:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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