Say I have a page that has a continually-refreshed status on it. The idea for the service is that it's something you can keep an eye on in the background while it continually refreshes itself. How do you effectively communicate that it will refresh every so often?

Currently, I just display something like "status: X as of Y seconds ago; refreshes every Z seconds." It works, but it seems that some people do not read the "refreshes every Z seconds" part and complain that they must manually refresh the page.


download bmml source – Wireframes created with Balsamiq Mockups

[edit] Some clarity on the "progress bar" in the mockup: it's more of a meter. Think of it like a CPU monitor or similar -- it's not always increasing, and it's not representing "time to next refresh" or anything.

Also, I know some people are against auto-refreshing, but this is a case where it is a necessary and desirable feature, so ideally discussion should focus on how to present the information and not why it should not be done.

  • Just how big is Y compared to the volatility of your status, i.e. is it important if the value is ten or fifteen seconds old? Do you think shortening your text to "50% utilized (update in (Z-Y) s.)" would help? Commented Jun 25, 2013 at 5:31
  • @UlrichSchwarz This thing is generally going to be updating every 5-15 seconds. The status is actually a couple of lines (and part of it is actually in the bar); I just shortened it for the question.
    – NickAldwin
    Commented Jun 25, 2013 at 5:49

4 Answers 4


The label "refreshes every Z seconds" is a "dead" one, that doesn't convey the feeling the system is online and working. You can try instead add a countdown timer, that will show the time until the next refresh. This way, the user would know exactly when the next refresh is going to be, but still will have a feeling that the system would do it (you see the clock ticking!).

I also suggest adding the "refresh now!" button next to it, for those eager users with no patience.


download bmml source – Wireframes created with Balsamiq Mockups

  • Unfortunately, rate-limiting is in place in this system. Will users still be happy with a "Refresh now" button that appears to refresh but really does nothing?
    – NickAldwin
    Commented Jun 25, 2013 at 5:07
  • If that can't be supported technically, then adding it in deed might be useless. However, I heard this rumor that some of those elevator buttons which command to close the doors actually does nothing. Pressing them just gives people the impression they caused the doors to close, while in fact they would have closed anyway.
    – Dvir Adler
    Commented Jun 26, 2013 at 12:42
  • 1
    Through tough empirical testing I can verify the elevator door. Most don't do anything. I think giving the user the impression of working is just as good as it actually working.
    – Frank B
    Commented Jul 8, 2013 at 15:50
  • See related post about deceiving users: ux.stackexchange.com/a/41715/17246
    – Dvir Adler
    Commented Jul 9, 2013 at 11:08

Take a leaf out of the slideshow/carousels and use an animated timer. The content will change every time the timer's cycle is over.


If the time for refreshing is not consistent, I would use a status signifier:

  • The content is up-to-date (maybe even show last updated timestamp)
  • Updating content (loading animation to tell the user that the content is currently being updated)

Also, a tiny modification to improve the UX: Even though you know that the content is not periodically updated, you should update the latest timestamp to something which is enough to make the user feel the system is live (maybe every minute or 5). Thus, even if your update will be 20 minutes apart, it will be only 5 minutes apart for the user. Hopefully curing their refreshing habit.

  • There might be an issue with two progress-bar-like controls in the same area. @micap brought up a good point below -- what if I just wanted to communicate that it will periodically refresh, not necessarily that it will always refresh every Z seconds?
    – NickAldwin
    Commented Jun 25, 2013 at 0:39
  • @NickAldwin added non-periodic refreshing situation information.
    – rk.
    Commented Jun 25, 2013 at 0:47
  • So I didn't include it in the question (in order to make it more general), but in my situation, I have a last updated timestamp and a loading animation, but I still can't figure out how to easily inform the user that it will be refreshed automatically in a few seconds.
    – NickAldwin
    Commented Jun 25, 2013 at 0:54
  • 1
    @NickAldwin Updated answer. Also, if you are not showing a message like 'content is up-to-date', the user will feel the need to manually refresh the page.
    – rk.
    Commented Jun 25, 2013 at 1:01
  • 1
    @NickAldwin I still don't understand. But, if the timing is consistent, you just need a count-down timer to signal upcoming refresh. 'Auto refreshing in (timer)'
    – rk.
    Commented Jun 27, 2013 at 3:54

I think there are two important considerations here:

  • This feature should claim very little attention. Its only purpose is to put users at ease. After the user has understood, it should be next to invisible.
  • If you make it a message, users won't read it. Text is not the medium to communicate this. That doesn't mean it shouldn't be a text, but the primary means of communication should be behavior rather than the content.

I'd take inspiration from the Google drive status message: Google Drive example "All changes saved"

Google Drive example "Saving"

All changes are pretty much uploaded immediately, and there is a different warning for a lost connection, so this message has very low importance for most users. Its main use is to put the user who is used to saving her document every so often at ease. The text is grey to make it ignorable, and it jumps every now and then to show that the application is continuously working to keep the document safely stored.

To translate this to your situation, it's important to have a message that changes every now and then ("Up to date", "Updating...", "Updated a few seconds ago"), but not too often. The actual text doesn't matter as much as getting the behavior right. The changes should show that the application is working, but not attract too much attention.


The refreshes every Z seconds appears too connected to the progress bar and the progress statement. Users scan the progress bar and immediately assume the text is secondary info and therefore neglect it.

Is it that important to let users know how often it refreshes rather than the fact that it is refreshing? If it seems the progress has a discreet total, then you can animate the progress bar in between the refreshes.

  • Unfortunately, the control is more of a meter than a progress bar, so won't be always increasing. Think of it like a CPU meter or something. It's important to let users know that it's refreshing automatically, really -- that they don't have to manually refresh.
    – NickAldwin
    Commented Jun 25, 2013 at 0:41
  • If the time interval between refresh is not important, then I agree with @rk. to supply a content is up to date text. How do I tack this comment under his response? Oh well, up voted the last comment
    – micap
    Commented Jun 25, 2013 at 8: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.