« Fine-grained treats = user happiness | Main | Think... or be afraid »

The case for easter eggs (and other clever user treats)

My previous post on user treats drew some arguments both for--and passionately against easter eggs in software. But in each of the arguments against easter eggs, the reason is virtually the same: "Why the hell are you spending your time creating these "surprises" when you haven't even bothered to fix the glaring bugs?"

So let's get this out of the way right now...

Until you've nailed the fundamentals--the things users want, need, and expect--don't bother trying to "surprise and delight" users. That just pisses 'em off.

That's why I updated the graphic I made for my earlier how to break through post to show the place a product or service should be before easter eggs come into the picture.

But this blog is about creating passionate users, not merely satisfied users. If you're still dealing with the bottom levels of the hierarchy, you've got bigger issues to deal with first. The scary thing is, in those lower levels you're kicking and clawing and trying to buy your way to market share amidst what is, for most of us, brutal competition. And that's not a fun place to be, financially or emotionally and spiritually.

So now that we're talking only about those who've satisfied user requirements and expectations...

A good easter egg is a playful, hidden or disguised feature that, when discovered, can offer surprise, delight, entertainment, humor, novelty, or an "I Rule" experience.

I'm not just talking about software easter eggs--you'll find them in movies, music, posters, logos (have you noticed the little extra image within the FedEx logo?), books (our Head First books have quite a few), games, magazines, blogs...

Brains thrive on the "OH!" moments of discovery.

They love to stumble on things, and even better--they love to figure things out. A lot of easter eggs are like puzzles waiting for you to find their second meaning, especially when that meaning requires some "insider" knowledge or skill.

