Oct 4, 2026 · @Razz

The 6-Section
GDD Template

Fill in these 6 sections before you write a single line of code. This is the same structure I've used on 800+ Unity projects, and it has saved more games than any technical skill I have.

How to use it

Make a copy, replace every [bracketed] prompt with your own answer, and delete the example lines. If you can't fill a section, that's not a gap in the document — it's a gap in the game. Solve it now, while it's cheap.

00

Project meta

Field Your answer
Game title[Working title]
Genre[e.g. casual puzzle, endless runner, idle tycoon]
Platforms[iOS / Android / PC / WebGL]
Target player[Who plays this, and where — commute, couch, desk]
Session length[e.g. 2–5 minutes]
Engine & version[e.g. Unity 2022.3 LTS]
Document version[v1.0 – date]
01

Core loop in one sentence

If you can't describe what the player does every 30 seconds in one sentence, the game isn't designed yet. Every feature later in this document must serve this loop.

Formula

The player [action] to earn [reward], which they spend on [upgrade], so they can [harder or bigger action].

Your core loop

[Write it here — one sentence, no commas allowed if you can manage it]

Example

The player completes jigsaw levels to earn coins, which they spend on hints and new puzzle packs, so they can tackle bigger, harder puzzles.

Answer these before moving on

02

Feature list with priorities

List every feature, then rank it honestly. Scope creep starts when nobody wrote down what was optional.

P0 — Must ship

The game doesn't work without it.

P1 — Should ship

Big impact, but launch can happen without it.

P2 — Nice to have

Post-launch update material.

Feature Priority Serves the core loop how? Est. days
[e.g. Level select screen] P0 [Player picks next challenge] [2]
[e.g. Daily reward] P1 [Brings player back tomorrow] [1]
[e.g. Leaderboards] P2 [Social competition] [3]
[Feature] [P0/P1/P2] [ ] [ ]
[Feature] [P0/P1/P2] [ ] [ ]

Rule of thumb: if more than 40% of your list is P0, you're lying to yourself. Cut again.

03

Item counts and upgrade formulas

Write down exact numbers. “Some levels and a few characters” can't be estimated, built or balanced. “60 levels, 6 characters, 10 upgrade tiers” can.

Content type Count at launch Count post-launch Notes
Levels / stages [e.g. 60] [+20 per update] [e.g. 5 worlds × 12 levels]
Characters / vehicles [ ] [ ] [Free vs. paid split]
Upgrades / tiers [ ] [ ] [ ]
Currencies [e.g. 2 — coins + gems] [ ] [Soft vs. hard]
Enemies / obstacles [ ] [ ] [ ]

Upgrade cost formula — define it now, tune it later

Costn = BaseCost × Multipliern−1

Your values: BaseCost = [e.g. 100 coins] · Multiplier = [e.g. 1.15] · Max level = [e.g. 20]

Earn-rate check: average coins per session = [ ] → sessions needed for the next upgrade = [ ]. If the answer is more than 3–4 sessions early on, players will quit before they feel progress.

04

Monetization architecture

Monetization bolted on after launch kills retention. Design it here, alongside the loop, so ads and purchases feel like part of the game.

Placement Ad / IAP type Trigger Frequency cap Player benefit
After level complete Interstitial [Level won] [e.g. every 2–3 levels] —
Loss / fail screen Rewarded video (opt-in) [Player chooses “Watch to continue”] [ ] [Extra life / continue]
Hint button Rewarded video (opt-in) [Player taps hint] [ ] [Free hint]
Main menu Banner [Menu open] Menus only — never in gameplay —
Shop IAP [ ] — [e.g. Remove ads, coin packs]

Three rules that protect retention

  1. Interstitials only at natural breaks — after a level ends, never mid-play.
  2. Rewarded ads are always the player's choice. “Watch to continue” converts far better than forced ads.
  3. Banners stay on menus. A banner over gameplay costs you more in churn than it earns.

Your revenue model

[Ads only / IAP only / Hybrid] — Why: [ ]

05

Screen wireframes

List every screen and sketch it — paper, Figma, anything. Boxes and labels are enough. Every screen you forget here becomes a surprise in week 6.

Screen Key elements (buttons, info shown) Leads to Wireframe link
Splash / loading [Logo, progress bar] Main menu [link]
Main menu [Play, Shop, Settings, banner slot] Level select, Shop, Settings [link]
Level select [ ] Gameplay [link]
Gameplay HUD [Score, timer, pause, hint] Pause, Win, Lose [link]
Win screen [Stars, reward, next level] Next level, Main menu [link]
Lose screen [Retry, “Watch to continue”] Gameplay, Main menu [link]
Shop [ ] Main menu [link]
Settings [Music, SFX, language, restore purchases] Main menu [link]

Check: can a player reach every screen and get back to the main menu? Trace each path once before development starts.

06

Budget breakdown by milestone

Split the project into milestones that each end with something playable. Pay and review per milestone — it keeps both sides honest and catches problems while they're cheap.

Milestone Deliverable (playable) Duration Budget Acceptance criteria
M1 — Prototype [Core loop playable with placeholder art] [e.g. 2 weeks] [ ] [Loop is fun in a 2-minute test]
M2 — Vertical slice [1 world/level set at final quality] [ ] [ ] [ ]
M3 — Content complete [All P0 features + all launch content] [ ] [ ] [ ]
M4 — Monetization + polish [Ads, IAP, UI polish, sounds] [ ] [ ] [ ]
M5 — Launch [Store builds, bug fixes, submission] [ ] [ ] [ ]
Total [ ] [ ]

Buffer: add 15–20% to the total for the things nobody planned for. Something always comes up.

Before you write code

All ticked? Now open Unity.