Redditor VolsAndJezuz posted a great in-depth analysis of improving your CS:GO sound settings. Take a look:
Sound issues? Consider getting a new CS:GO headset.
The settings discussed here are in regards to playing CS:GO’s sound in a simple stereo arrangement (headphones, 2.0 or 2.1 speakers). I won’t go into it here, but trying to set up ‘surround sound’ through headphones, which always have only left and right drivers, is a bad idea in my opinion [edit: see comment section for some discussion]. Let’s start off with how the Windows sound settings and sound driver settings should be set up for CS:GO.
First go into the sound control panel settings in Windows. You’ll want to configure the playback device that you use for CS:GO as a stereo, full-range setup like this  . Then you’ll want to go into the playback device properties to disable exclusive mode and set the default format to the same sample rate and bit depth as the CS:GO audio files likethis  .
Now you need to check your sound driver settings. In general, you want to turn any digital enhancements and effectsoff, because they increase the processing time and degrade the positional and dynamic audio integrity. Because the exact process and settings depend on your specific hardware and driver version, I can’t really show useful step-by-step instructions, but I will provide my driver settings as an example  , with indications where I have disabled the digital effects options and selected input/output as 2 channels (stereo). If you find yourself wanting to use a modified EQ to make the game ‘sound right’, this is an indication that you need to upgrade your sound card and/or headphones.
Now let’s move on to some of the commands that take a little less discussion.
- dsp_enhance_stereo is supposed to ‘enhance the stereo effect’ for a slight performance hit when set to “1”. In general, because digital effects that emulate stereo mixing are a bad idea as they to alter the apparent left-right positioning of sounds, and because it took extra CPU workload, I would set it to “0”. But in some limited testing I did before writing this, I couldn’t tell any appreciable difference between the two settings, so I suspect Valve has made them the same so that one does not offer a competitive advantage.
- snd_mixahead is the length of the sound buffer in seconds, so 0.05 is 50ms (0.10, 100ms is the default). This is essentially the audio delay, so reducing it gives better synchronization. Not all hardware can handle this low of a buffer setting though, so if you hear any crackling or pops at 0.05, increase this setting by 0.01 until the crackling/pops disappear.
The volume settings are based on your personal preference. You can control the overall volume through whatever combination of CS:GO/Windows/driver settings you want, it doesn’t really matter.
- In general, the in-game music is a distraction. However, I find it useful to have snd_roundend_volume on very low, as it provides a very good estimate of whether or not you have time for a 5- or 10-second defuse. The timing varies depending on the music kit or lack thereof, so you have to get used to the timing of whatever you’re using. With my kit (MOLOTOV by Ki:Theory) for instance, I know that if the music has started, there’s not enough time for a full 10-second defuse, and a 5-second defuse needs to be started shortly after the music starts. Similarly, snd_tensecondwarning_volume can be a useful reminder that the round timer is ending, so it’s time to hide if you’re a CT or hunt kills if you’re a T and you can’t plant the bomb immediately. If you like having music on in the main menu, then change snd_menumusic_volume.
- voice_scale is personal preference, and is a scale for how loud comms are compared to game sound with “0” being inaudible and “1” being full volume. I provided “0.3” as a guideline for what I prefer, though sometimes I have to adjust it higher in console if people’s mics are quiet, or lower if someone is particularly obnoxious/distracting or has an overly loud mic.
- snd_mute_losefocus is whether or not you want to be able to still hear CS:GO’s sound while alt-tabbed. “0” is if you want to still be able to hear the sound, “1” if not.
The rest of my recommendations require more discussion. Rather than jump right into my recommended settings, I think it is more useful to first discuss other commonly recommended values to get an understanding of what these variables accomplish and why the popular settings suck. Note that windows_speaker_config indicates the output format, with “1” being Headphones and “4” being 2 Speakers. Previously, 2 Speakers had lower ambient noise volume than Headphones, but as far as I can tell the two are now identical. So I provide headphone settings as “1” and 2.0/2.1 speakers as “4”. Images of the graphs from snd_debug_panlaw “1” are shown for each situation. First, a situation representative of the default:
// NON-RECOMMENDED HEADPHONES SETTINGS
- snd_front_headphone_position and snd_rear_headphone_position are the positioning of the ‘virtual speakers’, or more simply, the degrees over which left and right channel sounds will vary according to thesnd_debug_panlaw “1” graph (more on this later). “90.0” settings give the widest and most accurate static stereo positioning, with left and right channel levels spread over the entire 360 degrees around you. But this wide stereo image also means that facing towards a sound won’t help you pinpoint its location.
- snd_headphone_pan_exponent is the relative volume of middle sound versus side sound. “1.0” means that sounds in the middle of your screen and sounds on the sides will be the same volume. While this gives the most accurate perception of sound distance regardless of which way you are facing, far away noises can be much more difficult to hear or locate.
- snd_headphone_pan_radial_weight affects how the left-right volumes change. “0.0” is a linear change, while increasing this value makes the change more sigmoidal . “0.0” gives the most accurate left-right positioning of sounds, but again means that facing towards a sound won’t help you pinpoint its location. Overall, this means that these settings have superior stereo accuracy for getting a general idea of a sound’s source, but poor precision for narrowing down the exact location.
Next, I’ll discuss the pros and cons of the most commonly recommended settings I see. While they certainly provide enhanced ability to pinpoint left-right positioning of sounds you are facing directly towards, they also completely ruin the stereo positioning and sound distance accuracy otherwise.
// NON-RECOMMENDED HEADPHONES SETTINGS
- snd_headphone_pan_exponent “2.0” definitely makes sounds you are facing towards louder, as you can see from the image, so you hear faint, distant sounds in the middle much better. But it also makes everything sound much closer than it is when you’re facing it, which screws up your perception of how far away sounds are. For instance, if there are two AKs firing the same distance away from you, one directly in front of you and one to the left or right, the left/right one will sound like it’s much farther away. Furthermore, having the middle and side volume so drastically different can further throw off depth perception while turning. For instance, if you hear someone firing a Tec-9 and turn towards it, it will sound like they are getting closer to you even if they are standing still. It’s a common misconception that this setting affects the relative volume of front and rear sound, this setting has nothing to do with that. There’s no way to affect the volume of front versus rear sound without commands that require a cheat-enabled server.
- snd_front_headphone_position and snd_rear_headphone_position have the same effect here (note the virtual speakers, as marked in yellow and cyan in the image, are all 45 degrees from horizontal). It’s another common misconception that this setting affects the relative volume of front and rear sound. More on this in my recommended headphones settings, but for these settings, the effect is that the panning curve from the image is only spread over a 90 degree cone directly in-front and directly behind you, giving a narrower stereo image. While this makes it easier to pinpoint sounds within these 90 degree cones, as left/right changes occur faster in these narrow cones, it also means that you have 90 degree ‘blind’ spots on your left and right (shaded grey in the image) where all sound in the left 90 degree cone will be 100% in the left channel and all sound in the right 90 degree cone will be 100% in the right channel.
- snd_headphone_pan_radial_weight “2.0” makes the left/right sound change more sigmoidal and steeper within the 90 degree front/back cones, as you can see in the image. While this again makes it extremely easy to tell if something you are looking directly at is moving left or right (these settings are king for 1v1 situations where the opponent has to make sound), it also further degrades the accuracy of stereo positioning. The change in left/right volume is very rapid near the middle, so it makes the already narrow stereo image even narrower and non-linear. Consider trying to keep track of sounds from enemies at multiple locations around you. Only the sounds from near the center of your screen or directly behind it can be accurately located, while those even slightly off-center or to the sides will basically sound 100% panned left or right.
Now we can finally get to the headphones settings I do recommend. The point of my settings is that they are acompromise between the previous two extremes, imo providing the benefits of both while avoiding their shortcomings. The “xx.x” value depends on your resolution, with values given for common resolutions.
// RECOMMENDED HEADPHONES SETTINGS
xx.x = 43.2 (5:4 resolution), 45.0 (4:3 resolution), 50.2 (16:10 resolution), or 53.2 (16:9 resolution)
- snd_headphone_pan_exponent “1.2” is a compromise between the default “1.0” and the oft-quoted “2.0”. You get the benefit of the latter with less of a drawback, in that distant middle sounds are louder, but not so much so that it makes it difficult to distinguish distances in the short- to medium-range.
- snd_headphone_pan_radial_weight “0.5” is a compromise between the full-width accuracy of “0.0” and the ability to pinpoint sounds you are facing directly with “2.0”. While the effect is less drastic than with “2.0”, it also doesn’t have the negative effect of drastically degrading the stereo positional accuracy of sounds away from where you are directly staring. Furthermore, “0.5” gives a sharper final drop-off of the lower channel as it goes to 0 volume, which is a very noticeable effect as hearing sound 100% on one side is very distinctive (and kind of strange).
- snd_front_headphone_position “xx.x”, with the image showing an example 16:9 resolution value of “53.2”, positions the virtual speakers right outside your horizontal field-of-view (which changes with resolution). Thus, sounds in the front will be panned across your field of view. If a sound is 100% right, you’ll know that the sound is coming from front-right just outside your FOV (shaded grey in the image) and turning towards it will help quickly pinpoint its location. The effective ‘blind’ spots from the front and rear are thus only a combined 73.6 degrees with the 16:9 resolution settings here, as compared to a combined 180.0 degrees in the second non-recommended settings.
- snd_rear_headphone_position “90.0” has a few subtle advantages. The only real con is that the front and rear stereo widths are not equal. However, “90.0” allows you to completely eliminate ‘blind’ spots in the rear. Because you will want to turn and face sounds that you are trying to pinpoint, the wider stereo image is preferable in the rear and also helps distinguish front versus rear sound in many situations due to their different stereo width. Consider the situation where you are hearing sounds from several different locations at once. With some experience using these settings, it becomes intuitive from turning even just a slight amount to distinguish where the sounds are coming from left-to-right and front versus rear. This is because the front sounds will pan left/right much quicker than the rear sounds.
Finally, if you’re like me, you use both speakers and headphones for CS:GO. Headphones for comp, but often times speakers for warming up and DM because it’s annoying and more fatiguing on the ears to always use headphones. The purpose of these settings is to make the speakers sound as similar as possible to the headphones settings I provided. In-game, trying to switch between windows_speaker_config “4” and “1” doesn’t seem to work, and you instead have to change the between 2 Speakers and Headphones in the CS:GO audio settings menu to get the sound engine to restart. Similar to “xx.x”, “yy.y” is dependent on your resolution and also the angle of your speakers from center-line, theta  , which you can estimate or use measure and use the formula in the picture.
// RECOMMENDED 2.0/2.1 SPEAKERS SETTINGS
yy.y = (xx.x / 90 – 1) * theta [RES ignored duplicate link] + 90
xx.x = 43.2 (5:4 resolution), 45.0 (4:3 resolution), 50.2 (16:10 resolution), or 53.2 (16:9 resolution)
Image – 16:9 resolution, speakers 60 degrees off center 
- snd_front_stereo_speaker_position as shown in the example image is 65.5, as calculated with the example 16:9 resolution and example 60 degree angle of speakers from center-line. Since speakers are normally arranged at a shallower angle than the 90 degree position of headphones, the front virtual speaker position is adjusted proportionally in an attempt to give the same apparent stereo width as with the recommended headphones settings.
- snd_stereo_speaker_pan_exponent is increased slightly versus headphones settings because of complications with human perception and cancellation that occurs in the middle when the sound waves from the two speakers interact (which doesn’t happen with headphones obviously).
[edit: tl;dr intentionally not provided because there are several settings that depend on your other game settings or personal preference, so if you want to try out my recommendations, you need to go through and figure out which ones you want to use. Also this wasn’t really meant to be a list of optimal settings. It was intended more as information that hopefully helps explain what the more convoluted sound variables do and recommendations as to what I personally use, as a starting point for you to experiment in game with them and figure out settings to best suit your personal preferences, play style, hardware, etc.]
Source and credit: VolsAndJezuz at Reddit