Steam – Why is the Steam Client acting so slow

steam

So yesterday i downloaded and installed Steam to do some tests on moving the games off it onto my offline PC (for when The Legend of Heroes: Trails in the Sky the 3rd comes out) and I brought Original War and Commandos (the Bundle which has the first 4 proper games).

One thing I noticed was that Steam was slow as hell, not the internet speed (as Original War being ~1.3GB took 20 minutes to download) but the Steam Client itself. If I hovered over a menu option it would take 5-10 seconds before it would highlight and about that long to do what it would do after I click. Likewise when going into a text box to type in my username and password where I have to wait a few seconds for 8 characters to appear. When I try moving the window I click and drag the title bar but it doesn't follow and it can take more than 10s for the window to catch up to the cursor.

As I said this isn't an internet connection problem as at the same time I was on the internet (looking up where the Steam Games get downloaded to) and also about 20 minutes to download over 1GB is a new record for my laptop regarding something that isn't a torrent. I also know my laptop wasn't slow itself because Chrome and Explore was working just fine.

My laptop was a Windows 8 Laptop which got force upgraded to 10 but even then the Steam Client shouldn't be doing this; it's worse than how Minecraft plays on my laptop (which is quite poor – there is lag even on low settings) yet the Minecraft Launcher works just fine.

So why is my Steam Client acting so slow?

Best Answer

The fix I've found is to Clear the Steam application's Web Browser Cache.


I had this issue for a very long time. A previous workaround was to opt in to (or out of) the Steam client Beta. Only recently did I figure out the more targeted fix of clearing the cache.

Take note, this process and the fix I'm using may not work for everyone - and the batch script I made applies to Windows only. This is certainly adaptable to other systems, though I've never had this issue on macOS or Linux.


Manual in-app temporary fix

This will help confirm whether or not this is the cause of the slowness. It does of course require some patience:

  • From the tray icon: Right-click -> Settings; OR in the main client window menus: Steam -> Settings
  • In the Settings window that pops up, choose "Web Browser", usually toward the bottom left.
  • On that page, click the [ DELETE WEB BROWSER CACHE ] button.

The automated workaround:

For my desktop, I have replaced Steam's autostart with a task-scheduled batch script for two reasons:

  • The script clears the cache before launching Steam (this problem)
  • Task Scheduler allows you to delay tasks until after Network is operational (less chance of network/logon issues)

Script content. Notes below:

@echo off
TITLE CLEAR STEAM WEB CACHE BEFORE LAUNCHING
rmdir /s /q "%USERPROFILE%\AppData\Local\Steam\htmlcache"
mkdir "%USERPROFILE%\AppData\Local\Steam\htmlcache"

start C:\Steam\Steam.exe -nobigpicture
  • You can adjust the path appropriately depending on where Steam is installed
  • Other answers and articles mention other System paths - but I have confirmed via Process Monitor (from SysInternals) that the path I'm deleting is the only one that Steam itself clears. If someone has evidence otherwise, please let me know so I can add paths as appropriate.
  • I launch with the -nobigpicture parameter because, without it, Steam sometimes launches in "Big Picture" mode just because I have a controller attached. This parameter is optional.

Note that I have given up on finding a "proper" fix for this bug. Rather than clearing out the cache I now use a ramdisk for the affected folders.

In case these clues help another person trying to figure it out, best I can tell this is a bug in the browser back-end:

  • There is no obvious reason for the slowness. There is no CPU spike. There is no network latency. There is no disk I/O.
  • The browser backend (steamwebhelper.exe) is CEF (Chrome Embedded Framework), a sub-project of the Chromium Project.
  • When clearing the cache, rather than just immediately clearing the cache, steamwebhelper.exe is restarted as well.