negative zero

FreeTube: A Really Nice YouTube Client

2021 August 5

[review] [tech] [youtube]

Google is evil. YouTube, its video platform, requires non-free JavaScript and tracks its users.

Unfortunately, YouTube is also a very popular publishing platform for videos. It's not reasonable to avoid YouTube altogether, so we need privacy-respecting free software which allows us to use the platform.

NewPipe (GPL) provides this function on Android. (I haven't used it personally, but I've heard good things.)

As an alternative web client, you can find an Invidious (AGPL) instance that isn't currently blocked by Google.

You can also use RSS to follow YouTube channels. (Some feed readers like GNOME Feeds (GPL) include built-in support for YouTube, or you can use tools like rsstube (GPL) to find the feeds for YouTube channels.)

Videos can be streamed with media players like VLC (GPL) or mpv (GPL), or they can be downloaded with youtube-dl (public domain/Unlicense).

Introducing FreeTube

Another program to add to our arsenal is FreeTube, an AGPL Electron client for YouTube.

I hate Electron, and I really don't need more of it in my life. I think that's the main reason it took me so long to try FreeTube. I already have ways to use YouTube. Why should I try some Electron app?

Well, as I found, the answer is because this Electron app is really nice.

So, yes, it's Electron, and it's a client specifically for the centralized, Google-owned YouTube platform. Those are the bad things.

Everything else I have to say about FreeTube will be good. Let's get into it!


As an Electron app, FreeTube is available cross-platform (GNU/Linux, Windows, and macOS). I was impressed by the number of ways it's made available for easy installation.

In addition to the standard Windows and macOS executables, FreeTube supplies .deb and .rpm packages, as well as .zip archives, for both amd64 and arm64. (That's right, it supports ARM!) Or you can download an AppImage. Or you can get it as a Flatpak. Or, if you're on Arch, you can get it from the AUR.

The only things missing are inclusion in official distribution packages (which is generally not a thing for Electron apps, from what I can tell) and a snap (which, given its issues, is just fine in my opinion).

User Experience/User Interface

FreeTube is really nice. It looks nice. It feels nice to use. It functions well and provides an intuitive and familiar experience to users who are familiar with YouTube.

This is the kind of thing I think my non-techie friends would like a lot.

The theme is customizable. The user can select a base theme (Light, Dark, or Black) as well as a main color and a secondary color, creating a simple, beautiful theme.

The video player functions like YouTube's, allowing users to select the video quality, closed captions, playback speed, and so on. If you stop watching a video without completing it, you can resume where you left off later. It's a good time.


FreeTube does not require an online account of any kind, but it supports subscribing to channels. It even supports multiple profiles for organizing subscriptions. These subscriptions can optionally be fetched using RSS.

Settings and Features

I love settings. I love being able to customize things. I was very pleasantly surprised by the versatility of FreeTube.

Here are some settings and features that excite me:

Invidious Support

By default, FreeTube uses its own API locally to fetch YouTube data, and it falls back to Invidious if there's an issue. This can be configured if the user prefers something else.

Proxy Videos Through Invidious

what it sounds like

Import/Export Subscriptions

The import/export subscriptions settings support FreeTube's .db format, as well as .json for YouTube/NewPipe subscriptions and .opml for RSS subscriptions. This excites me because it makes it easy to migrate to or from FreeTube.

Proxy Settings

FreeTube has built-in proxy support. The proxy is not enabled by default, but the default configuration is for Tor.

No Ads

FreeTube doesn't show ads. This is generally the case with free software for YouTube, but apparently in 2021 some people are still seeing ads, so this might be a draw for a lot of people.


SponsorBlock (LGPL) is a browser extension and API which crowdsources information about when sponsor segments (and other things the user might want to skip) appear in videos and enables users to skip those segments.

FreeTube has support for SponsorBlock, but it's disabled by default.

(SponsorBlock lookups are made in a privacy-preserving way.)

Video Download Support

FreeTube supports downloading YouTube videos (à la youtube-dl or Invidious).

At this time, FreeTube does not support downloading multiple files and merging them automatically (like youtube-dl does with ffmpeg/avconv). In fact, it doesn't seem to actually download and save the files at all; it opens the link to the file in your external browser, and you can download it there.

It's still a useful feature, though.


I haven't been using FreeTube for very long, so I may find more problems later. So far, the only real issue I've encountered is that I've been unable to fetch the comments on videos.

Arguably, this is a feature, not a bug.

(That's a joke.)

Software Freedom

FreeTube is AGPL, but what about the project's commitment to free software outside of the software itself? Many free software projects use Discord or similar non-free platforms as their primary (or only) way of connecting with the community. This doesn't necessarily speak badly of the project's software, but it's good to walk the walk and promote values such as software freedom and decentralization.

FreeTube publishes its code on Microsoft's non-free GitHub platform, but otherwise, it really does seem to prioritize free software and related values. Here's the contact information listed on FreeTube's website:

Here's how users can donate:

None of these is a perfect platform, but they're all more free-software-oriented than other popular payment/donation platforms.


FreeTube is good.