← All guides
Workflow / Any engine

Find a performance problem before fixing it

Record a repeatable scene, inspect a profile, and compare one change fairly.

Beginner About 30 min practiceFree guide

First Play Studios · Edition 1 · Updated November 14, 2026

WHAT YOU’LL MAKE OR LEARN

A before-and-after record for one performance experiment.

Before you start
  • A project that runs
  • Access to your engine or browser’s performance tools
In this guide
01

Choose a repeatable workload

‘It feels slow’ is a useful symptom, but it is not yet a measurement. Describe where it happens: walking past the same group of objects, opening a menu, or loading a level. Keep resolution, device, settings, and the route through the scene consistent when comparing changes.

Write down what matters to this test. A long loading pause is different from uneven frame times during movement. Average frame rate can hide occasional stalls. At a nominal 60 frames per second, the average budget is roughly 16.7 milliseconds per frame, but the appropriate goal depends on your game and target hardware.

02

Look for expensive work

A profiler helps attribute time to work such as scripting or rendering. MDN’s performance guide introduces browser measurement tools, while Godot’s debugging overview describes its profilers and runtime monitors. Use the tool for the environment you are actually measuring.

Capture the problem while reproducing it. If a visible spike coincides with creating many objects, investigate that moment. If drawing dominates, rewriting an unrelated inventory function may change nothing. Treat a profile as evidence to interpret: editor overhead, background software, and an unusually small sample can affect what you see.

03

Change one variable

Choose a reversible experiment, such as halving the number of decorative objects in a duplicate test scene. Measure the same route again. If the timing barely changes, your assumption may be wrong. If it improves, investigate which part of those objects caused the cost before removing important gameplay.

Repeat the comparison enough to see whether the difference is consistent. Also check behavior: a faster game that no longer detects collisions correctly is a regression. When possible, compare a representative exported build on the target device. An editor-only result does not prove the shipped version will perform the same way.

TRY IT YOURSELF

Keep a small performance record

  1. Write the scene, route, resolution, build type, device, and symptom.
  2. Capture a baseline and note an observed expensive area or stall.
  3. Make one reversible change and repeat the same workload.
  4. Record the difference and check gameplay. Keep the change only if the evidence supports it.

Check your result.

  • The before and after use comparable conditions.
  • You can name the measurement that changed, not only say ‘smoother.’
  • The change preserves the game behavior you intended.
Guest progress stays in this browser. This records your own practice; it does not automatically test your project.

Common mistakes to watch for.

  • Optimizing an easy-to-edit function without evidence it is expensive.
  • Comparing different scenes, devices, or graphics settings as if they were the same test.
YOUR PROJECT. YOUR OWN CHATGPT.

Keep the conversation useful.

Help me interpret this performance observation. Here are my device, build type, settings, workload, and measurements. Separate evidence from guesses. Suggest one reversible experiment and a fair before-and-after comparison, including a gameplay regression check.

Sources & version notes.

Engine-independent measurement exercise. Tool interfaces vary by version; no target-device benchmark is claimed.

Further reading from the original documentation:

Practice times are estimates. Software-specific exercises are documentation-based unless their version note says otherwise.
MAKE IT A CONVERSATION

A question or a small win?

Tell the workshop what happened when you tried this guide. Ask for a useful next step, or share something you got working.

See discussions about this guide We’ll include the guide link in your draft. Sign in to post, then add your own question or progress before sharing.
KEEP GOING

One idea leads to another.

Find a bug without changing everythingMake your first local Git checkpointKeep editable sources and game exports easy to findExplore a learning path