Skip to main content

The documentation here is for an unreleased version of Recyclarr.

Visit the documentation site for the Current Version instead.

Custom Format Groups

Custom format groups bundle related custom formats with guide-recommended scores. Instead of listing dozens of individual custom formats, groups give you curated sets that work together.

Auto-Sync with Guide-Backed Profiles

When you use a guide-backed quality profile (one with a trash_id), Recyclarr automatically syncs CF groups that are marked as defaults for that profile. This means most users need no custom_format_groups configuration at all.

For example, if you configure:

radarr:
movies:
quality_profiles:
- trash_id: 64fb5f9858489bdac2af690e27c8f42f # UHD Bluray + WEB

Recyclarr automatically syncs default groups like Audio Formats, HDR Formats, and Golden Rule UHD because the TRaSH Guide marks these as defaults for the UHD Bluray + WEB profile.

Use custom_format_groups only when you need to customize this behavior:

  • skip — Opt-out of groups you don't want
  • add — Opt-in to non-default groups, or customize which CFs sync with select/exclude

When to Use Groups vs Individual CFs

Groups handle curated sets of related custom formats:

  • Audio codec formats (TrueHD, DTS-HD, Atmos, etc.)
  • HDR formats (DV, HDR10+, HDR10, etc.)
  • Streaming service identification
  • Unwanted release types (LQ, scene, etc.)

Use custom_formats instead when you need fine-grained control or want to override individual scores.

How CF Selection Works

Which custom formats sync from a group depends on flags set in the TRaSH Guide JSON:

Flag in GuideBehavior
required: trueAlways synced. Cannot be excluded or deselected.
default: trueSynced automatically. Can be removed with exclude.
No flagNot synced unless explicitly listed in select.

The formula for which CFs are included is: required CFs, plus default CFs minus exclude, plus select. Most groups work without either property; you get all required and default CFs automatically.

Usage Patterns

Opting Out of a Default Group

If an auto-synced group doesn't fit your needs, use skip to exclude it:

custom_format_groups:
skip:
- 9d5acd8f1da78dfbae788182f7605200 # Audio Formats

The group won't sync even though your quality profile would normally include it.

Adding a Non-Default Group

Some groups aren't marked as defaults but you may want them. Use add to opt-in:

custom_format_groups:
add:
- trash_id: f737e18b5824d6ebb2d57b957ae2fd6c # Streaming Services (UK)

All required and default CFs from that group sync automatically.

Excluding Default CFs

Use exclude to remove specific default CFs from a group:

custom_format_groups:
add:
- trash_id: ff204bbcecdd487d1cefcefdbf0c278d # Golden Rule UHD
exclude:
- dc98083864ea246d05a42df0d05f81cc # x265 (HD)

All other defaults (and required CFs) still sync. Required CFs cannot be excluded.

Adding Non-Default CFs

Use select to include CFs that aren't part of the group's defaults:

custom_format_groups:
add:
- trash_id: 9337080378236ce4c0b183e35790d2a7 # Miscellaneous
select:
- 7357cf5161efbf8c4d5d0c30b4815ee2 # Obfuscated
- f537cf427b64c38c8e36298f657e4828 # Scene

The selected CFs are added alongside required and default CFs.

Combining Select and Exclude

select and exclude compose together. For groups with mutually exclusive alternatives where the guide picks one as the default, use both to swap them:

custom_format_groups:
add:
- trash_id: ff204bbcecdd487d1cefcefdbf0c278d # Golden Rule UHD
exclude:
- dc98083864ea246d05a42df0d05f81cc # x265 (HD)
select:
- 839bea857ed2c0a8e084f3cbdbd65ecb # x265 (no HDR/DV)

A CF cannot appear in both select and exclude.

Assigning Scores to Custom Profiles

Auto-sync only targets guide-backed profiles. To assign group scores to a user-defined profile (one with only a name), use assign_scores_to with the profile name:

custom_format_groups:
add:
- trash_id: f737e18b5824d6ebb2d57b957ae2fd6c # Streaming Services (UK)
assign_scores_to:
- name: HD-1080p

You can mix guide-backed and custom profiles in the same list:

custom_format_groups:
add:
- trash_id: f737e18b5824d6ebb2d57b957ae2fd6c # Streaming Services (UK)
assign_scores_to:
- trash_id: 64fb5f9858489bdac2af690e27c8f42f # UHD Bluray + WEB
- name: HD-1080p

The custom profile must exist in your quality_profiles configuration.

Finding Group IDs

Use the list custom-format-groups command to discover available groups and their trash IDs:

recyclarr list custom-format-groups radarr

The output shows each group's name, trash ID, and the CFs it contains.