Skip to content

How to setup Language Custom Formats

Here we will explain how to setup your own preferred language Custom Format, with a few examples.

Using language Custom Formats is not compatible with setting a preferred language in a quality profile in Radarr. You must use one or the other.
If you want to make use of the Custom Formats set the preferred language to Any.

Sonarr doesn't have a preferred language in the quality profile, so this can be ignored if you're setting this up with Sonarr

Language Examples

Import the JSON in to your Custom Formats.

How ?

Follow the How to import Custom Formats.


Language: Original Only

Language: Not Original

This is one of the most common one used besides the English only one.

With this Custom Format you will get only the Movie/TV Show with the original language.

For this we're going to make use of so called reverse scoring.

Add the following json to your Radarr/Sonarr with a score in your profile of -10000.

JSON - [Click to show/hide]
{
  "trash_id": "guide-only",
  "trash_scores": {
    "default": -10000
  },
  "trash_description": "Language: Original Only",
  "name": "Language: Not Original",
  "includeCustomFormatWhenRenaming": false,
  "specifications": [
    {
      "name": "Not Original Language",
      "implementation": "LanguageSpecification",
      "negate": true,
      "required": false,
      "fields": {
        "value": -2
      }
    }
  ]
}

Tip

Don't forget to take a look at Language Special Cases


Language: English Only

Language: Not English

With this Custom Format you will only get the Movie/TV Show in the English language.

For languages other than English, replace the English condition with language of your choice.

For this we're going to make use of so called reverse scoring.

Add the following json to your Radarr/Sonarr with a score in your profile of -10000.

JSON - [Click to show/hide]
{
  "trash_id": "guide-only",
  "trash_scores": {
    "default": -10000
  },
  "trash_description": "Language: English Only",
  "name": "Language: Not English",
  "includeCustomFormatWhenRenaming": false,
  "specifications": [
    {
      "name": "Not English Language",
      "implementation": "LanguageSpecification",
      "negate": true,
      "required": false,
      "fields": {
        "value": 1
      }
    }
  ]
}

Tip

Don't forget to take a look at Language Special Cases


Language: Multiple Only

Language: Not Dutch

In some case you need multiple languages in your Custom Format for different reasons,

in this example I will use Dutch and Flemish being a lot of Movies/TV Shows are collaborate made between the 2 countries/studio's.

With this Custom Format you will only get the Movie/TV Show with Dutch and/or Flemish Audio.

For languages other than Dutch/Flemish, replace the Dutch/Flemish condition with language of your choice.

For this we're going to make use of so called reverse scoring.

Add the following json to your Radarr/Sonarr with a score in your profile of -10000.

JSON - [Click to show/hide]
{
  "trash_id": "guide-only",
  "trash_scores": {
    "default": -10000
  },
  "trash_description": "Language: Multiple Only",
  "name": "Language: Not Dutch",
  "includeCustomFormatWhenRenaming": false,
  "specifications": [
    {
      "name": "Not Dutch Language",
      "implementation": "LanguageSpecification",
      "negate": true,
      "required": true,
      "fields": {
        "value": 7
      }
    },
    {
      "name": "Not Flemish Language",
      "implementation": "LanguageSpecification",
      "negate": true,
      "required": true,
      "fields": {
        "value": 19
      }
    }
  ]
}

Language: Prefer X but i'll take Y

Language: Not Original or German
Language: Prefer German

Let's say you want German, but if German is not available then fall back to Original language but don't accept any other translated languages.

For languages other than German, replace the German condition with language of your choice.

Add the following json to your Radarr/Sonarr with a score in your profile of -10000.

JSON - [Click to show/hide]
{
  "trash_id": "guide-only",
  "trash_scores": {
    "default": -10000
  },
  "trash_description": "Language: Prefer X but i'll take Y",
  "name": "Language: Not Original or German",
  "includeCustomFormatWhenRenaming": false,
  "specifications": [
    {
      "name": "Not Original",
      "implementation": "LanguageSpecification",
      "negate": true,
      "required": true,
      "fields": {
        "value": -2
      }
    },
    {
      "name": "Not German",
      "implementation": "LanguageSpecification",
      "negate": true,
      "required": true,
      "fields": {
        "value": 4
      }
    }
  ]
}

Add the following json to your Radarr/Sonarr with a score in your profile of 10.

JSON - [Click to show/hide]
{
  "trash_id": "guide-only",
  "trash_scores": {
    "default": 10
  },
  "trash_description": "Prefer Language X",
  "name": "Language: Prefer German",
  "includeCustomFormatWhenRenaming": false,
  "specifications": [
    {
      "name": "German Language",
      "implementation": "LanguageSpecification",
      "negate": false,
      "required": false,
      "fields": {
        "value": 4
      }
    }
  ]
}

Tip

Don't forget to take a look at Language Special Cases


