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

PluginWhat it doesWhat you can change
Motrix Filename TemplateRenames each download when it finishes, following a template you writeThe template
Motrix URL ResolverGroundwork that other plugins build on to turn media page links into file linksPreferred 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.

PlaceholderBecomes
{{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:

TokenMeaning
YYYYFour-digit year
MMTwo-digit month
DDTwo-digit day
HHTwo-digit hour, 24-hour clock
mmTwo-digit minute
ssTwo-digit second

Filters

Add | after a placeholder to clean up its value. Filters can be chained left to right.

FilterEffect
trimRemoves spaces at the start and end
lowerMakes everything lowercase
upperMakes everything uppercase
slugProduces a lowercase, hyphen-separated name
truncate:NKeeps 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:NPads 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:

TemplateSaved 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

SettingDefaultWhat 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 as CON or COM1, 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

SettingDefaultWhat it means
Preferred quality720pWhich 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.