You will need to install a user script manager extension to install this script.
This script tells YouTube that your browser only supports 30FPS or less, which means that you will see regular 30FPS versions of all HD videos.
For my six year old laptop, switching from 1080p60 to 1080p30 reduces the CPU usage by 2-4x, and removes all CPU overloads that used to make my browser and video playback freeze! This means longer battery life, and a much happier video watching experience!
(Furthermore, most older graphics cards only support hardware acceleration of 1080p30 or lower, which means that using this script may allow your graphics card to perform the video decoding for great battery savings!)
Install the Tampermonkey (https://tampermonkey.net) extension for your specific browser, and then install this script into Tampermonkey.
This script has been tested and confirmed working in Safari 9 for Mac and Google Chrome for Mac. But it should work in all browsers and OS's that support the Tampermonkey extension - on Windows, Mac and Linux!
(This script does NOT work via Chrome's own basic built-in script support!)
We DO NOT affect embedded YouTube videos, because embedded players only check for high-FPS support, so blocking those queries would mean completely losing all HD resolutions for embedded videos!
I suggest clicking the "Watch on YouTube" button to play embedded high-FPS videos directly on YouTube in 30FPS instead!
This script contains a workaround for a Safari bug. The Safari browser uses "lazy" extension loading, which means that your extensions (such as Tampermonkey) don't start running in new tabs until you actually visit a webpage in your new tab. And if the first page you visit in your new tab is YouTube, it may perform its codec check before the extension has been fully loaded, in which case YouTube will revert to giving you high-FPS videos in that tab. This "too late extension loading" will happen every time you write/paste a YouTube video URL in a brand new empty tab, or right-click a video link and choose "open in new tab/window", or use the History menu to browse to a video page. In other words, it's quite rare but common enough to be annoying. Our chosen workaround is that whenever we detect that Safari has loaded Tampermonkey too late in the current tab, we perform a very quick reload of the current YouTube page so that the extension can run before YouTube does its codec check. This reloading is automatic and happens so quickly that most people won't even notice anything at all. I just mention it here for the few people who pay attention to such things.