Built-in Plugins
Motrix comes with two official plugins, already installed and already switched on. They rename your finished downloads and give other plugins a shared way to turn media page links into file links. You can adjust or switch off each one from Plugins in the left sidebar.
Built-in plugins can be turned off, but they cannot be removed — they have no Uninstall button.
At a glance
| Plugin | What it does | What you can change |
|---|---|---|
| Motrix Filename Template | Renames each download when it finishes, following a template you write | The template |
| Motrix URL Resolver | Groundwork that other plugins build on to turn media page links into file links | Preferred quality |
Open Plugins, click a plugin, and you get four places to look: Overview, Settings, Access, and — behind the small scroll icon on the right — Logs. Anything you change under Settings is saved when you click Apply; Reset puts the defaults back.
Note
Motrix Page Scraper is no longer bundled as of beta.41. A slow download page must not block task creation. Use a direct file link or a compatible site-resolver plugin when a page needs special handling.
Motrix Filename Template
Downloads often arrive named dl_38fa20b.zip or download.php. This plugin renames each file the moment it finishes, following one template you write once. The rename happens before the file is placed in your download folder, so the messy name never appears.
You write the template for the name part only. The extension is put back for you, which is why the default template, {{title}}, leaves files exactly as they were.
Placeholders
Anything in {{ }} is replaced with a value from the download.
| Placeholder | Becomes |
|---|---|
{{title}} | The original filename without its extension |
{{original}} | The complete original filename, extension included |
{{ext}} | The original extension, without the leading dot |
{{date}} | The date the task was added, as YYYY-MM-DD |
{{time}} | The time the task was added, as HH-mm-ss |
{{id}} | The download task’s ID |
{{host}} | The hostname the file came from, such as www.example.com |
{{domain}} | The same hostname without a leading www. |
{{urlPath}} | The path part of the source link, decoded |
{{createdBy}} | How the task started: user, protocol, or api |
{{meta.key}} | A value another plugin attached to the task; nested keys such as {{meta.show.season}} work too |
Dates and times your way
{{date}} and {{time}} accept a format after a colon — {{date:YYYYMMDD}}, {{time:HH-mm}}, or a mix such as {{date:YYYY/MM}}. The pieces you can use are:
| Token | Meaning |
|---|---|
YYYY | Four-digit year |
MM | Two-digit month |
DD | Two-digit day |
HH | Two-digit hour, 24-hour clock |
mm | Two-digit minute |
ss | Two-digit second |
Filters
Add | after a placeholder to clean up its value. Filters can be chained left to right.
| Filter | Effect |
|---|---|
trim | Removes spaces at the start and end |
lower | Makes everything lowercase |
upper | Makes everything uppercase |
slug | Produces a lowercase, hyphen-separated name |
truncate:N | Keeps at most N characters |
replace:"old":"new" | Replaces every occurrence of one piece of text with another |
default:"value" | Uses value when the placeholder came out empty |
pad:N | Pads the value on the left with zeroes until it is N long |
Examples
Each row starts from Vacation Photos.zip, downloaded from www.example.com on 18 August 2026:
| Template | Saved as |
|---|---|
{{date}} {{title}} | 2026-08-18 Vacation Photos.zip |
{{date:YYYYMMDD}}-{{domain}}-{{title|slug}} | 20260818-example.com-vacation-photos.zip |
{{meta.artist|default:"Unknown"|slug}}-{{title|slug}} | unknown-vacation-photos.zip |
The last one is the safe way to use a value another plugin may or may not have supplied: default fills the gap instead of leaving a stray hyphen.
The setting
| Setting | Default | What it means |
|---|---|---|
| Filename template | {{title}} | The template for the name part. The original extension is kept for you. |
Good to know
- It applies to HTTP, FTP, and BitTorrent downloads.
- Two-part extensions stay whole:
.tar.gz,.tar.bz2,.tar.xz,.tar.zst,.tar.lz,.tar.lzma,.user.js,.min.js,.min.css,.d.ts,.d.mts, and.d.cts. - Characters that no filesystem likes —
/ \ < > : " | ? *, control characters, and invisible text-direction characters — become_. Names Windows reserves, such asCONorCOM1, get an underscore in front. Trailing spaces and dots are dropped. The whole name is capped at 240 UTF-8 bytes, and the extension is never the part that gets cut. - Because
/is one of those characters,{{urlPath}}arrives with its slashes turned into underscores. - If the template has a mistake — an unknown placeholder or filter, an unclosed
{{, a filter missing its argument — Motrix renames nothing and keeps the original filename. The reason is written to Logs, so check there when a rename doesn’t happen. - Templates can be up to 512 characters long.
Motrix URL Resolver
This one is groundwork rather than a feature you use directly. It gives site-specific plugins a shared way to turn a media page link into the file link Motrix should download, plus one quality preference they can all read.
Out of the box it recognizes exactly one site: Wikimedia Commons. Paste a link like https://commons.wikimedia.org/wiki/File:… and Motrix asks Commons where the original file lives, then downloads that instead of saving the web page. It is there as a working demonstration of the mechanism.
Important
Support for other websites comes from separate site-resolver plugins that you install yourself. Motrix does not ship resolvers for video-sharing sites, and having this plugin enabled does not add any. When no installed resolver recognizes a link, Motrix downloads it exactly as you typed it.
The setting
| Setting | Default | What it means |
|---|---|---|
| Preferred quality | 720p | Which quality a site-resolver plugin should ask for: 1080p, 720p, or 480p |
This is a request passed along to site-resolver plugins, not a guarantee. The built-in Wikimedia Commons resolver always fetches the original file, so the setting does nothing until you install a resolver that reads it.
How built-in plugins stay up to date
Built-in plugins carry their own version numbers and can update without waiting for a new Motrix release. Each update is a package signed by the Motrix team, and Motrix checks the signature before installing anything.
In the desktop app, open a plugin and look at the buttons to the right of its tabs:
- The circular-arrow button is Check for updates.
- When something is waiting, that button changes to Update to v…, and the plugin’s card in the list picks up an Update available badge.
Click it and Motrix installs the update. If the new version wants access the old one didn’t have, an Update builtin plugin dialog appears, lists exactly what changed under This update requests new access:, and waits for you to choose Install or Cancel. An update can never widen a plugin’s reach without you seeing it first. Afterwards you may be told Update installed. Restart Motrix to finish applying it.
Changed your mind? While a plugin is running an update it fetched on its own, an undo button sits beside it: Revert to bundled version brings back the copy that shipped inside your Motrix.
Note
These update controls belong to the desktop app. The Docker and server builds take their built-in plugins from the image, so updating them there means updating the image.
Next steps
- Plugins — installing, reviewing, and managing plugins in general.
- Troubleshooting — what to check when a download behaves unexpectedly.