Tired of whatever silly color I've picked? Rotate the overall hue by hovering the site title!

Remove Shorts from YouTube RSS feeds

RSS ain't dead yet, and some of us weirdos use it to keep track of our favorite YouTube channels. Unfortunately, the default RSS feed is full of junk: littered with Shorts and livestreams (active or past), making it quite annoying to sift through to find the proper videos for which we wanted to "subscribe" in the first place.

After years of frustration and clicking through Shorts I had no intention of watching in order to mark them as read in my RSS reader, I've finally found out how to fix this stupid situation. We simply have to combine some secret tech lurking about with some esoteric feature that potentially only a handful of people know about.

That secret tech? Creating automatic playlists from other channels' public data. And the esoteric feature? Using special prefixes for the playlist IDs to filter them. Let's get how it's done out of the way first. Then I can blather on about this and that as I like to do.

It's a surprisingly simple process: Take a channel RSS feed URL and change channel_id=UC to playlist_id=UULF. Drop this new URL into your RSS reader instead.

https://www.youtube.com/feeds/videos.xml?channel_id=UCsqjHFMB_JYTaEnf_vmTNqg
https://www.youtube.com/feeds/videos.xml?playlist_id=UULFsqjHFMB_JYTaEnf_vmTNqg

That's it! Instead of being fed every single thing the channel posts, your RSS reader will now only get their regular videos! As far as I can tell, this also excludes videos that are currently streaming or were streamed. Thus, instead of getting videos, Shorts, and streams sent to you, you'll only be given videos. Neat!

Screenshot showing the difference between a channel feed and a playlist feed in Feedly after the latter has been renamed.

There is a small caveat, however: These playlist feeds don't have the same metadata in them as channel feeds, so the title will be wrong, just "Videos" instead of the channel's name, and the channel's avatar won't be there. No big deal in either case.

Updated

I've since found a secondary way to do this ⸺ one that keeps the channel's metadata intact so less or no editing is needed after dropping the URL into your RSS reader.

If you have a channel's ID, you can send that to YouTube's /playlist URL with a minor change. If you don't have it, you can get it from their main page. Click the "…more" link toward the top and then the "Share channel" button. One of the options will be to copy the channel ID, so do that.

Doug Demuro → …more → Share channel → Copy channel ID → UCsqjHFMB_JYTaEnf_vmTNqg

Take the URL https://www.youtube.com/playlist?list= and slap the channel ID on the end while changing the "UC" to "UU" for a playlist of all of their uploads. Add "LF" after the "UU", making the same "UULF" string we used above, and you now have a playlist of just their long-form uploads.

Everything: https://www.youtube.com/playlist?list=UUsqjHFMB_JYTaEnf_vmTNqg
Long-forms: https://www.youtube.com/playlist?list=UULFsqjHFMB_JYTaEnf_vmTNqg

Put this URL in your RSS reader instead of the /feeds/videos.xml one from above and you won't have to mess with it. It'll be named "[Channel Name] (Videos) on YouTube", which is a lot better than just "Videos" from before, and it'll have an icon too instead of YouTube's logo.

What in the world?

Crazy, right? YouTube minus the scourge of Shorts?! It's questions at every level. Why are RSS feeds hardly used anymore? Why weren't Shorts separated into their own app? Do people really search YouTube for something and then watch a Short on it instead of a proper video? What happened to humanity's collective attention span? Why are YouTube's RSS feeds so hard to find? Why aren't RSS readers aware of this playlist_id parameter? And what the hell is UULF and why does it filter a playlist to only normal videos?

It turns out that every channel ID starts with UC for a reason. That UC isn't actually part of the ID but a prefix used by the server to adjust what it's doing with a given request. It likely means "User Channel" and then their actual ID follows. Why YouTube chose to do this is anyone's guess, but playlists have this functionality as well. And according to this guy on Stack Overflow, UULF is the prefix that limits it to public videos.

