How do I show the FPS counter in MSFS 2024 and 2020?
Show the MSFS 2024 or 2020 FPS counter on PC, fix a missing overlay, and understand MainThread, GPU, frame time and generated FPS.
On PC, enable Developer Mode in Microsoft Flight Simulator 2024 or 2020, then open the developer toolbar and select Display FPS: Debug > Display FPS in MSFS 2024, or Options > Display FPS in MSFS 2020. The native overlay shows FPS, frame time and whether the MainThread or GPU is limiting performance.
The Developer Mode FPS counter is not available in the Xbox or PlayStation console editions. Console players need to rely on any performance information provided by their display, although that may show the output refresh rate rather than the simulator's true rendered FPS.
How to show the FPS counter in MSFS 2024 and MSFS 2020
Both PC versions use Developer Mode, but the setting and Display FPS command sit in different menus.
- Open the developer setting. In MSFS 2024, go to
Settings > Advanced Options. In MSFS 2020, openOptions > General Options > Developers. - Enable Developer Mode. Set the option to On, then apply or save the change if prompted. Our detailed MSFS 2024 Developer Mode instructions explain the toolbar and its other controls.
- Return to the simulator. Load or resume a flight. If the developer menu is not visible, move the pointer to the top edge of the screen.
- Open the FPS display. In MSFS 2024, select
Debug > Display FPS. In MSFS 2020, selectOptions > Display FPS. - Hide it when finished. Select Display FPS again, then turn off Developer Mode if you no longer need the diagnostic tools.
There is no default one-key shortcut for the built-in counter. If the simulator is using another interface language, the labels may be translated, but the menu hierarchy remains the same.
Developer Mode is a diagnostic state rather than a simple visual setting. In MSFS 2020, logbook or achievement tracking can be suspended while it is active, so disable it before a flight you expect the simulator to record.
Can I display FPS on Xbox or PlayStation?
The native MSFS Developer Mode FPS display is PC-only.
- Xbox Series X|S: neither MSFS 2024 nor MSFS 2020 exposes the PC developer toolbar and its Display FPS panel.
- PlayStation 5 and PS5 Pro: MSFS 2024 does not expose the PC developer overlay. MSFS 2020 was never released on PlayStation.
- Television or monitor readouts: these may report the HDMI signal rate or variable-refresh rate rather than the number of frames rendered by MSFS. They also cannot identify a MainThread or GPU bottleneck.
Why is the MSFS FPS counter not showing?
A missing FPS panel normally means Developer Mode was not applied, the wrong version-specific submenu was opened or MSFS is running on a console.
- No developer menu bar: confirm that Developer Mode remains On, return to the flight and move the pointer to the top edge. Reload the flight or restart MSFS if the toolbar still fails to appear.
- No Display FPS command: look under
Debugin MSFS 2024 andOptionsin MSFS 2020. This is a common mistake when moving between the two versions. - The panel is ticked but not visible: close full-screen settings, marketplace or activity windows and return to the rendered flight. The diagnostic panel may not be drawn over every simulator screen.
- The reading changes wildly after loading: allow the aircraft, scenery, traffic and cockpit displays to initialise before treating the number as representative.
- You are on Xbox or PlayStation: the setting is absent by design; restarting or attaching a keyboard will not unlock the PC developer tools.
What do MainThread, GPU and frame time mean?
The limiting label identifies the part of the rendering pipeline taking longest to prepare a frame, while frame time shows how long each frame takes.
| FPS display reading | Meaning | What to check first |
|---|---|---|
| FPS | Frames rendered per second | Watch the sustained reading and frame-time stability, not a momentary maximum |
| Frame time | Milliseconds required to produce a frame | Lower and steadier is better; repeated spikes cause visible stutter |
| Limited by MainThread | The main CPU simulation thread is taking longest | Terrain and Objects LOD, traffic, detailed airports, aircraft systems and cockpit displays |
| Limited by GPU | The graphics card is taking longest | Resolution, render scaling, clouds, anti-aliasing, shadows and reflections |
| RdrThread | A rendering-submission thread is the immediate limit | Complex scenes, draw-call load and settings that add large numbers of visible objects |
| CoherentGT or Manipulators | Interface, cockpit-display or interaction work is delaying the frame | Toolbar windows, pop-out instruments, glass displays and active pointer interaction |
The exact secondary labels can vary between simulator builds. Diagnose a label only when it remains dominant during normal flying; brief changes while switching views or loading scenery are expected.
What does Limited by MainThread mean?
Limited by MainThread means the main CPU thread cannot prepare frames as quickly as the rest of the system can process them.
Total CPU utilisation may still look modest because one heavily loaded logical processor can hold back the simulation. Reduce Terrain Level of Detail first, then test Objects LOD, road and airport vehicles, ships, AI or live traffic, and glass-cockpit workload. Lowering resolution usually does little for a genuine MainThread limit.
What does Limited by GPU mean?
Limited by GPU means the graphics card takes longer than the CPU to finish each frame.
Test a lower render scale or output resolution first, followed by clouds, anti-aliasing, shadows, reflections and ambient occlusion. If graphics memory is close to its available capacity, high-resolution textures, detailed aircraft and scenery add-ons can also cause stuttering and unstable frame times.
CPU and GPU work overlaps, so their displayed times should not be added together. The slower stage generally controls the delivered frame rate, although a frame cap can leave part of the pipeline deliberately waiting.
Is there an MSFS 2024 FPS calculator?
No hardware-based calculator can reliably predict MSFS 2024 FPS, but frame time and FPS can be converted with a simple formula: FPS ≈ 1000 ÷ frame time in milliseconds.
| Target frame rate | Equivalent frame time |
|---|---|
| 30 FPS | Approximately 33.3 ms |
| 40 FPS | 25 ms |
| 50 FPS | 20 ms |
| 60 FPS | Approximately 16.7 ms |
The reverse formula is frame time ≈ 1000 ÷ FPS. This conversion does not predict how a processor, graphics card or add-on will perform; airport complexity, aircraft systems, traffic, weather and camera view can all change the result.
What FPS should I aim for in MSFS?
A stable frame rate with even frame pacing is more useful than a higher average interrupted by regular spikes.
- 30 FPS: practical for slower flying when frame delivery remains consistent.
- 40 FPS: a useful target with a compatible variable-refresh display or a suitable frame-generation setup.
- 60 FPS: gives smoother camera movement and control response but requires considerably more CPU and GPU headroom.
- VR: use a target compatible with the headset's refresh, reprojection and motion-smoothing mode rather than applying desktop figures directly.
Why does another FPS counter show a different number?
Different counters can disagree because they measure different points in the rendering and display process.
Frame generation is the most common cause. An external overlay may count generated or presented frames, while the Developer Mode panel can describe the simulator's underlying rendering workload. Generated output may therefore look smoother without reducing MainThread frame time. Our frame-generation setup guide explains the requirements and the difference between rendered and generated frames.
Averaging periods, V-Sync and external frame caps also affect the number. If MSFS is held at exactly 30, 40 or 60 FPS, the bottleneck label becomes less decisive because the pipeline may simply be waiting for the cap. Temporarily remove the cap when diagnosing performance, then restore it for normal flying.
Can I show FPS without Developer Mode?
Yes; a Windows, graphics-driver or PC platform overlay can provide a simpler FPS counter without enabling MSFS Developer Mode.
Press Win+G, open the Performance widget, enable its FPS reading and pin it over the simulator. The first use may request additional permission or a restart. A graphics-driver overlay or the counter supplied by your PC platform client can serve the same purpose.
Choose the native MSFS panel when you need MainThread, GPU and frame-time diagnostics. Choose an external overlay when you only need a compact FPS figure, want Developer Mode disabled or need to check presented frames. Our comparison of flight-simulator FPS counter options covers these alternatives and their limitations.
How should I test an MSFS performance change?
A useful comparison keeps the flight repeatable and changes only one setting at a time.
- Choose a demanding scene. Keep the aircraft, airport, runway position, weather, time and camera view unchanged.
- Let the scene settle. Wait for aircraft initialisation, scenery streaming and cockpit displays to finish their initial work.
- Observe more than the average. Record FPS, frame time and the persistent MainThread or GPU limiter. Check for repeated spikes.
- Change one setting. Several simultaneous changes make it impossible to identify which one helped.
- Repeat the same view. Compare the parked cockpit and an external view separately because they often expose different bottlenecks.
- Retest an arrival. Good cruise performance does not guarantee smooth operation near a detailed airport with traffic and complex scenery.
For a controlled baseline, use our repeatable Microsoft Flight Simulator benchmarking method rather than comparing unrelated flights or main-menu readings.