Quick answer: Tension comes from the player having something to lose and feeling vulnerable to losing it—stakes plus the genuine possibility of failure. Design real stakes and genuine threat, because tension requires the player to actually feel they could lose.
Tension—the gripping feeling that keeps players on edge—comes from vulnerability: the player having something to lose and genuinely feeling they could lose it. Designing tension means creating real stakes and a genuine possibility of failure, because tension requires the player to actually feel vulnerable, not just be told the situation is dangerous.
Tension requires stakes and genuine vulnerability
Tension is built on two things: stakes (the player has something to lose) and vulnerability (they genuinely feel they could lose it). Stakes mean there's something at risk that the player cares about—progress, resources, a character, an outcome—so that failure would cost them something meaningful, because without stakes there's nothing for tension to be about. Vulnerability means the player genuinely feels they could fail and lose those stakes—a real, felt possibility of failure—because tension comes from the threat of loss being genuine, not from a danger the player knows is actually safe. Together, stakes plus genuine vulnerability create tension: the player has something to lose and really feels they might lose it, which is gripping. If either is missing—no stakes (nothing to lose) or no genuine vulnerability (the player feels safe, knows they can't really fail)—there's no tension, just going through the motions. Designing tension, then, means creating real stakes (something the player cares about losing) and genuine vulnerability (a felt, real possibility of failure), so the player is gripped by the threat of losing something that matters.
Genuine threat, not just stated danger, is what makes vulnerability felt. The crucial subtlety is that vulnerability has to be genuinely felt, which requires genuine threat rather than just stated or apparent danger. A situation described as dangerous, or that looks threatening, doesn't create tension if the player knows or senses they're actually safe—if failure isn't really possible, or the stakes aren't really at risk, the danger is theatrical and the tension hollow. Real tension requires that the threat be genuine: failure must actually be possible, the stakes must really be at risk, so the player's sense of vulnerability is grounded in a real possibility of loss. This means designing situations where the player can genuinely fail and lose the stakes, where the threat is real, so the vulnerability is felt rather than just presented. The player's intuition for whether they're really in danger is sharp—they feel the difference between genuine threat and theatrical danger—so tension can't be faked with the appearance of danger; it requires the substance of genuine, felt vulnerability to real stakes. This connects to risk-reward and fair challenge: genuine stakes and real, fair possibility of failure are what make moments tense and meaningful. Combining stakes (something the player cares about losing) and genuine vulnerability (a felt possibility of loss) with genuine threat (real, not just stated, danger so the vulnerability is felt) is what creates real tension—the gripping feeling of having something to lose and genuinely feeling you might lose it. Designing tension this way—with real stakes, genuine vulnerability, and actual threat—is what makes moments genuinely gripping, rather than the hollow theatrical danger that fails to create tension because the player doesn't actually feel they could lose. Tension is one of the most powerful tools for engagement, and it's built on the player genuinely feeling vulnerable to losing real stakes, which requires designing genuine threat and meaningful stakes rather than just the appearance of danger.
Ship it, then learn from it
No amount of internal deliberation substitutes for the information you get the moment real players touch your game. The assumptions that felt certain turn out wrong, the feature you doubted becomes the favourite, and the problem you never imagined is the one everyone hits. That feedback only exists on the other side of shipping.
So bias toward getting something real in front of real people sooner rather than later. A rough thing that's out in the world teaches you more in a week than another month of private refinement, and every release makes the next decision better informed.
Cut the feature, keep the focus
The instinct to add is far stronger than the instinct to remove, which is exactly why most games drift toward bloat rather than clarity. Every system you add has to be built, balanced, debugged, and maintained, and it competes for the player's attention with everything else. A focused game that does a few things excellently almost always beats a sprawling one that does many things adequately.
When you're tempted by one more feature, ask what it costs and what it competes with, not just what it adds. The discipline to keep a game focused is what lets the parts that matter shine, and it's usually the difference between a memorable game and a forgettable one.
The player doesn't see what you see
You know where to click, which path works, and what every system is supposed to do, because you built it — and that knowledge makes you the worst possible judge of how your game reads to someone encountering it fresh. The confusion you can't feel is exactly the confusion that costs you players.
This is why fresh eyes are so valuable and so uncomfortable: they reveal the gap between the game in your head and the game on the screen. Put your work in front of people who've never seen it, watch where they stumble, and treat that stumble as information rather than as their mistake.
Default to the boring, robust choice
It's tempting to reach for the clever, novel, or technically impressive solution, but in production the boring choice — the well-understood approach, the proven pattern, the simple implementation — is usually the one that ships and keeps working. Cleverness has a way of becoming the bug you're debugging at 2am six months later.
Save your novelty budget for the things that actually make your game distinctive, and be conservative everywhere else. A game built on robust, unremarkable foundations is one you can keep building on, while one built on clever fragility is one that fights you the whole way.
Make the common case effortless
Most of what a player does, they do over and over, and most of what you build will be exercised in a handful of common situations far more than in the edge cases. Optimising the rare and neglecting the frequent is a reliable way to make a game that's technically complete and practically annoying.
So spend your polish where the volume is: the action repeated a thousand times, the menu opened constantly, the path every player walks. Making the common case smooth and satisfying does more for how the game feels than perfecting the corners almost nobody reaches.
Tension comes from the player having real stakes and genuinely feeling vulnerable to losing them—stakes plus a felt, real possibility of failure. Design genuine threat, not just stated danger, because tension requires the player to actually feel they could lose.