$refs.trashChangelogButton?.focus()) }">
TRaSH not synced
Latest Update
TRaSH Changelog
from updates.txt
No changelog available
Local
⚠️ Authentication is disabled — anyone who reaches this URL is admin. Set Authentication to Forms or Basic in Settings → Security, or make sure another auth layer (reverse proxy, firewall) is in front.
Quality Profiles
TRaSH Guides quality profiles — click a profile to view its contents, customize groups, and sync to your instance. Manage sync rules, auto-sync, and overrides from the Sync Rules section below.
⏸
Auto-sync paused
Scheduled and after-pull syncs are skipped. Manual actions ("Sync All", per-rule "Sync now", Save & Sync from a profile) still work.
Auto-SyncDetailsActions
→orphaned
error
No sync history yet. Sync a profile from the list below to get started.
SQPⓘ
Pull TRaSH data to see available profiles. Click the Pull button in the header bar.
Sync History
Track changes made to your synced profiles. Each sync that modifies scores, CFs, quality items, or settings is recorded here. Roll back to a previous state if needed.
Last Changes
→
—
No changes recorded
No changes recorded yet. Changes are tracked from the next sync onwards.
This profile is orphaned — its target was deleted in Arr. These entries describe the pre-deletion state and Rollback is disabled. Click Restore on the sync row above to recreate the profile from this saved state. After a successful restore, these entries are cleared automatically.
DateCFsScoresQualitySettings
▶————
Custom Formats
Scores
Quality Items
Settings
No synced profiles yet. Sync a profile from the TRaSH Sync tab to see history here.
Compare Profiles
Compare your profiles against TRaSH Guides profiles. See what's matching, what has wrong scores, and what's missing — then sync individual fixes or all at once.
Note: Compare works best with profiles synced via Clonarr. For profiles created with other tools, custom formats with a score of 0 cannot be reliably distinguished from unused formats — these may not appear as "in use" in the comparison.
Instance:Arr:VSTRaSH:
Select an instance above to compare profiles.
Loading profiles from ...
Select an Arr profile and a TRaSH profile above to compare.
Dry-run results:
to create,
to update,
unchanged
— scores to set — extra scores zeroed
Settings:
Quality:
Create CF:
Update CF:
Score:
vs✓ Profile fully in sync
Filter
Profile Settings
Setting
Current
TRaSH
New
General
Quality
Cutoff
Required CFs
Custom Format
Current
TRaSH
New
ⓘ
CF Groups
Custom Format
Current
TRaSH
New
⚠pick onedefault
⚠ Multiple CFs scored — TRaSH recommends only one with a non-zero score
ⓘ🔒rec
ⓘExtra in Arr
CFs scored in your Arr profile but not part of this TRaSH profile. Selecting and removing will reset their score to 0.
will be removed
Click "Load Profiles" to fetch profiles from this instance
Custom Formats
All Custom Formats from TRaSH Guides, organized by category. Use Create to build a custom format from scratch, or Import to add existing formats from an Arr instance or JSON.
Showing Custom Formats.
Customⓘ
Customⓘ
ⓘ
Pull TRaSH data to see Custom Formats
Quality Definitions
TRaSH recommended file sizes (MB per minute of video) for each quality. These limits help Radarr/Sonarr choose the right quality when multiple releases are available. Select an instance to compare current values and sync.
Instance:ConnectedConnection failedNot testedSelect an instance to compare and sync
Type:
Syncs Auto-mode qualities on every TRaSH pullAuto-sync is active for — enable here to switchSet each quality to Auto or Custom, then enable
Quality
TRaSH Min
TRaSH Pref
TRaSH Max
Instance Min
Instance Pref
Instance Max
Sync Mode
Action
All Auto-mode qualities match TRaSH
Pull TRaSH data to see quality sizes
File Naming
TRaSH recommended naming schemes for folders and files. Select a media server tab and an instance to compare and apply.
▶Why use a naming scheme?click to expand
While naming is a personal choice, adding non-recoverable information to your filenames is strongly recommended for several good reasons.
Why should I include extra information in filenames?
Easy re-imports — If you ever need to reinstall or re-import your media in Radarr/Sonarr or media servers like Plex/Emby/Jellyfin, having all the details in the filename helps everything get imported correctly. Without this info, files might get wrongly identified as HDTV or WEB-DL quality.
Prevents duplicate downloads — Radarr/Sonarr won't accidentally download the same file again.
What's non-recoverable information and can't be recovered later?
Edition type (Director's Cut, Theatrical, Unrated, etc.)
Repack/Proper status (whether it's a fixed version)
Why is the non-recoverable information important/needed?
Stops download loops — With proper naming, Radarr/Sonarr knows what you already have.
Quality source — Can you tell what quality Movie (2023).mkv is just by looking at it? Probably not. Without this info, you can't easily upgrade or downgrade your files, and you might download the same movie or TV show again.
Release group — Knowing the release group helps you identify if there are known issues with that specific release. It also helps you find extra information about hybrid releases or source materials.
Edition type — Tells you if you have the Director's Cut, Theatrical version, Unrated version, etc.
Repack/Proper — Shows whether you have the fixed version or the original (possibly broken) release.
Don't Plex, Emby, and Jellyfin work fine with simple names like movie (year).ext / tv showname SxxExx.ext?
Yes, they do work with simple names. However, these media servers only care about organizing and playing your files — they don't track quality or help prevent duplicate downloads. That's what Radarr/Sonarr handles.
Why are the recommended filenames so long?
Complete information — To ensure your files have all the details needed to prevent download loops after import.
Only used parts show up — If your file doesn't have certain attributes (like being a repack), those parts won't appear in the filename.
Media servers hide filenames anyway — Plex, Emby, and Jellyfin display movie titles and show information, not the actual filename, so the length doesn't matter for viewing.
Backup and restore instance data, clean up custom formats and scores.
No instances configured. Add an instance in Settings first.
Instance:ConnectedConnection failedNot tested
Backup & Restore
Download instance profiles and custom formats as JSON, or restore from a previous backup.
Cleanup
Scan and clean up custom formats and scores. All operations show a preview before applying.
Duplicate Custom Formats
Find CFs with identical specifications but different names. Keeps the first, flags duplicates for removal.
Unused Custom Formats (Clonarr-managed only)
Finds CFs in this Arr instance that are not referenced by any Clonarr sync rule (selectedCFs, score overrides, or required by the rule's TRaSH/imported profile) and are not used for renaming. Assumes Clonarr is the sole tool managing CFs on this instance — CFs added via the Arr UI directly, or via Recyclarr / Notifiarr / other tools, will appear here as "unused". Review the preview list carefully. Keep List protection still applies.
Reset Non-Synced Scores
Finds CFs with non-zero scores that weren't set by Clonarr (not part of any synced profile). Resets their scores to 0. Useful for cleaning up scores set manually or by other tools like Recyclarr.
Orphaned Scores
Finds score entries in profiles that reference Custom Formats which have been deleted. These ghost entries are harmless but clutter the profile. Resets them to 0.
Keep List
Custom formats on this list will be excluded from delete operations. Case-insensitive, saved per instance.
Remove all CFs but preserve score mappings in profiles (respects Keep List). CFs can be re-added and will retain their scores.
Delete All Custom Formats & Scores
Complete fresh start — removes all CFs and resets their scores to 0 across every profile (respects Keep List). This cannot be undone.
Scoring Sandbox
Test how releases score against your profiles. Paste a release name or search Prowlarr, then see which Custom Formats match and the total score.
Parse with:Score against:Compare with:
Score EditorTest score changes without affecting saved profiles. All changes are temporary.
Min Score:
Configure Prowlarr in Settings to enable search
Press Enter or click Parse. Paste multiple names (one per line) using the area below.
Filter indexers
·
·
· manual order
Score sets:
This score set is empty. Switch to — Show all releases — above to find rows to add, or click Delete to remove the empty set.
Sonarr/Radarr's real pick order is quality first, then score within each quality (Quality Trumps All). The current sort is for browsing — click Score to see what Arr would actually grab.
Matched CFs
⋮⋮
x.matched) || []).length > 8 && openSandboxCopy(activeAppType, res)"
x-tt="(res.scoring?.breakdown?.filter(x => x.matched) || []).length > 8 ? 'Click to see the full match list' : ''">
·
x.matched) || []).length > 8 && openSandboxCopy(activeAppType, res)"
x-tt="(res.scoringB?.breakdown?.filter(x => x.matched) || []).length > 8 ? 'Click to see the full match list' : ''">
·
Paste a release name or search Prowlarr to see how it scores.
Profile Builder
Experimental. Build custom profiles with fixed scores, or import from Recyclarr YAML. Profiles here do not auto-sync with TRaSH Guide updates.
Your Profiles
No profiles yet. Create a new profile or import from Recyclarr YAML / TRaSH JSON.
CFs
·
CF Group Builder
Group your custom formats so they're easy to reuse across profiles. Pick the custom formats that belong together, mark which are required, and link them to quality profiles. Save the group locally to keep iterating on it, or export it as JSON for backup.
Build a cf-groups/*.json file — for TRaSH-Guides contribution, or for your own personal use. Pick custom formats, mark which are required, link to quality profiles. Save locally to iterate on later, or export as JSON. Hash (trash_id) auto-computed from the group name.
defaultediting
default
New cf-group
Copying from TRaSH: — will save as new local cf-group
Editing
Group name
trash_id (auto-generated from name, MD5)
Default
Group (sort order)
Description
Selected CFs
⋮⋮custom
required
default
No CFs in this group yet. Use the Custom Formats list below to add some, or start from an upstream TRaSH group with the Edit button above.
Custom Formats
customin group
Quality Profiles
select all
all
Loading profiles...
custom CFs
selected. These have IDs starting custom: and won't resolve in TRaSH-Guides. Save locally for personal use, but don't include them in a Download meant for contribution.
Editing synced profile — Changes here modify the profile itself, which affects all sync rules using it. Use Save & Sync to apply changes to Arr, or Cancel to discard.
Initialize from
General
Language
Upgrades Allowed
Min Score
Min Upgrade Score
Cutoff Score
Score Set
Quality
Cutoff
Quality Preset
Quality Items
—
CF Group Variants
Golden Rule
Miscellaneous
Advanced fields
Trash IDScore SetGroup
Description
These CFs are added to the profile's formatItems — they are mandatory and always synced. End users cannot disable them.
ⓘ
ⓘ
No matching CFs found
CF Groups
Each group is an independent set of CFs. Use the toggle to include a group for this profile.
Use ReqOptFmt
to set each CF as Required, Optional, or move it to formatItems.
Please ensure you only score or enable one of them in your Quality Profile!
ⓘ
Loading Custom Formats...
Pull TRaSH data first to load Custom Formats
·
·
Edit Quality Items
— toggle on/off · drag to reorder · drop on a row to merge · ▶ to expand · click group name to rename
⋮⋮▶
empty group — drag a member here or click × delete
Required for this profile. Always included when syncing.
Groups
— toggle to include/exclude from sync
{ if (!cf.required) selectedOptionalCFs[cf.trashId] = $event.target.checked }); selectedOptionalCFs = {...selectedOptionalCFs}">
All
🔒
ⓘrecommended
Loading profile details...
Settings
Configure Clonarr — instances, TRaSH repository, Prowlarr, notifications, and display.
Instances
Connect your Radarr and Sonarr instances.
No instances configured. Add your first Radarr or Sonarr instance.
ConnectedFailedNot tested
TRaSH Guides
Repository settings and sync status.
Repository URL
Branch
Pull Interval
Auto-pull TRaSH data at this interval
Status
Commit
— Radarr: CFs, profiles
— Sonarr: CFs, profiles
Not cloned yet. Click Pull in the nav bar.
Prowlarr
Connect Prowlarr to enable release searching in the Scoring Sandbox.
Connection
Radarr categories
Category IDs for movie searches
Sonarr categories
Category IDs for TV searches
Leave blank for defaults. Add sub-IDs (e.g. 2000, 2040, 2045) if your indexer only tags specific sub-categories and root-only searches return no results.
Notifications
Auto-sync event notifications via Discord, Gotify, and Pushover.
No notification agents configured. Add Discord, Gotify, or Pushover to receive auto-sync alerts.
Display
UI appearance settings.
Theme
(matches OS)
UI Scale
Security
Authentication, API key, and password. Same pattern as Radarr/Sonarr.
Authentication
How users log in. Forms for most users. Basic behind a reverse proxy that handles login. None disables auth entirely — only safe behind another auth layer or on a machine not reachable from other devices.
Authentication Required
Enabled requires a password from every request including your LAN. Disabled for Trusted Networks lets devices on the networks listed below skip the login page.
Trusted Networks
Locked by TRUSTED_NETWORKS environment variable. To change the value, edit the Unraid template (or docker-compose.yml) and restart the container. Unsetting the env var unlocks this field.
IPs or CIDR subnets that skip login when Authentication Required is "Disabled for Trusted Networks". Every address in this list gets full admin access without a password.
Leave empty falls back to all private networks (10.x, 172.16-31.x incl. Docker bridges, 192.168.x, link-local, IPv6 ULA). Convenient but treats any container on your Docker host and any device on your home WiFi as admin.
Set explicitly to narrow: 192.168.86.0/24 (home VLAN), 10.66.0.0/24 (WireGuard), 192.168.86.22/32 (one device). Loopback is always trusted so healthchecks work.
Lock via env varTRUSTED_NETWORKS (comma-separated CIDRs) in the Unraid template to prevent this field from being changed through the UI — useful if you want host-level control over the trust boundary.
Trusted Proxies
Locked by TRUSTED_PROXIES environment variable. To change the value, edit the Unraid template (or docker-compose.yml) and restart the container.
Only needed if Clonarr runs behind a reverse proxy (SWAG, Authelia, etc). List the proxy's IP so X-Forwarded-For is trusted. Leave empty for direct access. Lock via env var TRUSTED_PROXIES in the Unraid template for host-level control.
Session TTL (days)
API Key
For scripts and Homepage widgets. Send as X-Api-Key: <key> header. Query parameter (?apikey=) also works but leaks to logs and browser history — prefer the header.
Change password
Current password
New password
At least 10 characters, with at least 2 of: uppercase, lowercase, digit, symbol.
Confirm new password
Changing your password signs out other sessions. You will remain logged in on this browser.
Advanced
Power-user features and debug logging. Enable only what you need.
Advanced Mode
Adds the Advanced tab (Profile Builder, Scoring Sandbox, CF Group Builder) and the Prowlarr integration settings.Active
Show TRaSH schema fields (CLONARR_DEV_FEATURES)
Surfaces trash_id, trash_scores, group number, and HTML description fields in CF editor, Profile Builder and CF Group Builder. For TRaSH-Guides contributors only.Active
URL Base
Set via URL_BASE env var. Restart to change.
Debug Logging
Write to /config/debug.log (max 1MB, auto-rotates)Include activity logDownload
About
Information about Clonarr, TRaSH Guides data, and credits.
TRaSH Guides
All quality profiles, custom format definitions, naming schemes, and quality size data used in this application
come from the TRaSH Guides project. Their comprehensive, community-maintained documentation for Radarr, Sonarr,
and related tools is what makes projects like this possible. A huge thank you to TRaSH and all contributors
for the incredible work they put into maintaining these guides.
Found unmanaged items out of total CFs.
( tagged for filename rendering — see info below)
ⓘ About filename-rendering CFs
Your file naming format on this instance contains {Custom Formats}.
The CFs marked rename tag below contribute their names to filenames Radarr/Sonarr renders after import (e.g. [AMZN], [v2]).
Deleting them removes those tags from future renames; existing files on disk are unaffected. If you re-sync any TRaSH or builder profile that includes them, they're recreated automatically.
ⓘ Filename-rendering CFs are inert here
Some CFs below have a "rename tag" flag, but your file naming format on this instance does not use the {Custom Formats} token, so the flag has no functional effect. Safe to delete.
Custom Format
Tag
rename tag
These CFs are referenced by one of your sync rules (selected, score-overridden, or required by the rule's TRaSH/builder profile). They cannot be deleted from this view. The "Used in profile(s)" column shows which Arr quality profile(s) currently have the CF at a non-zero score.
Custom Format
Used in profile(s)
Tag
— (in sync rule but not yet at non-zero score in any profile)
rename tag
This will permanently delete all custom formats and reset all scores to 0. This action cannot be undone.
This will delete all custom formats. Scores will be preserved in profiles so CFs can be re-added later.
Name
Type
URL
API Key
API key is saved — leave empty to keep it, or enter a new one to replace it.
A new quality profile will be created with CFs, scores, quality items, and cutoff
⚠ Profile "" already exists in . Choose a different name to create a separate profile, or use Update existing profile to sync changes to it.
Target Quality Profile in
CFs and scores will be synced according to the Custom Formats rules below. Use overrides on the profile page for score adjustments.
required CFs
+
Loading preview...
CFs to create
CFs to update
scores to set/update
extra scores will be zeroed
CFs unchanged
scores already correct
Custom Formats
Add
Scores
Reset
Auto-sync this profile
When TRaSH Guides updates, automatically sync changes to this instance
Export Profile
Copy this profile configuration to use in other tools or share with others.
Show group includes
Add these entries to each group's quality_profiles.include section to link this profile.
Import Profile
Paste or upload a profile configuration. Supports Recyclarr YAML, TRaSH JSON, and Clonarr JSON. Multiple profiles and both Radarr and Sonarr are detected automatically.
Drop .yml or .json files here or click to browse
Supports multiple files
✓
Profile name (optional — overrides name from source)
Config uses include files
Drop include files here or click to browse
✓
Backup Instance
What do you want to backup?
Select Profiles
Custom Formats
CFs with non-zero scores in selected profiles are auto-included. Optionally select additional score=0 CFs (info/naming CFs).
Select Custom Formats
Restore to Instance
Upload a Clonarr backup JSON file.
From: ()
Preview
,
Restore Complete
Target:
on
— TRaSH profile:
Release Details(selectable · copy for sharing)
t.id !== toast.id)">
Name *
⚠ guide
Sonarr/Radarr require unique CF names within an app, so this can't match another custom CF you already have. Names are case-sensitive (Arr's own rule), so PCOK and Pcok are distinct.
App Type
Category
Include in Rename
Yes
Specifications
Loading schema...
No specifications yet. Click "Add Spec" to add a matching rule.
Spec Name
Type
RequiredNegate
Match Logic
RequiredNOT
TRaSH schema fields
Trash ID
Trash Scores
Description (Markdown)
Export TRaSH JSON
TRaSH Guides format — use this to share custom formats or contribute to the guides.
Import Custom Formats
Import custom formats from an Arr instance or JSON. Imported CFs appear in the CF browser and are available in the profile builder.
Instance
Loading custom formats...
CFs found
( selected)
⚠ guide
Paste JSON (Arr CF format)
Imports name, specifications, and includeCustomFormatWhenRenaming. TRaSH-specific fields (trash_id, trash_scores) are intentionally not imported — the new CF lives as your own custom format, separate from the TRaSH guide data path.
You are about to turn off login for Clonarr. After this change, anyone who reaches this UI will be admin — they can modify your Radarr/Sonarr/Prowlarr API keys, change Discord webhooks to their own server, and read every notification token.
Pick this only if you have another authentication layer in front (Authelia, Cloudflare Access) or you are running on a machine that is not reachable from other devices.
A persistent red warning banner will be shown at the top of every page while authentication is disabled, and the server logs a warning every 60 seconds.