Background: In the application I'm working on we have a feature which basically gives you important updates on whats happening in your business. These updates appear as notifications in the header (think Facebook, StackExchange etc.) When you click the notification you get a dropdown with the 5 latest updates and a View All link which takes you to a page with a complete list of updates where the latest (unread) updates are highlighted.

Question: What is the best way of marking unread updates as read? Currently we mark the updates as read after a page refresh i.e. first time you visit the page with unread messages they are highlighted but next time you come back they are not highlighted any more. This is fine for a small number of updates but imagine a situation where there are 20 of them. I would like to avoid adding a "Mark as read" link on every row if at all possible. Any ideas?


3 Answers 3


When the user click on the dropdown, the 5 inside will be marked read, then there should be a button inside the dropdown box to refresh to see the next 5 if there's more.

The general idea is - when a notification is exposed, it's marked read.

  • I see. So instead of marking them as read when you visit the page with updates, you do it as soon as the dropdown is opened? So, lets say you have 5 updates, but only 2 of them are 'unread', how would you handle that? Jan 15, 2013 at 14:14
  • are we talking about 5 updates in the dropdown? the dropdown is only for unread updates, there will only be 2 in the dropbox in your scenario.
    – Andy
    Jan 15, 2013 at 14:27
  • Got it. So that would mean that if I have no updates, I can not open the dropdown, correct? Or should the dropdown still open but show a message saying there are no new updates? What if I want to read old updates? Jan 15, 2013 at 14:31
  • is there a reason that you have to show 5 or less? why can't you just have the dropdown to show all the updates, and the unread ones are highlighted. Use infinite scroll.
    – Andy
    Jan 15, 2013 at 14:34
  • Yeah, the updates can be of varying length, some just a few words, some a couple paragraphs of text and could also include links. Jan 15, 2013 at 14:42

I would like to put a feature like linkedin or gmail.

The options I liked are:

1 - A checkbox on the table head to select all items; 2 - Options on table head such as: 'All' or 'Nothing';

And after click on 'Mark as read' button or link;

Operations like that needed the two steps select and click to confirm.


If you wish to avoid "mark as read" status you should probably show updates one by one, so unseen updates will become "unread".

You may do that by showing an one update at a time on the notifications popup and place an arrows to go to the next update. Next time user will open the popup unseen notifications should be shown first.

You may also add "view all notifications" link so user will be able to review old notifications.

  • So the difference between how it works today and your suggestion is that we show only one update at a time? Lets imagine you have 10 updates, wouldnt it be cumbersome having to click next 10 times to read them all instead of directly clicking the View All link and see them all but still being able to tell unread from read, or old from new? Jan 15, 2013 at 14:16
  • @tblessander the idea is to be sure that user have seen all the updates and doesn't missed anything important as you mentioned in your question. "View All" link should not reset the read state. It's supposed to review old updates. Viewing updates one by one may be slower than viewing 5 updates at a time but will increase the chance user is aware of each update. Jan 15, 2013 at 15:36
  • I see. Good point. I like it due to the fact that it "forces" the users to read all updates which is definitely a good thing, on the other hand it adds a lot of friction. but perhaps it wouldnt be too bad. Jan 16, 2013 at 14:05

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.