Essays & Articles


Toilet Paper Algorithms: I didn’t know you had to be a computer scientist to use toilet paper.

When we remodeled our home, we decided to install a dual toilet-tissue holder. Most home toilets have a single holder for a single roll. A single roll, however commonplace, is, well, shall I say, awkward. When the roll empties, then what? As a result, whenever we saw the roll approaching exhaustion, we would place a new roll either on the floor beside the toilet or on top of the toilet tank. In either case, we were defeating the nice orderly arrangement of the facility. Wouldn’t it be far better to have a place to put the roll?

Although most homes have only single roll holders, most commercial establishments have long ago switched to devices that hold multiple rolls. We decided to install one, so we purchased holder of two rolls, side by side.

We discovered that although we now had two rolls instead of one, the problem was not solved. Both rolls ran out at the same time. Sure, it took twice as long before the rolls emptied, but we were still stuck with the same problem: no more paper. We had discovered that the switch to two rolls meant we had to use more sophisticated behavior: the algorithm for tearing of paper mattered.

After some self-observation and discussion, we discovered that three different algorithms were in use: large, small, and random.

  • Algorithm Large: Always take paper from the largest roll.
  • Algorithm Small: Always take paper from the smallest roll.
  • Algorithm Random: Don’t think — select the roll randomly

We had assumed that Algorithm Random was most natural. After all, we had bought the dual-roll holder specifically so that we wouldn’t have to think. But were our selections truly random, we would chose each roll roughly equally, so they would both empty at the same time — or close. Algorithm random is not the one to use. To use toilet paper requires thought.

Our self-observations revealed that we really didn’t use the random algorithm — people are seldom random. The most natural: that is, we soon discovered, was to reach for the larger roll. Alas, consider the impact. Suppose we start with two rolls, A and B, where A is larger than B. With algorithm large, paper is taken from A, the larger of the two rolls until its size becomes noticeably smaller than the other roll, B. Then, paper is taken from B until it gets smaller than A, at which point A is preferred. In other words, the two rolls diminish at roughly the same rate, which means that when A runs out of paper, B will follow soon thereafter, stranding the user with two empty rolls.

Algorithm small turns out to be the proper choice. With algorithm small, paper is always taken from A, so it gets smaller and smaller until it runs out. Then paper is taken from roll B, which is full size at the time of the switch.

Yikes. We never realized that you had to be a computer scientist to use toilet paper. Worse, we didn’t realize that thinking was required to select the roll.

The real problem is, of course, in the design of the toilet paper holders. Instead of a dual-roll holder where both rolls are equally available, the holder should enforce a serial constraint: the second roll should not be available until the first is depleted.

This is what I called a “forcing function” in Design of Everyday Things. In the commercial holder shown in the photograph, when the bottom roll is depleted, pushing down on the empty holder will release the upper roll

A search of holders for the home finds that such solutions are rare. Study of commercial and industrial installations shows that such solutions are common. Designers of toilet paper holders for the home must never talk with those who design for commercial installations. A pity.

The response to this essay has been overwhelming. Who would have guessed? Some readers complained — appropriately — that the “forcing function” design I show has a flaw: you can’t tell whether there really is a spare roll of paper. The complaint is correct.

A better solution would be to make the cover transparent, or at least provide a window, and indeed, I have seen both of these approaches as well.

Here is my current favorite design — a far better forcing function. The second roll is clearly visible, but yet it can’t be used while the front roll is in place. Of course, it too has a downfall — when the front roll is emptied and the rear one installed in its place, to refill the rear spare requires a bit more work: removing the front roll, putting in the spare, and then restoring the front roll. A small price to pay, methinks. But wait, there is more. Take the open dual-roll holder in my house. We could solve the problem by marking the not to be used roll. We could leave it in its wrapper, or tie a special banner around the “reserve” roll until its time has come. Or better yet, it would be a great entry to my Chindogu collection!

Chindogu. The Chindogu solution, mind you, would be to wear the extra roll on your head — never be without, and it is great if you have a cold and frequently need tissues. (Chindogu?  Yeah, see their website, from which the picture on the left was taken, or their book.)

Where to get dual-roll paper holders: A surprising number of people ask for my help in finding these holders. Answer — I have no idea, but here are some suggestions. These are probably not in your home plumbing supply shop (but try anyway). Go to a commercial hotel or restaurant supply store. Or try Google, right up there in the upper right hand side of this page: put in the search string “dual toilet paper roll” (amazingly, the first item that was returned when I just tried this was this essay). It helps to add the name of the largest city near where you live — country too. (Don’t forget to click the Google button to tell it to search the web, not just the website.)

One correspondent suggested Twin Supply In the United States), and I find their selection among the best I have seen. Several solve the problems very gracefully. (I know nothing about this company except that for the URL.)

Yet more comments

The response to this essay is phenomenal: 20,000 people read it on one Sunday alone (thanks to a discussion group on Slashdot – search for “toilet paper”).

So, yes I know that Don Knuth worked out an algorithm for toilet paper, but it’s not relevant.

An Australian reader wrote to say that in Australia, they just use a weighted vertical stick, which holds several roles quite nicely. I discovered that a vertical paper towel holder works equally well: place it on the floor and it holds two rolls where they look neat and proper.

Some people complained that the mechanism of the “automatic drop” solution (my commercial photo, third photo from last in this essay) failed because the top roll would sometimes drop prematurely, hindering access.

And finally, I will now turn my attention to more fruitful lines of work (in particular, finishing my book on Emotion & Design) and not try to solve the problem of people who fold versus people who crumple their paper, or the major unsolvable question of, should you place the paper so that it falls down on the outside (over the top) or falls down the inside (from the bottom). Cats love the former, but people have mixed — but very strong views — about their preferences.