And you know what's not in an RSS feed of public videos? Shorts. My assumption is the "UU" means "User Uploads" and the "LF" means "Long Form", but it's anyone's guess. The important part is that removing Shorts stops so much bullshit from landing in your RSS reader.

There's a chance this won't work forever as YouTube is free to change how their stuff works at any moment. If it ever stops working, you'll know only if (a) your RSS reader reports feed errors to you or (2) you notice a particular channel has been suspiciously quiet lately. The feed will have been reporting no videos ever since the breaking change happened. I suspect this will work for the foreseeable future, though.

Let's look at Doug Demuro's channel as an example. At the time of writing this section there were sixteen items posted within the ten days prior. If we use his default channel RSS feed, all of them come into our reader. But if we use a filtered playlist feed instead, only six videos show up. That's a Bullshit Reduction Factor of 62.5%!

  1. How Cheap Will the Mercedes Benz AMG GT Get?
  2. The Jaguar X-Type Was a Failed Revolution to Change Jaguar
  3. Cadillac Needs a Halo Car!
  4. A New $600,000 V12 Monster from Ferrari!
  5. The Ultimate Head Turning Daily Drivers!
  6. The Ferrari 12Cilindri Is a $600,000 Monstrous Supercar
  7. The 2025 Lexus LX 700h Overtrail! Ultimate, Most Expensive Lexus Family Hauler!
  8. Here Are 9 Daily Drivers That Will Stop a Car Show
  9. The Mercedes CLS55 AMG is a Bargain Under $10,000.
  10. Has Pagani Ruined the Zonda?
  11. Nissan Sent WHAT to Doug? BMW's Biggest Mistake! Every Mustang Ranked! THIS CAR POD! EP60
  12. The Original Audi R8 is the Greatest Halo Car of All Time!
  13. The Original Audi R8 Is a Modern Supercar Bargain
  14. Cadillac Cien Concept Supercar, Doug DeMuro Wants to Buy It!
  15. Doug DeMuro on Supercars with Montana Plates!
  16. The 2025 Lexus LX 700h Is the Perfect $120,000 Ultra-Luxury Land Cruiser

Ten dumb Shorts culled from the list. Ten fewer items for me to click to open, marking them as read, and immediately move on from. It's glorious. And it's how things used to be before YouTube jumped on the short-form video bandwagon.

How did we get here?

I'm one of the (I'm assuming) very few people who still uses an RSS reader at all, and I'm definitely in a minority who use RSS in place of YouTube subscriptions. As an Elder Millennial, I come from the ancient times wherein Google Reader was a tool in everyone's bag. I was using RSS before YouTube showed up, and I never stopped.

My choice was vindicated once YouTube started screwing with The Algorithm. They started prioritizing their video choices over your own, and you could no longer be sure you were seeing each video your favorite channels uploaded. It didn't matter if you'd watched all 642 of some channel's videos in the past; now you might start missing some. Rather than fix that, because Big Brother knows best, they added the whole bell system, subscribing but harder, just to get it back to how it was before. Meanwhile, RSS feeds were never subject to any algorithmic nonsense, so I never missed anything.

And so we meander through time until 2020 when the executives at YouTube decide to compete with TikTok with their version called Shorts. Rather than relegate them to their own app, keeping the short-form nonsense separate from the legitimate stuff, YouTube kept it all under the same roof.

For most people it barely matters ⸺ if it matters at all. But for me? This has been a pain in my ass for years for one simple reason: Shorts are included in a channel's RSS feed. All the Shorts are slotted in amongst the Longs. Additionally, the feed makes no distinction in its markup between a normal video and a Short: no mention of the video type, no length data, and so on. As such RSS readers couldn't know which ones to skip.

Try it yourself: Which one of the following videos from Doug Demuro's channel's RSS feed is a Short? Which one is a clip from a podcast I will never listen to, and which one is a half-hour video going over a car in detail? I've removed the titles and descriptions because you, a human, could figure it out from various context clues. From the perspective of the feed, however, they're practically identical.

