Numbers abound in interfaces, hopefully delivering a great deal of information. Bigger numbers usually indicate more activity (like when you're looking at comment threads), or more work to do (like when you're looking at your inbox); smaller numbers generally indicate low activity. However, when the number zero must be represented in an interface, it should be treated differently than other values. Why? As I'll show below, "zero" can actually imply a variety of things, depending on its context.
Search resultsZero results can mean either that the term isn’t represented in the searched data set, or that the user mis-keyed the term. Each possibility would suggest a different recourse.
- Correct term, but no results? You need to find another term or look elsewhere.
- Bad term mis-keyed? You need to supply the correct term.
When the search results are zero, help the user notice the error with attention getting graphic design, and provide options about alternate terms or places to look.
Much of what we’re doing when we design software is directing the user’s attention. To help the user with her goals, we’ll add attention getting signals where they’re appropriate.
For example, in help desk software, outstanding trouble tickets often need to be called out, since these represent problems to which the user is waiting on a solution. To let the user know that “we haven’t forgotten you,” we’ll put a simple indicator in the global navigation that represents this status. Often it’s with a tiny piece of rich, visual, modeless feedback (RVMF), such as “Trouble Tickets (2)”.
But when there are no outstanding trouble tickets, it doesn’t serve the user very well to keep calling her attention to it. “Trouble Tickets (0)” just serves as an unnecessary speed bump when scanning the navigation options. Instead, we drop the RVMF in the navigation so all of the options feel at the same “attention level” and the user can get on with using the intranet for other reasons.
Zero participation looks kind of sad. A “0 comments” label attached to a blog post looks like no one cares. “0 members” in a chat room looks lonely. These labels can adversely affect the user’s opinion of the object.
But with new posts, or at low-traffic times, it’s really just a matter of timing. The post might be spot-on, but not bear further discussion. Or it might be vitriol that needs a spanking, but which will come with time. Take the negative spin off the label by framing it as an opportunity.
For example, rather than showing “0 comments”, have it read “Add a comment.”
Sites like Yahoo! Answers award its users points for answering questions, but participation in this awards system is not vital to using the site. While “0 points” certainly provides some motivation to your more innately competitive users towards earning them, it might be that the user just doesn’t know what points are or how they can be used.
In this case you might want to change “Total points: 0” to "Total points: 0, Get started!", and add a well-labeled link to learn more. This “What are points?” link helps someone ramp up on the behaviors of your software.
It’s definitely a little extra work. The interaction designer has to specify it, the visual designer has to accommodate the changing sizes, and the coder has to catch the zero variables and change the display, but since the meaning is what your user is interested in, respect the differences in what zero could represent, and make "nothing" special.