CS2 FPS Command: How to Show FPS in CS2 (2026)

The quick console answer is cl_showfps 1. That brings up an FPS counter; Steam’s overlay is the alternative when you do not want to use a command. To understand a freeze rather than just display a number, turn to CS2 Telemetry. It includes frame time and the connection readings that a plain FPS counter leaves out.

FPS method pickerPick a counter for the job

For ordinary play, an FPS number may be enough. Diagnosing a stutter calls for frame times or hardware readings as well.

Cleanest counterSteam overlayOne persistent FPS number
Find a hitchCS2 TelemetryFrame delivery and connection readings together
Console optioncl_showfps 1A counter you can enable with one command
Watch the PCNVIDIA or AMDSupported readings for load, clocks, heat and latency

Every CS2 FPS Counter Method at a Glance

Play normallySteam overlay

Best when you only need one unobtrusive FPS number.

Diagnose stutterCS2 Telemetry

Separates slow rendering from ping, loss, and jitter problems.

Test hardwareDriver overlay

For hardware checks, put FPS beside the supported GPU load, clock, temperature and latency readings.

We would choose Steam or cl_showfps for a quick resolution check. But a good FPS average does not explain a brief freeze. One frame can arrive late enough to interrupt play while hardly shifting that number. Use Telemetry when that is the problem you are trying to track down.

There is no need to make two counters agree before you can use either one. They may simply average different periods. Pick one for the before-and-after readings so the comparison does not depend on that difference.

CS2 FPS counter methods compared
MethodShowsBest forConsole required
Steam Performance MonitorFPS, with optional detailed performance metricsA clean counter or broader PC monitoringNo
CS2 TelemetryFrame time, FPS, ping, network qualityDiagnosing stutter and lagNo
cl_showfpsFPS and engine information, depending on modeQuick console testingYes
NVIDIA overlayFPS plus optional PC metricsNVIDIA driver monitoringNo
AMD overlayFPS plus optional PC metricsAMD driver monitoringNo

Show FPS in CS2 via Steam Overlay

The Performance Monitor is Steam’s own overlay. Its simplest view is an FPS counter; more detailed views add other readings. All of that is configured in Steam, separate from CS2’s developer console.

  1. In the Steam client, open the top-left Steam menu and choose Settings.
  2. Select In Game and find the Performance Monitor settings.
  3. Set a position for the overlay and pick its detail level.
  4. The FPS-only level keeps the display small. Higher detail levels add the metrics your system supports.
  5. Launch or restart CS2 and check the selected corner.

Shift+Tab opens the Steam Overlay during play, including its Settings. If that shortcut produces nothing, verify the overlay is enabled both globally in Steam and in CS2’s game properties.

More detailed levels add CPU, GPU or memory readings and graphs where the hardware and OS support them. Steam can therefore cover PC monitoring as well as the basic count. For the game’s connection warnings, go to CS2 Telemetry.

Use Steam when: you want an FPS-only display or a configurable performance overlay. Use CS2 Telemetry for the game’s network diagnostics.

Show FPS via CS2 In-Game Telemetry

Low FPSCheck rendering load

Check display mode and V-Sync, followed by anti-aliasing, shadows and background applications.

Frame-time spikesLook beyond the average

A high FPS number can still feel poor when individual frames arrive unevenly.

High ping or lossUse Telemetry network data

Resolution and graphics changes do not repair a connection problem.

Always is the useful Telemetry mode during an investigation: it shows what happens before the warning, not just when a threshold is crossed. Once the problem is understood, warning-only display leaves less on screen during normal rounds.

  1. Open CS2 Settings.
  2. Select Game, then scroll to Telemetry.
  3. Set Show frame time and FPS to Always.
  4. Set Show ping to Always if you want FPS and ping together.
  5. Enable network-problem information when troubleshooting loss or jitter.
Reading the CS2 Telemetry display
Telemetry itemWhat the number meansWhat a spike suggests
Frame timeThe time required to present a frameA PC, game, driver, or background-workload hitch
Average FPSFrames presented per secondA sustained performance limit
PingHow long the network round trip takesDistance to the server, or congestion on the way
Network problemsGame ticks affected by lost, reordered or unevenly arriving dataThe connection needs a delivery-quality check

A connection warning with a steady frame-time reading is not a reason to lower shadows. Follow the network lead. With the reverse pattern, a frame-time jump and no network warning, the game, driver and work running on the PC become the useful places to investigate.

At 240 FPS with perfectly even delivery, the gap between frames is roughly 4.17 ms. A frame taking 30 ms is a substantial interruption to that rhythm, regardless of a healthy-looking average. Put the warning threshold a little above your usual frame-time range to catch such outliers.

In the basic warning, the unit being counted is an affected game tick. It is not a raw tally of reordered packets. Detailed mode supplies the raw loss and jitter readings. Always keeps them visible for diagnosis; afterward, Poor limits the clutter to reported problems.

Frame-time calculatorFPS converted to frame time

Pick a preset or enter a number. The result comes from dividing the 1,000 milliseconds in a second by that FPS value.

