Your viewmodel is how your gun and hands sit on screen. A smaller, lower viewmodel shows you more of the map; a bigger one can feel better for some players. In CS2 you set it with a few console commands. Open the console with the ~ key (turn on the Developer Console in Settings > Game first).
The main commands
viewmodel_fov – how big the gun looks. Range 54 to 68. Default is 60. Most pros play at 68, which pushes the gun further away and shows more screen.
viewmodel_offset_x – left/right. Range -2.5 to 2.5. Higher moves the gun to the right.
viewmodel_offset_y – forward/back. Range -2 to 2. Higher brings the gun closer to you.
viewmodel_offset_z – up/down. Range -2 to 2. Lower moves the gun down and out of the way.
viewmodel_presetpos – quick presets: 1 = Desktop (default), 2 = Couch, 3 = Classic.
A clean "see more" setup to copy
viewmodel_fov 68
viewmodel_offset_x 2.5
viewmodel_offset_y 0
viewmodel_offset_z -1.5
viewmodel_presetpos 3
Note: if you use viewmodel_presetpos after the other lines, it overwrites your offsets. Put it first, or leave it out when you use custom values.
Left hand or right hand
Use switchhands to flip the gun to the other side, or bind it: bind "v" "switchhands". You can also set your main hand in Settings > Game > Item.
Keep it after restart
Put the lines in your autoexec.cfg (in Counter-Strike Global Offensive/game/csgo/cfg) and add +exec autoexec to your Steam launch options.
What viewmodel do you use? Post your settings below.
Source: Valve Developer Community, CS2 console commands: https://developer.valvesoftware.com/wiki/List_of_Counter-Strike_2_console_commands
— TyGaNu