Skip to main content

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, select_all, and 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 listed in select or included via select_all.

The formula for which CFs are included is: required CFs, plus default CFs minus exclude, plus select (or all non-required CFs when select_all is true). Most groups work without any of these properties; 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.

Selecting All CFs in a Group​

Some groups contain only optional CFs with no defaults (like "[Optional] Miscellaneous" or "[Optional] Movie Versions"). Adding these groups without any configuration syncs nothing because there are no defaults to include. Rather than listing every CF individually in select, use select_all to include all non-required CFs at once:

custom_format_groups:
add:
- trash_id: f4a0410a1df109a66d6e47dcadcce014 # [Optional] Miscellaneous
select_all: true
exclude:
- c9eafd50846d299b862ca9bb6ea91950 # x265
- cddfb4e32db826151d97352b8e37c648 # x264

When the guide adds new CFs to this group, they are automatically included without config changes. Use exclude to subtract any you do not want. select_all is mutually exclusive with select; specifying both produces a validation error.

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.

Targeting a Specific Variant​

When multiple profiles share the same trash_id (profile variants), default CF groups automatically apply to all of them. To assign a group to only one variant, use assign_scores_to with the variant's name:

quality_profiles:
- trash_id: d1498e7d189fbe6c7110ceaabb7473e6
name: WEB-2160p
- trash_id: d1498e7d189fbe6c7110ceaabb7473e6
name: WEB-2160p (AMZN DV)

custom_format_groups:
add:
- trash_id: e9a1944a254e6f8a9da63083f7ae15cb # Audio Formats
assign_scores_to:
- name: WEB-2160p (AMZN DV)

Here, the Audio Formats group syncs only to the AMZN DV variant. Meanwhile, default groups that include WEB-2160p in their compatibility list still apply to both variants automatically.

With profile variants, you must use name in assign_scores_to to target a specific variant. See trash_id for variant naming rules.

Finding Group IDs​

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

recyclarr list custom-format-groups radarr

Each group is displayed as a panel showing its custom formats (with required/default flags) and associated quality profiles. Use --filter to narrow results by group name:

recyclarr list custom-format-groups radarr --filter audio