Frame time4.17 ms
Entered rate240 FPS
Frames per 60 Hz interval4.00
Two-frame window8.33 ms

The result is a rate conversion. Actual delivery may still be uneven; a small number here is not evidence of stable frame times.

Console quick kitCS2 commands
cl_showfps 1Turns on the basic FPS readout.Show
cl_showfps 0Turns that readout back off.Hide
fps_max 300Limits the game to a maximum of 300 FPS.Cap
fps_max 0Remove the in-game FPS ceiling.Uncap

Show FPS via Developer Console With cl_showfps

CS2 FPS and frame-cap command kit
cl_showfps 1Show the basic in-game FPS counter
cl_showfps 0Hide the basic FPS counter
fps_max 300Set a 300 FPS ceiling
fps_max 0Remove the game frame-rate cap

In Settings > Game, enable the CS2 developer console. Its assigned key is usually tilde. Once it opens, enter the following:

cl_showfps 1

Once enabled, look toward the upper-left for the readout. The off command is cl_showfps 0.

Check spelling first and leave quotation marks off the complete command. If the counter appears initially, then goes away on loading a map, search the config and any practice preset or bind. Something may be setting the value to zero after you enabled it.

cl_showfps Modes 1 to 4

For just the FPS number, keep mode 1. The other values change what is reported rather than improving that basic count.

For a rapidly changing readout, mode 2 provides smoothed FPS. Mode 3 is server milliseconds, and mode 4 adds file logging of FPS. Neither replaces Telemetry when you need frame time and connection warnings side by side.

cl_showfps values and output
CommandUsePractical guidance
cl_showfps 0Hide the counterReturns the HUD to normal
cl_showfps 1Basic real-time FPSBest simple console mode
cl_showfps 2Smoothed FPSUseful when the instant counter changes too quickly
cl_showfps 3Server millisecondsA diagnostic view, not a clean match counter
cl_showfps 4FPS with file loggingUseful for a recorded test rather than normal play

Command help: find cl_showfps displays the console entry. Check that description if the output changes after an update; an old CS:GO screenshot may no longer match.

Bind cl_showfps to a Key

This bind turns the counter on with one press and off with the next:

bind “F10” “toggle cl_showfps 0 1”

This takes over F10, including any action already bound to it. Pick a different key if you need to keep that action. Our example can be removed with unbind F10, after which you can reassign the key in keyboard settings.

Want the counter on every time you play? Skip the toggle and use an autoexec instead. A short comment beside the command will help you recognize it when editing the file later.

Keep the FPS Counter On Across Sessions

Steam and Telemetry remember your choices. To keep the console counter, add cl_showfps 1 to a CS2 autoexec file named autoexec.cfg.

A Steam launch option is the alternative. Add this line, then remove it whenever you no longer want the counter at startup:

+cl_showfps 1

The filename is an easy mistake to miss: autoexec.cfg.txt is a text document, not the required autoexec.cfg. Also look for a second cl_showfps entry that changes the value later. Keep your CS2 launch options short enough that you know what each one does.

Show FPS and Ping Together in CS2

The two displays have separate controls under Settings > Game > Telemetry. Set both frame time/FPS and ping to Always. For lost or unevenly arriving data, enable network-quality information as well; the ping number is not the whole connection report.

Do not use old net graph advice. net_graph 1 is not a valid CS2 client command. Valve deleted its earlier cq_netgraph implementation in February 2024. The name may appear on command-queue statistics, which is a different output from CS:GO’s full net graph.

FPS, frame time, ping and affected ticks sit in Telemetry, with more detail available for loss and jitter. The receive-margin graph is another timing view. Neither its name nor its appearance turns it into the former CS:GO panel.

Ping is the round-trip delay. It can stay level while packets are lost or arrive unevenly, so a steady number does not clear the connection of suspicion. Read network warnings beside frame time to see which changes when the hitch happens.

The receive-margin graph need not stay on during ordinary play. Open it for a timing investigation and close it when that work is finished.

  • Frame time jumps: check the PC and game workload.
  • Ping spike: investigate the route or server distance.
  • Network warning: investigate loss, jitter, or Wi-Fi.
  • All values stable: the hitch may need deeper capture.

Show FPS via NVIDIA or AMD Software

A driver overlay is useful when the slowdown develops over time. Put GPU load, clocks and temperature beside FPS to see what changes as performance falls. Supported latency readings can help too; unrelated sensors only make the display harder to follow.

NVIDIA App overlay

  1. Open the NVIDIA App and enable its overlay.
  2. Press Alt+Z and open Statistics.
  3. Choose FPS or a compact performance layout.
  4. Use Alt+R to toggle the statistics overlay where supported.

AMD Adrenalin overlay

  1. Open AMD Software: Adrenalin Edition.
  2. Open Performance, then Metrics.
  3. Switch on the metrics overlay, with FPS selected.
  4. Ctrl+Shift+O toggles the overlay on supported configurations.