Language: Prefer Language X

Language: Prefer German

Let's say you just want to prefer German and don't care if you get another random language(s).

For languages other than German, replace the German condition with language of your choice.

Add the following json to your Radarr/Sonarr with a score in your profile of 10.

JSON - [Click to show/hide]
{
  "trash_id": "guide-only",
  "trash_scores": {
    "default": 10
  },
  "trash_description": "Prefer Language X",
  "name": "Language: Prefer German",
  "includeCustomFormatWhenRenaming": false,
  "specifications": [
    {
      "name": "German Language",
      "implementation": "LanguageSpecification",
      "negate": false,
      "required": false,
      "fields": {
        "value": 4
      }
    }
  ]
}

Tip

Don't forget to take a look at Language Special Cases


Language: Prefer Multi Language

Language: Prefer Dutch

In some case you may want prefer multiple languages in your Custom Format.

With this Custom Format you will only get the Movie/TV Show with either Preferred Language.

In this example I will use Dutch and Flemish since a lot of Movies/TV Shows since there is a lot of collaboration between the two countries/studio's.

For languages other than Dutch/Flemish, replace the Dutch/Flemish condition with language of your choice.

Add the following json to your Radarr/Sonarr with a score in your profile of 10.

JSON - [Click to show/hide]
{
  "trash_id": "guide-only",
  "trash_scores": {
    "default": 10
  },
  "trash_description": "Prefer Multiple",
  "name": "Language: Prefer Dutch",
  "includeCustomFormatWhenRenaming": false,
  "specifications": [
    {
      "name": "Dutch Language",
      "implementation": "LanguageSpecification",
      "negate": false,
      "required": false,
      "fields": {
        "value": 7
      }
    },
    {
      "name": "Flemish Language",
      "implementation": "LanguageSpecification",
      "negate": false,
      "required": false,
      "fields": {
        "value": 19
      }
    }
  ]
}

Language Special Cases

Here we will add special cases that often are related to specific languages. example: German Dual Language and/or Multi-language releases

In general, Dual/Multi in a release title stands for original language (movies/show original language) + foreign language(s). Which audio track is used for the first track isn't always known based solely on the naming.

Language: German + Original

This Custom Format can be used in two ways:

  • If you DON'T WANT your media file to have a German audio track included, add this Custom Format with a score of -10000.
  • If you PREFER your media file to have a German audio track included, add this Custom Format with a positive score.

Language: German Dual Language

JSON - [Click to show/hide]
{
  "trash_id": "guide-only",
  "trash_scores": {
    "default": -10000
  },
  "trash_description": "Language: German Dual and Multi language releases",
  "name": "Language: German + Original",
  "includeCustomFormatWhenRenaming": false,
  "specifications": [
    {
      "name": "German",
      "implementation": "LanguageSpecification",
      "negate": false,
      "required": true,
      "fields": {
        "value": 4
      }
    },
    {
      "name": "DL",
      "implementation": "ReleaseTitleSpecification",
      "negate": false,
      "required": false,
      "fields": {
        "value": "(?<!WEB[-_. ]?)\\b(DL)\\b"
      }
    },
    {
      "name": "ML",
      "implementation": "ReleaseTitleSpecification",
      "negate": false,
      "required": false,
      "fields": {
        "value": "\\b(ML)\\b"
      }
    }
  ]
}

FAQ & INFO

What's reverse scoring

What's reverse scoring? - [Click to show/hide]

With reverse scoring you add a Custom Format with a score of -10000 and your preferred condition you negate.

So in the case of the following Custom Format Language: Original Only, it will actually match all Not Original releases and give it a score of -10000.

Prefer language X over language Y

Prefer language X over language Y - [Click to show/hide]

If you want to prefer Prefer language X over language Y,

you add for example: Language: Prefer Language X with a score of 10, and add Language: Prefer Language Y with score of 9.

Which scores you should use depends on how important the language is compared to other Custom Formats you're using.

What's Original Language

What's Original Language? - [Click to show/hide]

Original Language is the language in which a Movie/TV Show was originally made.

Where does Radarr get the Original Language from

Where does Radarr get the Original Language from? - [Click to show/hide]

Radarr makes use of The Movie Database (TMDB). As of February 12, 2023, Radarr has updated its metadata cache to use a movie's spoken language from TMDb as the original language, but only when there is a single spoken language listed for that movie on TMDb. In cases where multiple spoken languages are listed, Radarr will use the movie's designated original language from TMDb.

!The Movie Database (TMDB) Original Language

Where does Sonarr get the Original Language from

Where does Sonarr get the Original Language from? - [Click to show/hide]

Sonarr makes use of TheTVDB.

!TheTVDB Original Language


Questions or Suggestions?

If you have questions or suggestions, click the button below to join our Discord server.

Click For Support