The 3 design principles for creating flow
The 3 design principles for creating flow

Flow is a magical feeling.

Time melts away. Your fingers dance across the keyboard. You're driven by boundless energy and a wellspring of creativity — you are completely absorbed by your task.

Flow turns work into play.  It can make you 5x more productive. Some would even say that flow is the deepest form of happiness!

The incredible power of flow

During flow, our brains enter an altered state: intense and focused concentration on the present, combined with a total sense of personal control.

The prefrontal cortex, which controls analysis and metacognition, downregulates when we're in flow. This is transient hypofrontality, and it frees us from hesitation and inner criticism.

When in flow, we don't care what others think. Flow feels so easy that we always know what to do next. And flow is so rewarding that we experience intrinsic motivation — the most powerful form of motivation, where activities become inherently interesting and satisfying.

Conditions for Flow

• Knowing what to do next
• Knowing how to do it
• Freedom from distractions
• Clear and immediate feedback
• High perceived challenge and high perceived skill

Csikszentmihalyi, M.; Abuhamdeh, S., & Nakamura, J.; "Flow", in Handbook of Competence and Motivation, eds Elliot, A.J., & Dweck, C.S. (New York: Guildford Press, 2005), 598–698

How do you design experiences that cultivate this elusive, euphoric state?

Here are 3 principles, with examples of how we use them at Superhuman.

1. Make the next action obvious

Hesitation is the flow killer.

When somebody uses your product, their next action should always be obvious — and it should be obvious how to do it. Make functions visible, and limit alternative actions.

Example: When you archive an email in Superhuman, you immediately see the next one. There is minimal room for decision fatigue: you simply process one email at a time. This creates flow. When you archive an email in Gmail, you go back to the inbox. You now have to decide what to do next, and you have to do this every single time. This destroys flow.

2. Give clear and immediate feedback with no distraction

When somebody takes an action, they should get feedback instantly.

Milliseconds matter. They may not seem important, but 100 ms is the threshold where actions feel instant. If your product is slower, it will invite distraction, and then… hmm, I wonder what's happening on Twitter!

Example: When you take an action in Superhuman, the app responds in milliseconds. Initially, we aimed for 100 ms or less. We can now render an email in less than 32 ms. This removes opportunities for distraction, and creates flow.

Rapid response eliminates temporal distraction. But what about visual distraction? Dieter Rams said it best: "Good design is as little design as possible."

Look at every part of your product and ask: "If I had to remove just one thing, what would it be?" Remove it, and then do this again.

Example: In Superhuman, you can't see the inbox at the same time as a conversation. And so — very deliberately — you can't see what is next, or any new email. This creates flow. In Gmail, you see your inbox at the same time as new conversations. You are distractible by default, which destroys flow.

3. Balance high perceived challenge with high perceived skill

Now for the most delicate alchemy: users must perceive high challenge, and feel that they have the high skills to match.

We can visualize this with the Experience Fluctuation Model:

When skill exceeds challenge, we feel relaxed or bored. When challenge exceeds skill, we feel anxious or worried. You can directly affect challenge and skill with your experience design.

Example: For most people, Gmail is the left slice. Some people feel bored or apathetic: their skill is low-medium, but their email doesn’t matter. Some feel worry: their skill is low-medium, but their email does matter. Many feel anxiety: their skill is low-medium, but their email is super important — and they are failing at it!

Through 1:1 onboarding, we massively increase skill for almost everybody. But what if your email was not that hard, or you were already very skilled? If we did nothing else, you still would not achieve flow.

Well then — and this will sound crazy — we increase the challenge. We set a challenging goal: hit Inbox Zero without ever touching your mouse!  This balances challenge with skill, and once again creates flow.

This is the most counterintuitive aspect of flow. To create flow, you should sometimes make the goals of your product harder to achieve.

With these 3 principles, you can create flow for your users. Your users will feel intrinsically motivated, and your product will become inherently interesting and satisfying. To learn more, see my 7 principles of game design!