I am designing a dashboard that contains a number of modules bubbling up information from different parts of the product. One section is showcasing different people. I want to provide a tab-based way of viewing different types of people (e.g. Highly Ranked, Bookmarked, Most Recent, Dormant) with a particular module but realize that at certain points there won't be any data for that particular tab.

Is it a best practice to hide the entire tab until data exists? Or should it be visible but greyed out? Or should it be clickable but have a message saying something like 'No content avaialble'?

Below is a screenshot of the wireframe (with the tabs disabled)

enter image description here

  • Is it like an accordion or is it like top level tabs?
    – Mervin
    Commented Aug 7, 2012 at 18:02
  • Updated question to include tab design Commented Aug 7, 2012 at 18:04
  • 4
    "Highly Ranked (0)" tells the user there are no results without requiring the a tooltip. In the case of clickable tabs with no results, I much prefer that over a tooltip. It tells the user that there are no results in a manner consistent with the other tabs.
    – Brian
    Commented Aug 8, 2012 at 2:24

3 Answers 3


I am going to go with Schroedingers Cat's answer but I would recommend keeping the tabs active and present a notification such as there are no bookmarked people or something along those lines. The reason being some people might not understand that a tab is grayed out or inactive and might try to click it and get confused.

From an anecdotal point of view, I designed a site recently for a large organization which provides training classes to people in different countries. We initially hid the tabs when there were no training classes available for the specific country but then we found out that users assumed that the organization did not that serve that country. However graying out also caused confusion since people tried to click it and assumed that that the disabled tab was a placeholder or was representative of classes being added to that country in the future.However we relieved no complaints when we left the tabs active provided the tab content displayed information or suitable messages


As a rule, hiding and showing things is a bad idea, because it changes the users navigation without them doing anything. Disabling them is a good idea, or showing them without content - depending on how you implement them.

My personal preference would be disabled tabs, with rollovers to tell me why they are disabled, but your user base may have other ideas.


I had a similar interface in a business application I was building, and what we did was we left the tabs enabled, and we had informational/instructional content provided by the business users that was displayed if the current state of that element didn't contain any business data.

What we found was that many of our users wouldn't use the supplemental support documentation that had been developed, but if we pulled pieces of it into the interface, it actually helped the users to learn about how the app works. So instead of seeing nothing or a disabled tab, they would see some information that said why there was no data--where it came from, how to add it, etc.

It depends on your use case, in our situation it made sense because we already had the supplemental content available, we just had to give the business users an administrative interface to control the messaging in the application.

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.