YTSage: yt-dlp's engine behind a PySide6 window anyone can use
Modern YouTube downloader with a clean PySide6 interface. Download videos in any quality, extract audio, fetch subtitles, sponsorBlock, and view video metadata. Built with yt-dlp for reliable performance.
At a glance
- What is it?
- YTSage is a MIT-licensed Python application wrapping yt-dlp in a clean PySide6 interface, downloading video in any quality, extracting audio, fetching and merging subtitles, integrating SponsorBlock, and displaying metadata, with installers for Windows, Apple Silicon and four Linux formats plus a PyPI package localized in 16 languages.
- Who is it for?
- Use YTSage when the goal is downloading videos without learning yt-dlp's command line, since its format table, playlist selector and subtitle merging cover the common cases through a desktop interface, and the generic mode extends the same window to other sites yt-dlp supports. Prefer the yt-dlp CLI directly for scripting and batch pipelines, a GUI is not the right tool there.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 3 days ago.
- What is it written in?
- Mainly Python, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 2, 2026, and from our analysis. They are not legal advice.
Editorial analysis
A GUI where yt-dlp expects flags
YTSage's position is stated plainly, a modern YouTube downloader with a clean PySide6 interface, built with yt-dlp for reliable performance, meaning the battle tested download engine underneath and a desktop window on top. The design for audience is explicit in the why section, users who want a simple yet powerful downloader, with one click downloads for video, audio and subtitles as the headline, and the generic mode offered for sites yt-dlp supports beyond YouTube. The feature grid splits into three columns that map to user sophistication, core features like the format table and audio extraction, advanced ones like SponsorBlock and speed limiting, and extras like FFmpeg detection and custom commands, so a newcomer can stay in the first column forever and lose nothing essential.
SponsorBlock, chapters, and subtitle merging
The advanced column carries the features that separate this from a bare download button. SponsorBlock integration skips or marks sponsored segments using the community database, subtitle selection and merging writes chosen subtitle tracks into the output file rather than leaving sidecar files, and chapter integration embeds YouTube chapters into the result. Video section trimming cuts a range before download completes, audio normalization applies the EBU R128 loudness standard, and the save description and thumbnail option rounds out the archive-oriented behaviors. Each of these maps to a yt-dlp capability or an FFmpeg post-process, which is the honest description of the layer, YTSage surfaces options that exist in the engine but never got a GUI anywhere else.
Windows installers in four flavors
The Windows release table answers the two questions that actually vary, installation and FFmpeg. The standard installer is a double click setup wizard, an FFmpeg included variant exists for machines without FFmpeg, a portable version runs without installation, and a portable with FFmpeg build ships zipped. The four-way split is unusual care for a free tool, since the classic failure of GUI downloaders is a user stuck on a missing FFmpeg dependency with no guidance, and here the decision is made at download time rather than at first crash. The troubleshooting section continues that posture, and the project's GitHub sponsors page and Telegram channel round out the support surface.
Apple Silicon only, with a Python escape hatch
The macOS story has a boundary stated up front, the installers are natively built for Apple Silicon on M1 through M4 chips, and Intel Mac users are directed to the Python installation method instead rather than being offered a broken universal build. The Apple Silicon packages are a disk image to drag to Applications and a zipped application, with a specific troubleshooting entry for the Application is damaged error that macOS Gatekeeper produces on unsigned downloads. That combination, a narrow native target plus an explicit alternative path, is more honest than the usual universal installer claim, and the Python route below works on any macOS a recent Python supports.
Four Linux formats, Flathub included
Linux gets the widest packaging spread, a portable AppImage as the recommended option, a Debian package, an RPM package, and a Flatpak bundle on Flathub as io.github.oop7.ytsage. The AppImage path is two commands, chmod plus x on the file and running it, the deb path uses dpkg with an apt-get install -f suggestion to fix any missing dependencies, the rpm uses rpm -i, and the Flatpak install is a single flatpak command. The distribution breadth matters for the target audience, since the users who need a GUI downloader are exactly the ones who will not build from source, and having their distribution's native format available removes the last technical step.
PyPI, with FFmpeg setup help on Windows
The Python route requires Python 3.11 or newer and is one command:
pip install ytsagewith pip install --upgrade ytsage for updates, and the launch is the command name itself:
ytsageURLs can be passed at launch, opening the application with a video or playlist URL prefilled and analyzed immediately, so the tool slots into keyboard-driven workflows despite being a GUI. The documented surprise is the Windows behavior, installing via pip automatically detects and helps set up FFmpeg, the assistance macOS and Linux users get from a separate FFmpeg installation guide maintained by the same author. The dependency list is small and current, PySide6, requests, pillow, packaging, markdown and loguru, with Python versions supported up to 3.14, and the source route for developers is clone, uv pip install or pip install, then python -m ytsage.main.
Sixteen readmes and a rapid release rhythm
The localization investment is the largest visible signal of the audience, the README ships in sixteen languages from Arabic and Persian through Korean, Turkish and Chinese, maintained as separate files in a translations directory. Development moves quickly, v5.5.3-beta.1 in early September 2026, v5.5.6-beta.1 mid-month, and v5.5.6 stable on 2026-09-18, with the repository pushed 2026-09-27, showing beta channels feeding into stable tags on a roughly monthly cadence. A version channel selection feature in the app itself lets users choose stable or beta tracks, matching the release structure, and the built-in updater tab plus automatic yt-dlp updating keep the engine current, which matters because YouTube changes break old downloaders faster than anything else.
Editorial conclusion
Use YTSage when the goal is downloading videos without learning yt-dlp's command line, since its format table, playlist selector and subtitle merging cover the common cases through a desktop interface, and the generic mode extends the same window to other sites yt-dlp supports. Prefer the yt-dlp CLI directly for scripting and batch pipelines, a GUI is not the right tool there. Before installing, pick the installer variant matching your system, the FFmpeg-included builds for machines without FFmpeg and the portable builds for no-install use, note the macOS builds are Apple Silicon only with Intel users directed to the Python path, and check the release channel options if you want stable rather than beta updates.
Frequently asked questions
What is YTSage?
YTSage is a free, MIT-licensed YouTube downloader with a clean PySide6 desktop interface, built on yt-dlp for the actual downloading. It downloads video in any quality, extracts audio, fetches and merges subtitles, integrates SponsorBlock, supports playlists and shows metadata, and runs on Windows, macOS and Linux.
How do you install YTSage?
Download a pre-built installer from the GitHub releases page, with Windows offering standard, FFmpeg-included and portable builds, macOS offering Apple Silicon disk images, and Linux offering AppImage, deb, rpm and Flatpak packages. Alternatively install via pip with pip install ytsage on Python 3.11 or newer and launch with the ytsage command.
Does YTSage work on sites other than YouTube?
Yes, through its optional Generic Mode, which extends the same interface to the sites yt-dlp supports beyond YouTube, since yt-dlp itself handles many platforms and YTSage exposes that capability as a mode rather than a separate tool.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/oop7-ytsage)