The documentation here is for an unreleased version of Recyclarr.
Visit the documentation site for the Current Version instead.Getting Started
This guide walks you through setting up Recyclarr to sync TRaSH Guide quality profiles to Radarr. By the end, you'll have a working quality profile with custom formats and proper media naming. No YAML expertise required.
Prerequisites
- Radarr is running and accessible (Sonarr setup is similar — just use
sonarrtemplates) - You know where to find your API key (Settings → General → Security)
Step 1: Install Recyclarr
Add the Recyclarr service to your existing Compose file (compose.yaml or docker-compose.yml), or
create a new compose.yaml:
services:
recyclarr:
image: ghcr.io/recyclarr/recyclarr:9
container_name: recyclarr
user: 1000:1000
restart: unless-stopped
environment:
- TZ=America/New_York
volumes:
- ./config:/config
Don't start the container yet. Recyclarr runs as a server that stays running, and it reads your configuration when it starts. You'll create that configuration in the next steps.
For networking, tags, and native installs, see the Installation Guide.
Step 2: Choose a Quality Profile
Recyclarr provides ready-to-use templates that match TRaSH Guide quality profiles. Browse them on the Quick Setup Templates page. Each matches a TRaSH Guides profile.
Step 3: Create Your Configuration
Create a config file from your chosen template. For example, to use the HD Bluray + WEB profile,
copy the contents of the HD Bluray + WEB template into a new file at
config/configs/hd-bluray-web.yml. Then update base_url and api_key:
radarr:
hd-bluray-web:
base_url: http://radarr:7878 # Your Radarr URL
api_key: your_api_key_here # Radarr → Settings → General → API Key
Optionally, add this line if you want Recyclarr to delete custom formats it previously synced but are no longer in your configuration:
delete_old_custom_formats: true
That's it. The template already includes the quality definition, quality profile, and custom formats from the TRaSH Guide.
Step 4: Start Recyclarr and Sync
Start the container in the background:
docker compose up -d
The server takes a few seconds to start. Wait until docker compose ps shows the container as
healthy. Recyclarr now syncs automatically once a day. To run your first sync right away:
docker exec recyclarr recyclarr sync
When you edit your configuration later, restart the container so Recyclarr reads the changes. Wait
until it is healthy again before you run recyclarr commands:
docker compose restart recyclarr
Step 5: Verify the Sync
Check these locations in the service to confirm the sync worked:
- Settings → Profiles — Your new quality profile appears ("HD Bluray + WEB")
- Settings → Custom Formats — New custom formats with scores assigned
- Settings → Quality — Size ranges updated for each quality level
Adding More Profiles
Want multiple quality profiles (e.g., both 1080p and 4K)? Add more guide-backed profiles to your existing config file.
Edit your hd-bluray-web.yml (or create a new config file) and add additional trash_id entries
under quality_profiles. Here's an example with four profiles:
radarr:
main:
base_url: http://radarr:7878
api_key: your_api_key_here
delete_old_custom_formats: true
quality_definition:
type: movie
quality_profiles:
# HD Bluray + WEB (1080p)
- trash_id: d1d67249d3890e49bc12e275d989a7e9 # HD Bluray + WEB
reset_unmatched_scores:
enabled: true
# UHD Bluray + WEB (4K)
- trash_id: 64fb5f9858489bdac2af690e27c8f42f # UHD Bluray + WEB
reset_unmatched_scores:
enabled: true
# Remux + WEB 1080p
- trash_id: 9ca12ea80aa55ef916e3751f4b874151 # Remux + WEB 1080p
reset_unmatched_scores:
enabled: true
# Remux + WEB 2160p
- trash_id: fd161a61e3ab826d3a22d53f935696dd # Remux + WEB 2160p
reset_unmatched_scores:
enabled: true
Each guide-backed profile pulls its quality profile settings and custom format scores directly from
the TRaSH Guides, so a single trash_id is all you need per profile.
Each template also includes commented-out custom_format_groups for optional CF groups like
streaming services and movie versions. See the Quick Setup Templates page for the full
template contents.
Restart the container:
docker compose restart recyclarr
When docker compose ps shows the container as healthy, sync again to create all profiles:
docker exec recyclarr recyclarr sync
Adding Media Naming
To sync TRaSH Guide naming formats, first see what's available:
docker exec recyclarr recyclarr list naming radarr
Then add a media_naming section to your config:
radarr:
main:
base_url: http://radarr:7878
api_key: your_api_key_here
quality_definition:
type: movie
quality_profiles:
- trash_id: d1d67249d3890e49bc12e275d989a7e9 # HD Bluray + WEB
reset_unmatched_scores:
enabled: true
# Results visible in: Radarr → Settings → Media Management
media_naming:
folder: plex-tmdb
movie:
rename: true
standard: plex-tmdb
When to Customize
The templates provide the full TRaSH Guide recommendation. For most users, that's everything you need.
You only need a custom_formats: section if you want to:
- Override a score — Change the default score for a specific custom format
- Add optional custom formats — Include CFs marked as "optional" in the TRaSH Guides
For customization examples, see the Configuration Examples page.
Next Steps
- Configuration Reference — All available settings
- Configuration Examples — Real-world configuration patterns
- Quick Setup Templates — Browse all available templates
- Secrets — Store API keys securely
- Docker Guide — Sync schedule, CLI commands, and the HTTP API
- CLI Reference — All commands and options
- File Structure — Where Recyclarr stores data