The importance of Undo

An easily available undo function creates a sense of simplicity because it instills in the user the attitude of “what the heck, I can always undo it”.

Many internet users lack confidence when interacting with the web. It is our job as web designers to try and reassure them and provide a safety net when things go wrong. Providing various methods by which users can undo actions is a useful crutch to the less confident user.

Benefits of undo

Undo functionality seems to be in increasingly short supply on the more recent raft of web 2.0. websites, especially on sites that make heavy use of AJAX. This is a sad day for web design as the ability to undo provides three crucial benefits:

Alleviate apprehension

I have said this many times but it always bears repeating; the majority of people do not like computers. It is so easy for us to forget that, as we live and breath computers everyday. I have to confess that I am more comfortable working with a computer than the real world. After all, how many times have you tried to CTRL Z reality!

However, although we are comfortable with computers the majority of people aren’t. They are intimidating, impersonal and far from intuitive. This is not only true for the PC but also for the web. After all who would design a system where the interface changes when you move between sections (sites).

The ability to undo, go back or escape is a lifeline to many users. It is immensely reassuring to know that you can always undo something if you get it wrong and when that option is not available it can be incredibly disturbing. Take for example the first time you ever bought something online. Do you remember a feeling of apprehension when you realized that the next click would place the order and that there was then no going back.

A way to overcome complexity

I am a huge fan of simplicity, largely because I recently finished reading “The Laws of Simplicity” by J Maeda. In his book he talks about the fact that the ability to undo creates an impression of simplicity even in the most complex applications.

An easily available undo function creates a sense of simplicity because it instills in the user the attitude of “what the heck, I can always undo it”. Once the user has that attitude they perceive things as simpler than they actually are.

A method to build confidence

The “what the heck” attitude is largely about confidence. A confidence in the power of undo to do its magic, is what allows us to play and experiment with an application. Through experimentation and play we learn and with knowledge comes a confidence in our own abilities. That is the power of undo.

Opportunities to provide undo

Now that I have established the importance of undo the next step is to look at what options are available to us as web designers to provide undo to our users. I have come up with four ways this is possible, however the sad reality is that we continually undermine these different methods in the way we code and design.

Back Button

I must have sat through hundreds of usability sessions over the last decade and I do not recall one where the user did not use the back button at some point. The back button is the primary life line used by most people to correct problems and yet in more and more sites it does not work. The problem lies in the use of AJAX and Flash which break the page metaphor on which all browsers are built. The same problem occurred with frames and was one of the major reasons that the use of frames died out.

Although there are fixes for this problem in both flash and AJAX, they are far from perfect and rarely implemented. Serious attention needs to be given to this problem when developing modern web applications as a failure to do so not only undermine usability but damages user confidence.


There was a time when users didn’t really understand breadcrumbs. However as has been suggested recently by Jakob Nielsen, that is no longer the case.

Although breadcrumbs should never be seen as a replacement for the back button, they do work as a handy alternative for more experienced users. What is more, although they have traditionally been used on page based websites they can also translate well onto web applications.


In usability sessions I have also occasionally seen favorites and bookmarks used as an undo tool to go back to a previous page. However as with the back button this functionality is often broken in modern web applications that update sections of pages instead of the entire page. Favorites provide the valuable ability for the user to quickly return to marked “safe points” in their surfing and as a result we should be doing our upmost to ensure that this ability remains.


Almost all websites have a link back to the home page, however not all of them make that link very obvious. A common practice is to make the logo a link back and although in itself this technique is fine, it is not obvious this link exists and so many users are not aware of it.

Having a link back to the home page is a great way of letting the user “start again” but if you are going to provide that functionality it needs to be obvious.

So there you have it; why undo is important and some techniques to undo easier on your website. Hope it helps.

Related Post

Saving your users sanity Our mission as user experience champions is to save people from death by a thousand cuts. Small, but significant irritants that add up to be something more serious.
Are you failing your users like Nuance? Software company Nuance shows us a terrifying fact. That a lack of focus on customers feelings and needs can destroy brand perceptions. A mistake we all make.
How to stop abusing your users time! Are you abusing your user's time? Time has become the most valuable commodity for many people. And wasting their time is the ultimate crime.
  • Nice article. You really know your stuff on usability. I think breadcrumb trails are very effective, and due to forum software they are no longer a mystery to users. I’ll have a dig around in your archives and see what other goodies I can dig up.

  • Good post. I completely agree with you that the digital world is an unfamiliar and scary place for most people, even today. But one of the great advantages to digital devices that have no direct equivalent in the real world is undo.
    I use undo as a designer (in my graphics editing programs), as a web surfer (via the back button, breadcrumbs, etc.) and as a TV watcher (via my DVR’s rewind button). And every so often, for an instant I’ll contemplate undoing something in real life, before realizing that it’s not that easy.

  • Great post. This made me realize how some of my websites are not “undo” friendly. The power of the breadcrumb was great, but realizing that my logo is the home button was another. Would love to see more posts on subjects like this. Cheers!

  • Just finished reading “The Laws of Simplicity” by J Maeda… and just wanted to say thanks bringing this book to our attention…

  • A list apart magazine also covered the undo topic recently.

  • I have been using UndoEngine from It is a dll that enables Undo/Redo within the .NET Framework. It works with any .NET object including web applications. Hope this helps.