5,243 stars · GPL-2.0-or-later (read from the repository; the licence file is the GPL-2 notice) · release-2.13.3, read from /releases/latest as '17 Feb' with no year and dated 17 February 2025 by PyPI — nineteen and a half months, against code on 30 Sep 2026 · Track this in Scout
Identifies music files against the MusicBrainz database and writes the correct details into them.
▶Repo detailsthe review · specs · pros & cons · install
What it is
A desktop program, available for Windows, macOS and Linux, that reads audio files and matches them against MusicBrainz, a public and freely licensed music database. It can identify a file by its audio content rather than by its existing name, which is what makes it useful on a badly labelled collection.
What it is good for. Anyone with a music collection assembled over many years from many sources, where half the files are named "track03". It suits people who run their own music server, because every such server reads the details from inside the files, so fixing the files fixes the server. Edition 37 covered a simpler Linux-only tag editor that shows the files as a spreadsheet grid; this is the one that knows what the recording is.
- It identifies files by their sound, not only by their existing text, so it works on files with no useful names at all.
- Plugins exist for extra jobs, and the program ships with a plugin system rather than needing a rebuild.
- Its last code landed on 30 September 2026, two days before this edition.
- Its newest release is nineteen and a half months old and the year was nearly read wrongly. GitHub shows
release-2.13.3dated "17 Feb" with no year. The Python package index dates the same version to 17 February 2025. So the release is old while the code is two days old. The project is busy and is explicitly not called dead, but anyone installing a packaged version is installing something from early 2025. - An automatic match can be wrong, and it writes into your files. Work on a copy the first time, or keep a backup.
- Building from source is a real job: Python 3.10 or newer, PyQt 6.6.1 or newer, Mutagen, PyYAML, pygit2, gettext and a compiler.
puddletag/puddletagCovered in Edition 37, 640 stars, and its own licence file credits code taken from Picard. It shows files as a spreadsheet grid for bulk hand-editing, and it does not identify the recordings itself. Linux only.
Track this in Scout
beetbox/beetsCovered in Edition 36, 15,560 stars. The same MusicBrainz matching from a command line, built around importing and organising a whole library rather than editing files one by one.
Track this in Scout- quodlibet/mutagen
1,966 stars, and Picard's own dependency. It is the Python library that reads and writes the tags, with no interface and no matching, for anyone who wants to script this themselves.
Track this in Scout
python3 -m venv --system-site-packages .venv source .venv/bin/activate pip install -r requirements.txt -r requirements-build.txt python3 setup.py build_locales python3 setup.py build_ext -i python3 tagger.py
