Skip to main content

The documentation here is for an unreleased version of Recyclarr.

Visit the documentation site for the Current Version instead.

Custom Formats

ServiceSupported
Sonarr (v4)
Radarr
# See "Basic Setup" for `service_type` and `instance_name`
service_type:
instance_name:
# Custom Format Configuration
delete_old_custom_formats: false
custom_formats:
- trash_ids:
- ed38b889b31be83fda192888e2286d83 # BR-DISK
- 90cedc1fea7ea5d11298bebd3d1d3223 # EVO (no WEBDL)
- 90a6f9a284dff5103f6346090e6280c8 # LQ
- dc98083864ea246d05a42df0d05f81cc # x265 (720/1080p)
assign_scores_to:
- name: HD-1080p
- trash_id: 64fb5f9858489bdac2af690e27c8f42f # UHD Bluray + WEB
score: -1000
- trash_ids:
- 496f355514737f7d83bf7aa4d24f8169 # TrueHD ATMOS
- 2f22d89048b01681dde8afe203bf2e95 # DTS X
assign_scores_to:
- name: SD

# Custom Format Groups (bundles of related CFs from the guide)
custom_format_groups:
- trash_id: d9cc9a504e5ede6294c8b973aad4f028 # Streaming Services - General
- trash_id: f4f1474b963b24cf983455743aa9906c # Movie Versions
assign_scores_to:
- trash_id: d1d67249d3890e49bc12e275d989a7e9 # HD Bluray + WEB
exclude:
- eecf3a857724171f968a66cb5719e152 # IMAX
- 9f6cbff8cfe4ebbc1bde14c7b7bec0de # IMAX Enhanced

Synchronization Behavior

Custom format synchronization is broken up into three categories:

  • Creation: Custom formats that are in the guide but do not exist in the service are created.
  • Updates: Custom formats that already exist in both the guide and the service but are different are updated.
  • Deletions: If deletions are allowed by having the delete_old_custom_formats configuration setting set to true, then custom formats in the service are deleted if they are removed from the guide or removed from your configuration file.
info

Recyclarr will never touch custom formats that you create by hand, unless they share a name with a custom format in the guide. In general, Recyclarr must have been the one to create a custom format in order to do anything to it (update or delete).

For details on how Recyclarr tracks custom formats it creates, see the Cache page.

delete_old_custom_formats

Optional. Default: false

If enabled, custom formats that you remove from your YAML configuration OR that are removed from the guide will be deleted from your Radarr instance.

info

This only applies to custom formats that Recyclarr has synchronized to Radarr. Custom formats that you have added manually in Radarr will not be deleted if you enable this setting.

custom_formats

Optional. Default: No custom formats are synced

A list of one or more sets of custom formats each with an optional set of quality profiles names that identify which quality profiles to assign the scores for those custom formats to. The child properties documented below apply to each element of this list.

trash_ids

Required.

A list of one or more Trash IDs of custom formats to synchronize. There are a couple of ways to obtain Trash IDs (listed in order of preference below). The Trash ID itself is a hash of hexadecimal characters, like 496f355514737f7d83bf7aa4d24f8169.

  • Most custom format pages in the TRaSH Guides (like this one) have either tables (with a Trash ID column) or a expandable "JSON" section. You can use these to obtain the Trash ID value.
  • From Recyclarr itself using the list custom-formats command.
  • Taken from the value of the "trash_id" property directly in the TRaSH Guide JSON files itself.
tip

To ease the readability concerns of using IDs, leave a comment beside the Trash ID in your configuration so it can be easily identified later. If you use list custom-formats, comments are added for you. For example:

trash_ids:
- 5d96ce331b98e077abb8ceb60553aa16 # dovi
- a570d4a0e56a2874b64e5bfa55202a1b # flac
A Few Things to Remember
  • If delete_old_custom_formats is set to true, custom formats are deleted in Radarr if you remove them from this list.
  • It's OK for the same custom format to exist in multiple lists of trash_ids. Recyclarr will only ever synchronize it once. Allowing it to be specified multiple times allows you to assign it to different profiles with different scores.

assign_scores_to

Optional. Default: No quality profiles are changed

One or more quality profiles to update with the scores from the custom formats listed above. Scores are taken from the guide by default, with an option to override the score for all of them. Profiles can be referenced by name or trash_id. Each object in the list must use one of these properties (but not both).

name

Conditionally Required. Required if trash_id is not specified.

The name of an existing quality profile. This name is not required to appear in the top-level quality_profiles list. If the profile name specified here does not exist, an error will be shown. If you want this profile to be created by Recyclarr, you must also add an entry for it in the previously mentioned quality_profiles list.

trash_id

Conditionally Required. Required if name is not specified.

The trash ID of a guide-backed quality profile. Use this instead of name when referencing profiles managed by Recyclarr through guide synchronization. This is useful because guide-backed profile names may change with guide updates, while the trash ID remains stable.

score

Optional. Default: Use scores from the guide

A positive or negative number representing the score to apply to all custom formats listed in the trash_ids list. A score of 0 is also acceptable, which effectively disables the custom formats without having to delete them.

custom_format_groups

Optional. Default: No CF groups are synced

A list of custom format groups from the TRaSH Guides. Groups bundle related custom formats with guide-recommended scores, simplifying configuration compared to listing individual custom formats.

Groups are fully opt-in: you must explicitly list each group you want. The default flags in the TRaSH Guide JSON (at both group and CF level) are intentionally ignored, giving you complete control over what gets synced. When you add a group, all its custom formats sync—both required and optional. Groups are additive, so you can combine multiple related groups (e.g., several HDR format groups) without conflict.

Groups vs Individual Custom Formats

Use custom_format_groups to adopt curated sets of related custom formats with guide-recommended scores. Use custom_formats when you need fine-grained control over individual custom formats, want to override scores, or need to assign to user-defined profiles.

trash_id

Required.

The trash ID of a custom format group from the TRaSH Guides. Group trash IDs can be discovered using the list custom-format-groups command or found in the TRaSH Guide CF group JSON files.

assign_scores_to

Optional. Default: All applicable guide-backed quality profiles

One or more quality profiles to assign the group's custom format scores to. Unlike custom_formats.assign_scores_to, this property only accepts trash_id references to guide-backed quality profiles, not profile names.

When omitted, scores are assigned to guide-backed quality profiles in your configuration (those with a trash_id property), except profiles the group excludes. User-defined profiles (those with only a name) do not receive scores from groups.

Each group in the TRaSH Guides excludes incompatible quality profiles. For example, HDR groups exclude HD profiles since HDR is a UHD feature. These exclusions are enforced even when you explicitly specify assign_scores_to—referencing an excluded profile results in a validation error.

trash_id

Required.

The trash ID of a guide-backed quality profile.

exclude

Optional. Default: No custom formats are excluded

A list of custom format trash IDs to exclude from this group. Use this to opt out of specific custom formats while syncing the rest of the group.

warning

You cannot exclude custom formats marked as required by the TRaSH Guides. Attempting to do so results in a validation error. If you find yourself wanting to exclude required custom formats, consider whether the group fits your needs—you may be better served by selecting individual custom formats via custom_formats instead.