TransWikia.com

Is there a way to set a custom Steam Download speed?

Arqade Asked on May 6, 2021

My internet is 5MB/s, which is exactly one of the steam’s download speed option. The next lowest option is 3MB/s.
I.e. I can’t choose 5MB/s – it is too high since it spoils my browsing experience while steam is downloading. But 3MB/s is also not good since it is much lower than necessary. Something like 4.5MB/s would be ideal.
Is there a way to do it? A way to edit steam files may be, and to change the default options list?

4 Answers

As of October 7th, 2020, you can now specify an exact speed simply by inputting the amount you desire. Go to Steam → Settings → Downloads and in the "Download Restrictions" part of the window, check the "Limit Bandwidth to" checkbox and input the amount you wish (in KB/s). 4500 KB/s would equate to 4.5 MB/s.

enter image description here

Correct answer by Timmy Jim on May 6, 2021

I found (and slightly redacted) this solution on SuperUser, which was copied verbatim from Reddit, whence it was sourced from the Steam community:

  • Go into your Steam directory, and open the config directory [C:Program Files (x86)Steamconfig by default.]

  • Go into the config directory and open the "config.vdf" file.

  • Find the DownloadThrottleKbps setting, and set it to the desired speed (take the amount in Mb/s you want to set it to, and multiply it by 8000 - e.g. 4.5 Mb/s makes 36000).

  • Save the file, open Steam, and verify that it is working.

Make sure to set the "config.vdf" file to 'Read-only'. Steam changes the file on start-up and exiting (when set to be run as administrator).

Steam with custom download limit

Note that the file contains more settings, so customizing other settings might require the file to have the 'Read-only' flag disabled.


Works with the New Steam Library update

Answered by Joachim on May 6, 2021

Based on the answer by Joachim, I created a little Python script that sets the DownloadThrottleKbps in the config.vdf file, so you don't need to redo it manually everytime the setting gets overwritten. Recommended use: create a shortcut to the script with the bandwidth in Kbit/s as first the argument.

Example: To set a bandwidth limit of 4.5MB/s, in the shortcut's properties, edit the Target of the shortcut as: C:pathtobandwidth-limit-script.py 36000

Note 1: Close Steam before running this.

Note 2: I hardcoded the path to C:Program Files (x86)Steamconfigconfig.vdf, so change that line of code if you've installed Steam to a custom location.

Note 3: I used f-strings so you need Python 3.6 or higher.

# Set Steam download bandwidth limit (for Windows)

import argparse
from time import sleep

# Config
configpath = "C:Program Files (x86)Steamconfigconfig.vdf"
throttlestr = "DownloadThrottleKbps"

# Make the user at least see error messages when launched from a shortcut
# Please don't judge me for my lazy exceptions XD
try:
    # Parse bandwidth argument
    parser = argparse.ArgumentParser(description='Set Steam download bandwidth limit in Windows.')
    parser.add_argument('bandwidth', metavar='bandwidth', type=int, nargs=1,
            help='Bandwidth limit in Kbit/s. 0 = no limit.n
            Recommended use: create a shortcut to the script with bandwidth as first the argument.')
    args = parser.parse_args()
    bandwidth = args.bandwidth[0]

except:
    input('Press Enter to exit')
    exit()

try:
    # Open config file
    with open(configpath, 'r') as f:
        contents = f.readlines()
    
    # Find DownloadThrottleKbps line
    for n in range(len(contents)):                  # Loop over lines of config
        if throttlestr in contents[n]:              # Check for 'DownloadThrottleKbps'
            contents[n] = f'tttt"{throttlestr}"tt"{bandwidth}"n' # Replace line
            break                                   # Exit loop

    # Write new config to file file
    with open(configpath, 'w') as f:
        f.writelines(contents)

except:
    input(f'Error during file access of {configpath}nPress Enter to exit')
    exit()

print(f'Steam bandwidth limit was set to {bandwidth} Kbit/s')
sleep(1)

Answered by dedean16 on May 6, 2021

Apart from editing the config.vdf file, another option is mentioned on Reddit:

  1. Enable the Steam Console: either start Steam with the -console argument or open the link steam://open/console in your browser
  2. Click on Console which appears at the top, right next to your name.
  3. Type set_download_throttle 8000 to set the download limit to 8000Kbit/s = 1MB/s.

Answered by dedean16 on May 6, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP