M mgame.gg

Counter-Strike: Source

Home Guides Servers Tools Log in

Language

All games

Fortnite Pokemon Minecraft Roblox Counter-Strike 2 Grand Theft Auto V Grand Theft Auto VI League of Legends Valorant Dota 2 Battlefield 6 Arc Raiders The Sims 4 Apex Legends Overwatch Marvel Rivals World of Warcraft PUBG: Battlegrounds EA Sports FC Rocket League Rainbow Six Siege Elden Ring Clair Obscur: Expedition 33 Baldur's Gate 3 Cyberpunk 2077 Red Dead Redemption 2 Genshin Impact Path of Exile 2 Helldivers 2 Split Fiction PEAK Terraria Stardew Valley Counter-Strike: Source Counter-Strike 1.6
← Counter-Strike: Source guides

Best Counter-Strike: Source Settings for FPS and Smooth Play

November 9, 2026 · 7 min read

On this page

Counter-Strike: Source runs on almost any PC today, so the best settings aren't about squeezing out playable frame rates. They're about steady FPS, low input delay, a clear picture and network settings that match the server. Here are the settings worth changing, what each one does, and a ready-made config.

Last checked: November 9, 2026.

Best CS:S settings at a glance

Setting Recommended Why
Resolution Your monitor's native resolution Sharpest image. The game has used native resolution by default since February 2025
Display mode Fullscreen, or the borderless window option Borderless makes alt-tabbing easier
Wait for vertical sync Off V-Sync forces frames to wait for the monitor, which adds input delay
Motion blur Off Keeps the picture clear when you turn
fps_max 300 (the default) or higher Caps your frame rate. Set it before you join a server
m_rawinput 1 Reads the mouse directly
m_filter 0 Turns off mouse smoothing
m_customaccel 0 Keeps mouse acceleration off
cl_updaterate / cl_cmdrate Match the server, usually 66 The defaults of 20 and 30 are lower than most servers allow
rate Higher than the 30000 default Lets the server send you more data per second

Video settings

Valve's February 18, 2025 update modernized the video options. It added a borderless window mode, UI scaling for high-resolution screens and a 64-bit version of the game, and made the game start at your native resolution instead of 640x480. It also brought over bicubic lightmaps and radial fog from the Half-Life 2 20th Anniversary Update.

Go through Options > Video and the Advanced video settings with these goals:

  • Resolution and aspect ratio: Use native. Lower resolutions make the image blurry on modern flat panels, and CS:S runs fast enough on current hardware that you rarely need to drop it.
  • Display mode: Fullscreen is the classic choice. The borderless window option is handy if you switch to other apps a lot.
  • Wait for vertical sync: Off. This setting matches the mat_vsync command, which forces each frame to wait for the monitor's refresh.
  • Motion blur: Off. Surf guides recommend this so fast turns stay readable, and it helps in normal rounds too.
  • High dynamic range (HDR): The matching command, mat_hdr_level, uses 0 for no HDR, 1 for LDR with bloom on HDR maps, and 2 for full HDR on HDR maps. Lower it if bright areas bother you or you need frames.
  • Model, texture and shader detail: Set these as high as your PC holds without FPS drops. Watch the FPS counter in busy moments, such as smoke-filled rounds, before you settle.

Commands that help with visibility and FPS

Command What it does
cl_showfps 1 Shows an FPS counter. Use 2 for a smoothed reading
net_graph 1 Shows FPS, ping and packet loss in one graph
fps_max 300 Frame rate limit. It can't be changed while you're connected to a server
mat_queue_mode 2 Turns on queued multithreaded rendering. Test it with the FPS counter
cl_minmodels 1 Uses one player model for each team, so every enemy looks the same
cl_ragdoll_physics_enable 0 Turns off ragdoll physics on dead bodies

Launch options

Launch options change how the game starts. To set them in Steam:

  1. Right-click Counter-Strike: Source in your library and choose Properties.
  2. On the General tab, find the Launch Options box.
  3. Type the options, separated by spaces, and close the window.

Useful Source engine launch options:

Option What it does
-novid Skips the Valve intro video for faster startup
-console Opens the developer console when the game starts
-w 1920 -h 1080 Forces a resolution (width and height in pixels)
-freq 144 Forces a refresh rate in Hz
-fullscreen Starts in fullscreen
-windowed Starts in a window
-noborder With -windowed, removes the window border for borderless fullscreen
+exec name.cfg Runs a config file at startup
-dxlevel 90 Forces a DirectX level. Launch once, then remove it

