YouTube Dumps Cache between Ads, Quality Toggling and Wastes Bandwidth
[I originally drafted this article two weeks ago (August 1st, but then had been delayed and other errands] Most of it has been left intact, with the exception of a brief conclusion added.]
I remember YouTube before it was acquired by Google in 2006. Its interface has changed significantly over the years, for better and worse. Higher bittrate, 360 degree videos, and all sorts of analytics. But I also noticed it wastes bandwidth. I'm not referring to preloading a video that isn't watched- yes it used to play the entire video in the past, where now it only caches up to 90-120 seconds to save bandwidth in case the user doesn't watch the entire video. I'm also not referring to AutoPlay, which I also disable on all my devices that I'm logged into. I'm aware there are countless extensions that allow smartbuffering, some which are great on browsers that still support extensions (or aren't routinely filtered by Chrome, which is owned by the same company as Youtube).
What I'm referring to is something I only noticed on a slow connection (less than 1Mbps). I, like many people in the third world, do not take fiber optic connections for granted, even though I have access to one. There is a speed between extremely slow (128Kbps) and moderately fast (5Mbps) on a data plan where someone will blaze through an entire data cap simply by using the default mechanisms to prebuffer a video to the maximum allowed (99-120 seconds) without any special extensions in Firefox or Chrome, only to see that entire cache deleted once an ad begins. I have recorded a video that shows exactly what I'm referring to. It also creates an expense for YouTube, and since Alphabet/Google also develops a Chrome browser, it is very unusual that they wouldn't create a mechanism within the browser to retain the buffered cache while the window is still open (i.e. the user hasn't decided to wander off to another video or even a tab). In other words, they have willingly decided to accept all ads and cookies, and even play through them until the Skip Ad appears. In other words, trying to play by all the right rules.
A month ago, i was purchasing a data plan by the day. A 3 day internet plan might include 3GB, or 10GB. But playing a Youtube video turns into wasting 2-3x as much bandwidth when "fast forwarding", "rewinding," or simply pausing a video to allow the buffer to get a 2 minute head start. I'm not referring to prebuffering the entire video (for videos longer than that- typically 10 minutes or so, which could be gigabytes in the address space for high resolution, even if the RAM on a PC can store the entire video. What I'm referring to is the fact that an ad will start playing at random times in a video- sometimes in the beginning, sometimes after a minute, 3 minutes, and 5 minutes, less when rewinding or fastforwarding. On a slow connection I might be able to get 720p/24 with 384kbps or 512kbps if I wait a minute or two- This gives me enough of a head start that the video won't run into buffering issues until 6 or 7 minutes.
I wrote about that in a June article: https://inavoyage.blogspot.com/2026/06/720p-on-384kbps-how-heres-how.html
But after doing a few more tests, I realized that 384 kbps typically can support 480p a lot better, with a few, minor tweaks that doesn't require using super countermeasures (extensions). Just allowing the buffer to fill as it normally does after pressing pause. So the curious thing happens: An ad plays, and all of a sudden, YouTube decides that all that cache is worth nothing. If I was a pessimistic person, I would think that cell phone carriers and some ISPs that still charge a lot on data overages give Alphabet kickbacks for requiring users to redownload a cache in the middle of a video that was interrupted to an ad break, as if the browser and video server can't be smart enough to tell the browser not to dump a valuable number of megabytes (possibly gigabyes in the 4-8K range).
I have streamed internet video since the days of RealPlayer back in the late 90s and early 00s. The bittrate was so low. For audio, it was 8.5kbps-14.4kbps. The files were .ra, and you could run the file in a media player and it would stream from the desktop app, instead of the browser itself. The bittrates of the files were as little as 64-96kbps for near CD quality compressed.
Real video (.rv), started around 200kbps and was known as h.263 (just under h.264), though its bittrate was low enough
Yet for nearly 30 years, all internet video has had a "unsolvable" problem. It almost sounds intentional. When landing on a website, the advertisement video will autoplay often times (can't be disabled in Chrome), or if the website offers a Play button, the advertisement will play, often in a crisp, higher resolution video than the content itself, and then if there is even the slightest hint of a slow internet connection, or not even a slow internet connection, but a minor PC hiccup, the website will display an error in the video window after the ad completes, saying it's unable to play the actual video (such as on a news site or some other video serving site). I wondered why I still encountered this issue every so often, even this year. It can't possibly be because it's a difficult problem to solve, because there must be strict rules on containerizing ads from video, because that isn't the case. Many YouTube influencers routinely include ads in their video and they become the advertisers because their sponsors pay them. At the very least, it's an honest job and an honest disclosure. But that isn't what I'm disappointed with. What I'm disappointed with is that a pessimistic website that wants to make more money by servings ads might be motivated to intentionally crash the content end of their video after an ad plays, because the sponsor pays them based on the number of ads played. So if the website owner is broke, greedy, or both, they're not really going to care about ensuring their video works on the first or even second try, if they can figure out a way to triple their ad revenue by borking the playback if their viewers are willing to put up with pressing F5 or refreshing their page because the video won't play and the page doesn't offer any easier way to restart the video.
But of course that can't possibly be the issue Youtube has, because they own the revenue generating service, and could easily avoid that issue, even though it's unlikely, they aren't interested in having billions of users refresh their page because it would consume much more bandwidth with the autoplay in process. Yet, they don't mind delivering the same content over again for the slowest connections?
What I'm referring to is when you open a YouTube video and shortly thereafter change the quality (thereby making it so that you don't need all of the video you've dowloaded so far) you don't discard as much data when the default is higher resolution than 144p.
| The buffer (grey |
(If the video cannot play, use this link: https://youtu.be/8kZtKSJwCzo
Conclusion: one mitigating solution is to use the lowest available bittrate, such as 144p, then increase the resolution after the ad plays, so it doesn't download twice the high resolution buffer and dumps it whenever a fast forward or random ad prompts the buffer to dump. While this might not affect users with unlimited bandwidth, it presents a real infrastructure constraint in limited data networks (esp those using antiquated routers such as 802.11b/g). Redundant data and content delivery mechanisms have tradeoffs that may not be needed or observed in niche data plans. One could also offer a downloadable video, but that is only available on YT Premium and other sites.

Comments
Post a Comment