⏱ How long should your game be?
How long is your game? How much time does it take to beat it?
⛔️ If it's too short you'll upset your players and get negative reviews!
🔥 If it's too long, your scope might fly out of control and you'll never ship!
So how long should your game be?
Let's talk about what I'm calling a game time ramp-up as you progress through your game.
Watch the video
The game time ramp-up
So how long should your game be? The answer, as always, is: it depends!
It especially depends on your stage of development and genre. Let's take a closer look at:
- Prototype
- Demo
- Steam minimum
- Baseline game
- Genre expectation
Prototype
It's particularly hard to nail down how long a game should be in its prototype phase. What are you trying to accomplish with this early version of your game? Are you trying to answer a question? Test a theory? Prove a concept? Just see if people like it?
I'd be wary of prototypes that fizzle out after a few minutes. Maybe there's something super engaging about the game at first, but if it can't scale to become a generous chunk of gameplay, it might not be a great concept for an entire game.
Your prototype should be able to entertain your player for at least a few minutes to prove it's a good one, shouldn't it? It doesn't have to feel like a full meal but it should at least be a hearty snack.
For that reason I'd shoot for a minimum of 5 minutes for a prototype to prove its potential.
Demo
A demo is the perfect opportunity to give your player enough, but leave 'em wanting more. My gut tells me that a demo should be at least 30 minutes long, but doesn't need to be a whole hour long.
Every game is so different it's difficult to nail down a global general demo time, but let's look at some analytics from Chris Zukowski's What is a good median play time for a demo?:
🥉 7 minutes
🥈 18 minutes
🥇 38 minutes
💎 65 minutes
Chris has organized these demo times by tier: bronze, silver, gold, and diamond. Obviously we want our game to be top-tier, but let's keep things reasonable and shoot for a solid score within the upper range.
30 minutes might be a tad too difficult for some situations, and 60+ minutes feels unnecessarily long to me. So let's say 25-45 minutes for our demos.
Steam minimum
This one's pretty straightforward. Steam famously provides a 2-hour refund window. When you buy a game on Steam you've got full access to it for 14 days or 2 hours of total gameplay, whichever comes first.
You can refund anytime within this window.
Valve will, upon request via help.steampowered.com, issue a refund for any title that is requested within 14 days of purchase and has been played for less than 2 hours (this includes online, offline and shared library playtime).
Since Steam works this way, it's best for games published on Steam to be well over that 2-hour refund window. Steam tells us exactly how long we've played our games, so when Steam players get even a whiff of an ending when approaching that 2-hour limit ... they are sometimes tempted to bail & refund the game.
If you want to simply not worry about that particular problem on Steam, your best bet is to make your game at least 2 hours long.
Baseline game
Really, this one's up to you. It depends so much on what kind of game you're making, how much you want to charge for it, and an infinite list of other things.
To help you land on a number, think about questions like:
- How long do you feel like most games should be?
- How long was the last game you played?
- How long is your favorite game?
When players complain about game length, it generally feels like the complaints are that the games are too short, doesn't it? But I've also seen some fatigue about how long games have gotten, which is likely exacerbated by the record-breaking number of new games being released.
Sometimes I'll bump into a review of a game that's similar enough to Witchmore that I've gotta check it out. This one recently mentioned the length of the game:
At only 7 hours long, I wish that Trigger Witch had more to it.
Some games feel too short at 7 hours long. Others feel too long at 3.
There's no perfect answer of course, but let's start with 5 hours as a minimum. That's long enough to completely defeat the 2-hour refund window, and long enough to put a big dent in any day of your life spent playing.
For an upper minimum (is that a thing?), let's simply double that time.
This puts a baseline "game" at around 5-10 hours long and you should be fine.
Genre expectation
Next let's talk about genre, because otherwise these numbers are laughably irrelevant to particular games.
RPGs should be really long, right? My favorites growing up included the Dragon Warrior and Final Fantasy series, where individual games would often brag about requiring 40 or more hours to complete (!).
Some games offer thousands of hours of gameplay.
But do you need all that? What about Flappy Bird? What about Tetris?
Just because I can speedrun the original Castlevania in under 15 minutes, does that somehow make it an inadequate platformer game? (Nope, it's perfect.)
Either way, it's good to know about the genre you're entering into. Players will have certain expectations and won't be happy if they're unmet.
How to find the expected time for your game's genre
- Search to find the genre on Steam
- Find the games that are reasonably similar to yours
- Read the positive reviews & note how long they played
- Read the negative reviews & note how long they played
- Use this info to get a feel for how long your game should be to get good reviews
What's nice about making a game in a genre you already play is that you have some data just by being a fan. For example, if I wanted to make a violent overhead action game like Hotline Miami, I've already got a good feel for how long my game should be.
I loved Hotline Miami and only played it for about 8 hours. There ya go. If I made a game in that genre ... that sounds doable, doesn't it? Hmmm time to pivot?!?!
Tracking & showing time played in your game
It's easy to track the elapsed time and display that information in your game. Here are a couple high-level examples of how to do it in Unity and HTML5/JavaScript.
Unity
Here's a little snapshot of what you could include in your class to accomplish this. In this example we're using a TMPro object in our scene & accessing it via timeText
. Each tick we increment timeElapsed
by Time.deltaTime
, then update the text value.
using TMPro;
public class YourTimerClass : MonoBehaviour {
[SerializeField] TextMeshProUGUI timeText;
float timeElapsed = 0f;
void Update () {
timeElapsed += Time.deltaTime;
timeText.text = $"Time elapsed: {timeElapsed}";
}
}
HTML5/JavaScript
Personally I like to use Canvas
to render my JavaScript games, so in this example I use fillText. The idea is you call the update
function as a tick (usually via requestAnimationFrame) and store the elapsed time in timeElapsed
. Then that value is drawn to the canvas. Something like:
let timeElapsed = 0;
let then = Date.now();
function update () {
const now = Date.now();
const delta = (now - then);
timeElapsed += delta;
then = now;
const timeString = `Time elapsed: ${timeElapsed}`;
yourCanvasContext.fillText(timeString, 0, 0);
}
Summary
How long should your game be? It depends! But the answer is probably somewhere between 5 minutes and 40 hours hahaha good luck have fun!
Everyone's game is different and your mileage will certainly vary, but here are those general guidelines for ya:
- Prototype (at least 5 minutes)
- Demo (25-45 minutes)
- Steam minimum (2+ hours)
- Baseline game (5-10 hours)
- Genre expectation (40+ hours)
Coming soon: an epic Q&A with game trailer expert Derek Lieu!