For a missing overlay, check its enable switch first, then update the driver app and restart CS2. Keep the initial readings before changing NVIDIA settings for CS2, so there is something to compare afterward.

Do not compare an overlay’s menu reading with cl_showfps during a fight. Use the same stretch of play. Even then, different averaging periods can produce slightly different results.

After the investigation, remove the extra sensors from view. A single FPS number is much less intrusive during a round.

How to Cap Your FPS With fps_max

Frame time explains why the same FPS can feel different

A smaller millisecond figure means more frequent frames. It does not promise an even rhythm.

1000 ÷ FPS
60
16.67 ms per frame

Baseline display pace

Reference
144
6.94 ms per frame

Common high-refresh target

Faster
240
4.17 ms per frame

Competitive high-refresh target

High refresh
360
2.78 ms per frame

Very high refresh reference

Very fast

fps_max 300 is a ceiling of 300, not a request for the PC to reach that number. A machine producing 180 FPS will not gain another 120 from the command. With fps_max 0, the game’s cap is removed. Compare that uncapped run with a sustainable limit if you want to judge heat and frame delivery.

fps_max 300

Keep the map, workload and counter unchanged when comparing a CS2 FPS cap. The highest peak alone does not settle it: monitor refresh rate, delay and unusually slow frames also matter.

A fight that drops to 180 despite a 300 cap exposes the limit of that setup. Investigate the bottleneck or compare a lower ceiling. The peak from an empty map tells you little about whether the machine can sustain the target in that fight.

How to Improve Low FPS in CS2

Turning on a counter does not make the game faster. It gives you a way to judge a change: Fullscreen, V-Sync off, less anti-aliasing or a different shadow setting. Try those separately and check background applications and temperatures too. You need to know which adjustment produced the result.

  • Record the average and the slow frames; a peak alone leaves out the hitches.
  • Repeat the map, route and comparable player count for each run.
  • Keep CPU and GPU temperature readings visible through the session.
  • Leave Boost Player Contrast on, with useful dynamic shadows retained.
  • Restart CS2 after renderer or driver changes.

For CS2 FPS optimization, save your starting CS2 settings and a set of readings you can reproduce.

A note after each run will save you reconstructing the results later. A larger peak alongside new hitches is a mixed result, not a clear win. Return to the old value for another run before deciding to keep that trade.

Conclusion

Steam or cl_showfps 1 is enough for an FPS number. A hitch needs Telemetry’s frame-time and connection readings. Use a repeatable workload to judge any resulting settings change.

Frequently Asked Questions

What is the command to show FPS in CS2?

Enter cl_showfps 1 after enabling the console in Settings > Game. A zero instead of one hides the counter again. If the console does not open, check which key is assigned to it rather than assuming the command has failed.

How do I show FPS and ping together?

Open Settings > Game > Telemetry and set frame time/FPS and ping to Always. While troubleshooting lag, include network quality. Ping measures delay, whereas the extra information can expose delivery problems that a normal ping number misses.

Is net_graph still the correct CS2 command?

No. net_graph 1 belongs to CS:GO. CS2’s earlier cq_netgraph was removed when Valve introduced Telemetry in 2024. A command-queue display using that name is not the old all-in-one panel. The Telemetry menu is the replacement to use here.

How do I keep the FPS counter on every launch?

You don’t need to do anything extra for Steam or Telemetry; they remember the setting. For the console version, save cl_showfps 1 in autoexec.cfg. The alternative is +cl_showfps 1 in Steam’s launch-options field.

How do I cap FPS in CS2?

The example fps_max 300 imposes a ceiling of 300 FPS. Use your own ceiling in place of 300; fps_max 0 removes the game’s cap. Include a busy fight in the comparison with uncapped play, keeping the situation as repeatable as possible.

What FPS should I aim for?

The useful target is one the PC holds in a fight. Without a synchronized cap, aiming above the monitor’s refresh rate is a reasonable goal. A synchronization setup may instead call for a cap below refresh. In both cases, unusually slow frames deserve more attention than an empty-map peak.

Can I reach more than 300 FPS in CS2?

Yes, but a counter briefly showing 301 does not mean you will hold 300 through a match. The CPU, GPU, settings and what’s happening in the game all matter. Judge the busy rounds as well as the quiet ones.

How do I hide the FPS counter?

It depends which counter you enabled. cl_showfps 0 closes the console one. Steam’s Performance Monitor has its own switch, and Telemetry has separate display choices in CS2. NVIDIA and AMD overlays use their own shortcuts.

author avatar
William Westerlund
William brings 7 years of experience writing for multiple gaming blogs. He has more than 10,000 hours played in CS:GO (CS2) and have played around in other games such as TF2 and Rust. Through his experience playing the game at a high level and dealing with skins for many years, he provides first-hand insight into the topics covered on the Tradeit.gg blog.
For New Users
Ready to trade your next CS2 skin?

Claim a first-trade bonus instantly when you get started.

$5

First-Trade Bonus

Start Trading Now
Up To 50% Off All Skins
Table of Contents
You may also like