<entry>
  <id>yt:video:4hjRbDkB7WQ</id>
  <yt:videoId>4hjRbDkB7WQ</yt:videoId>
  <yt:channelId>UCsqjHFMB_JYTaEnf_vmTNqg</yt:channelId>
  <title></title>
  <link rel="alternate" href="https://www.youtube.com/watch?v=4hjRbDkB7WQ"/>
  <author>
   <name>Doug DeMuro</name>
   <uri>https://www.youtube.com/channel/UCsqjHFMB_JYTaEnf_vmTNqg</uri>
  </author>
  <published>2025-05-22T23:55:40+00:00</published>
  <updated>2025-05-22T23:56:41+00:00</updated>
  <media:group>
   <media:title></media:title>
   <media:content url="https://www.youtube.com/v/4hjRbDkB7WQ?version=3" type="application/x-shockwave-flash" width="640" height="390"/>
   <media:thumbnail url="https://i1.ytimg.com/vi/4hjRbDkB7WQ/hqdefault.jpg" width="480" height="360"/>
   <media:description></media:description>
   <media:community>
    <media:starRating count="1940" average="5.00" min="1" max="5"/>
    <media:statistics views="33214"/>
   </media:community>
  </media:group>
 </entry>
<entry>
  <id>yt:video:qxlGSJQ6C7Q</id>
  <yt:videoId>qxlGSJQ6C7Q</yt:videoId>
  <yt:channelId>UCsqjHFMB_JYTaEnf_vmTNqg</yt:channelId>
  <title></title>
  <link rel="alternate" href="https://www.youtube.com/watch?v=qxlGSJQ6C7Q"/>
  <author>
   <name>Doug DeMuro</name>
   <uri>https://www.youtube.com/channel/UCsqjHFMB_JYTaEnf_vmTNqg</uri>
  </author>
  <published>2025-05-22T15:55:00+00:00</published>
  <updated>2025-05-22T15:55:01+00:00</updated>
  <media:group>
   <media:title></media:title>
   <media:content url="https://www.youtube.com/v/qxlGSJQ6C7Q?version=3" type="application/x-shockwave-flash" width="640" height="390"/>
   <media:thumbnail url="https://i2.ytimg.com/vi/qxlGSJQ6C7Q/hqdefault.jpg" width="480" height="360"/>
   <media:description></media:description>
   <media:community>
    <media:starRating count="4277" average="5.00" min="1" max="5"/>
    <media:statistics views="100734"/>
   </media:community>
  </media:group>
 </entry>

For years I've had to click into an increasing number of items in my YouTube feeds only to see they're Shorts. Some channels have gotten very bad about it and will post a dozen Shorts for every Long they put up. No doubt it's good for their bottom line, but I was beginning to consider culling these over-Shorters from my list. I was willing to lose out on their normal videos just so I wouldn't have to constantly chip away at their feed of mostly Shorts.

I've googled this situation from time to time, and I've never found an answer until yesterday. The FreeTube app came up as a possibility as it can exclude Shorts, but it works much more like a standard YouTube subscription than an RSS-style list. The whole point of an RSS reader is to (a) not miss anything and (2) to have it presented to you in a concise, chronological order. Furthering my annoyance with FreeTube was the need to manually refresh it to get new videos. All told it felt more clunky than simply clicking through Shorts in everyone's RSS feeds.

Finally, though, it seems some key bit of knowledge was gained somewhat recently and started to spread around the web. This guy might've been the seed. It seems he brute-forced YouTube URL parameters last year in search of valid ones to use in a userscript, and he found a bunch of them! If you are in fact the originator of this information, my dude, thank you for making my life a tiny bit more sane. 🫡

Leave a comment

Your email address will not be published. Required fields are marked *