A good everyday set is -novid -console. Use the in-game menu for resolution and display mode when you can, because forcing them through launch options can pick a video mode the game doesn't prefer.

Mouse settings

  • sensitivity sets your mouse speed. The menu slider changes the same value. Pick a number you can stick with.
  • m_rawinput 1 uses Raw Input for the mouse, reading it directly instead of going through Windows. It's off by default in CS:S, so turn it on.
  • m_filter 0 keeps mouse filtering off. Filtering averages your mouse movement over two frames, which smooths it but also delays it.
  • m_customaccel 0 keeps the game's custom mouse acceleration off, so the same hand movement always turns you the same amount.
  • zoom_sensitivity_ratio scales your sensitivity while zoomed in with a scope. The default is 1.

Also turn off Enhance pointer precision in Windows mouse settings if you don't use raw input, since it adds acceleration.

Network settings (rates)

Rates control how much data flows between you and the server. CS:S ships with conservative client defaults, so most players should raise them.

Command What it does Default
cl_updaterate Updates per second you request from the server 20
cl_cmdrate Command packets per second you send to the server 30
rate Maximum bytes per second you can receive 30000
cl_interp_ratio Interpolation amount. The final delay is cl_interp_ratio divided by cl_updaterate 2
cl_interp Manual interpolation. Leave it at 0 so the ratio decides 0

How to set them:

  • Match the server's tickrate. A default server caps both cl_updaterate and cl_cmdrate at 66 through sv_maxupdaterate and sv_maxcmdrate, so use 66 for normal servers. Many surf and bhop servers advertise 100 tick in their names, and a few advertise 128. Use 100 on those, which is the highest value cl_cmdrate accepts. The server won't send more updates than its own limit.
  • Raise rate. The 30000 default can limit busy servers. Servers set their own limits with sv_minrate and sv_maxrate, and sv_maxrate 0 means no limit, so a value such as 80000 or higher is reasonable on a modern connection.
  • Keep cl_interp_ratio at 2 unless your connection is clean. At 66 updates per second, a ratio of 2 adds about 30 ms of interpolation, and a ratio of 1 about 15 ms. Lower shows players closer to where they really are, but packet loss makes them jitter.

Check the result with net_graph 1 while you play. You can find servers and their tickrates in our CS:S server finder.

Save your settings in an autoexec

Menu changes are stored in config.cfg, in the cstrike/cfg folder inside the game's install folder. To find it, right-click the game in Steam, choose Manage, then Browse local files.

To keep your own settings no matter what, create a file called autoexec.cfg in that same cfg folder. The game runs it automatically every time it starts. A starting point:

// cstrike/cfg/autoexec.cfg
fps_max 300
m_rawinput 1
m_filter 0
m_customaccel 0
cl_updaterate 66
cl_cmdrate 66
cl_interp 0
cl_interp_ratio 2
rate 80000

Change the two 66 values to 100 if you mostly play on 100-tick servers. To save whatever you've set in the console back to config.cfg, type host_writeconfig. For more commands and binds, see our CS:S console commands guide.

Frequently asked questions

What are the best settings for Counter-Strike: Source?

Play at native resolution with V-Sync and motion blur off, turn on raw input with m_rawinput 1, and turn off mouse filtering and acceleration. Then set cl_updaterate and cl_cmdrate to match the server's tickrate, usually 66, and raise rate above its default.

How do I get more FPS in CS:S?

Turn off V-Sync, lower shader, shadow and model detail, and try mat_queue_mode 2 for multithreaded rendering. Check fps_max, which defaults to 300, and use cl_showfps 1 to compare settings in busy rounds.

What should cl_updaterate and cl_cmdrate be in CS:S?

Set both to the server's tickrate. That's 66 on most servers, because a default server caps both at 66, and 100 on servers that advertise 100 or 128 tick. The game's own defaults of 20 and 30 are lower than most servers allow.

What are good launch options for CS:S?

-novid -console is a good everyday set. It skips the intro video and opens the console at startup. Add -w and -h only if the game won't pick the right resolution on its own.

Where is the CS:S config file?

Your settings are saved in config.cfg, in the cstrike/cfg folder of the game's install folder. Use Steam's Browse local files option to open it, and put your own commands in an autoexec.cfg in the same folder.

Does Counter-Strike: Source support 64-bit?

Yes. Since the February 18, 2025 update, CS:S starts its 64-bit version automatically on a 64-bit operating system. The same update added a borderless window option and UI scaling.

More Counter-Strike: Source guides