If user engagement is a Good Thing (and for what most of us are creating, selling, writing it is), easter eggs can be a powerful ally in making that happen. Done right, easter eggs can add value that (unless you're doing a mission-critical app where undocumented code is a security or safety risk) is worth it.

Characteristics of good easter eggs:

* They get users involved as a participant rather than a passive specatator (people have told us they've through our books a second time looking for some of the easter eggs once they've found a few and realize that they're in there).

* They get users to spend more time

* They're remembered (you can use easter eggs to enhance learning)

* They DO NO HARM!

* Their discovery is NOT a required part of the experience. If it is, then it's not an easter egg, but simply a part of the product.

* They give users the "I Rule" experience of being clever enough to "get it", especially if it's in plain sight, but requires "insider" info to recognize it. For a particular audience, for example, that might be "NCC-1701" as the license plate on a car. Just about every programming book (ours included) uses the number "42" in a statistically unlikely number of code examples. And there are more Monty Python references scattered in books and movies than any of us can possibly know.

Think about the number of movies that include lines made famous in other movies, or feature cameos from the director or an actor from the original movie, etc. but that only die-hard fans would discover. The person who "gets it" has the smug satisfaction of knowing that the line or joke would be lost on other mortals.

[In the new Hitchhiker's Guide movie, a key character from the original BBC TV show makes an appearance in the movie, as a different character. This recognition is not in any way required for you to enjoy the movie, but it's a wonderful delight and surprise to discover it, and those who do feel somewhat "special" for experiencing more in the movie than others will.]

* They're entertaining in some way (this is largely the point of making them)

* They do NOT need to be funny, although they often are. But they can be moving, inspirational (like discovering the developers were proud enough of their work to put in their personal signatures and sometimes photos), or thought-provoking.

Not everything that's entertaining and fun is funny... logic puzzles are fun, but not funny. Chess is fun, but not funny. Easter eggs can work the same way.

As a disclaimer, I'll state the obvious--we shouldn't be adding undocumented code to anything running a mission-critical application like, say, air traffic control or a nuclear power plant. Actually, we shouldn't be adding undocumented code to ANYTHING, but there's no reason a programmer can't document easter egg code, except for the whole getting fired thing... so there are obviously places you don't want to put these things. But I'm not talking about those!

So assume that we're all exercising common sense, and we're now trying to go beyond the basics in our products and services. We're trying to deliver more engaging, delightful, fine-grained, frequent treats to reward our users and the employees who get to make doing this a part of their job description.

To summarize: if you don't have the basics down, don't even think about adding special features like easter eggs. But if you're stopping at user satisfaction and meeting expectations, you're in for a bloody marketshare battle, because there's nothing stopping your competitors from doing the same thing. If you want to compete for hearts and minds, you have to care about the higher notches of user experience, and easter eggs are one of the many tools you should have in your user-delight toolbox. Unfortunately, easter eggs have gotten a bad rap in many software shops, but some developers aren't so happy about that (like this Microsoft Longhorn evangelist).

And if you're looking for easter eggs in your own software, the best place to start is The Easter Egg Archive, which advertises "7884 easter eggs collected so far, 9 new in the last two weeks!"


Finally, you might want to check out this wonderful book on "witty thinking in graphic design", A Smile in the Mind. Although it's specific to design, it's a visually-rich (and very entertaining) book with a message that applies to virtually anything from teaching a class to writing a book to developing software to decorating your house. Leave it on your coffee table and watch what happens...

Posted by Kathy on May 9, 2005 | Permalink


TrackBack URL for this entry:

Listed below are links to weblogs that reference The case for easter eggs (and other clever user treats):

» I wish more people I knew read Kathy Sierra's posts from Apperceptions
Too many companies (large and small) are adding new features to products when they should be fixing bugs. [Read More]

Tracked on May 10, 2005 9:25:52 AM

» Easter Egg morality from JD on MX
Easter Egg morality: Essay on the need for, and potential dangers of, including fun bits within an application. I think the orientation here may be towards shrinkwrapped software, but the arguments and caveats seem to hold for various types of web appl... [Read More]

Tracked on May 10, 2005 1:40:50 PM

» Surprise and Delight Customers with Easter Eggs from BeConnected
If you are looking for a way to surprise and delight your customers (and, really, who isn't?) you might consider adding easter eggs to your product, service or experience. Yes, even your email newsletter. Kathy Sierra has a great piece making the case ... [Read More]

Tracked on May 11, 2005 5:46:39 AM

» Making passionate users from Safe as Milk
Following on from what Vincent said, here's a link from "Creating Passionate Users" on featuritis - try to figure out where GNOME is on the curve. And another one on Easter eggs Another post on "Creating Passionate Users" suggests that passion implie... [Read More]

Tracked on Oct 19, 2005 9:59:29 AM


I STILL hate Easter eggs! (See my comment about the "Fine-Grained Treats" post.)

If the goal is to delight users, Easter eggs aren't the way to do it. The problem is that Easter eggs are "hidden" features. It's there and it's cool, but you have to hunt for it. I really wish I had time to search for them, but I'm busy -- and I bet that you are, too.

The end result is that I often miss out on cool stuff that I already paid for. I am not delighted by this -- I'm annoyed.

Even worse, after you find the first Easter egg, frustration sets in because it suddenly dawns upon you that you'll probably never know if you've found them all. (Now, I'm even less delighted.) You might be missing out on the coolest feature ever, but because it hidden, you may never know.

It's like going to a car dealer and buying a cool new car. Except they won't give you the key. The saleman comes out and says, "The key is hidden *somewhere* on our three acre lot. Enjoy!" That would definitely "surprise" me, but I wouldn't exactly be "delighted."

The type of Easter egg I'm referring to is typically found in software and DVDs. The actual movie itself doesn't count. Movies are sequential, so you really can't "hide" anything; "inside jokes" are different than software Easter eggs.

If you feel truly compelled to include software Easter eggs, at least mention them *somewhere* in the manual.

Thanks for reading. This concludes my Easter egg rant. ;)

One final note:

I like this blog a lot. If you do too, you'll probably also like the work of Roy Williams (www.wizardofads.com). He writes frequently about the brain and "surprising broca." He has a FREE Monday Morning Memo e-newsletter that's great. (Note: I have absolutely no connection to him.) Enjoy!

Posted by: Johnny | May 10, 2005 2:15:07 PM


"It's like going to a car dealer and buying a cool new car. Except they won't give you the key. The saleman comes out and says, "The key is hidden *somewhere* on our three acre lot. Enjoy!" That would definitely "surprise" me, but I wouldn't exactly be "delighted.""

No, it's nothing like that. One of the points above is:

"Their discovery is NOT a required part of the experience. If it is, then it's not an easter egg, but simply a part of the product."

And griping about what you paid for is missing the point. These are "extras", perhaps like the flight simulator that was in old versions of Excel or the hidden ending in the Deus Ex game. If you're too busy, then you haven't lost anything, you've gotten every bit of functionality you expect, need, want, and will use. These bits are hidden surprises that should have nothing to do with the actual, normal functionality. If they do, then it's just really bad UI and deserves criticism.

Posted by: Kyle | May 11, 2005 8:46:38 AM


If Excel includes a hidden flight sim, that's great. I'm all in favor of it. I LOVE to be impressed. But I can't be impressed and delighted if I don't know it's there. If they told everyone it was included, we could ALL enjoy their clever addition (instead of having that joy reserved only those who managed to stumble across it). Is it better to delight a few users -- or ALL of them?

In addition, if a feature is there, you DID pay for it. I took time to code and debug and that cost is baked into the price. There is, as they say, no free lunch.

Point taken about my car example. You're right, the key is essential. It's actually more like buying a car with the standard radio. You go to pick it up and the salesman says, "We've included a CD changer, but it's hidden somewhere on our enormous lot." The CD changer isn't essential to the car's operation (and with luck you'll stumble across it before trade-in time), but I'd rather start enjoying it immediately. ; )

Posted by: Johnny | May 11, 2005 11:40:00 AM

JOHNNY: you definitely make some good points. The fact that you have this perception of easter eggs means they aren't viewed by *everyone* as a treat, even when all the other useful features work well. You feel cheated for not being made aware of them... on the other hand, if they *were* publicized or put into the manual, then those who appreciate the fun of the discovery would miss out as well.

So this is an interesting question I'm going to think about... how do you keep people from percieving easter eggs as "features" that they've paid for? It makes sense to me, now that you mention it, that some people *would* view them as something the developers obviously took time to create and put into the software--and that the paying customer-user ought to be able to take advantage of.

You're right that inside jokes and easter eggs are different, although I *am* lumping them into one meta category of "user treats" or... things that can delight people when discovered unexpectedly.

OK, you just gave me more to think about. I hate it when that happens... gee THANKS Johnny ; )

Posted by: Kathy Sierra | May 11, 2005 12:26:41 PM


"OK, you just gave me more to think about. I hate it when that happens... gee THANKS Johnny ; )"

No problem. I'm here to help. ;)

"So this is an interesting question I'm going to think about... how do you keep people from percieving easter eggs as "features" that they've paid for?"

Why bother to try? Instead, picture this...

Our customer opens the box containing her new whiz-bang spreadsheet program. Inside, she finds a CD-ROM (who cares?), an instruction manual (big deal!), a warranty card (yawn!), and... a secret decoder ring with a note attached (hey, what's this?).

The note says, "This software contains 10 really cool easter eggs -- but we're not going to tell you where they are. The only way to find them is by using this decoder ring -- but we're not going to tell you how it works."

Our user knows the easter eggs exist and how many there are, but she doesn't know where they are or what they are. She is surprised and delighted -- but she won't miss out on anything. The result? Very little spreadsheet action is likely to take place until she finds all those darned easter eggs! ;)

Of course, there are other possibilities:

For example, you could include an unexpected coupon for a t-shirt (so they can send it in to get the correct size) or even a hat or limited-edition, logo key chain.

You could also use a timed pop-up window. After they use the software for twenty hours, a window pops up that says, "Gee, you've been working pretty hard. Would you like to take a break and play flight simulator?"

In each of these examples, our user is surprised and delighted -- but never left out or excluded.

Posted by: Johnny | May 12, 2005 2:20:45 PM

Star Wars easter eggs: My friend Bill Mietelski sent me this info (via slashdot):


On all embedded "treats" for Star Wars fans. Fun!

(Actually, the fact that this movie doesn't suck nearly as badly as the first two episodes is in itself a "treat" for fans ; )

Posted by: Kathy Sierra | May 30, 2005 6:55:44 PM

Johnny: I think you missed the point of Easter Eggs. These things are (predominantly) useless little add-ins that are "playful, hidden or disguised features that, when discovered, can offer surprise, delight, entertainment, humor & novelty." Among other things, I write web applications for our company. It's fun. Well, to me it's fun. To our internal clients (employees), it's a very useful product. It does everything they want it to do, and more. That accomplished, I decided to add a few things that, when discovered, would simply put a smile on their face. Nothing more. Ok, well, once they found them, they actually started using them in the application (for fun). They came to me and asked if there were any more. I, of course, divulged nothing. They're beating the thing up, now.

Oh, yea. By the way, we also sell this product and I haven't documented a single Easter Egg. hehe.

Posted by: harumph | Aug 22, 2007 2:34:29 PM

The comments to this entry are closed.