# Duration outliers (/docs/rules/duration-outlier)

Reports clips far longer or shorter than the other clips.



{/* Generated by scripts/generate-docs.ts. Do not edit. */}

| Property         | Value                                                                                     |
| :--------------- | :---------------------------------------------------------------------------------------- |
| Id               | `duration-outlier`                                                                        |
| Category         | Global consistency                                                                        |
| Default severity | info                                                                                      |
| Scope            | [`duration-outliers`](/docs/reference/computed-scopes#duration-outliers) (computed scope) |

## Options [#options]

| Option     | Type     | Default   | Description                                                                                                         |
| :--------- | :------- | :-------- | :------------------------------------------------------------------------------------------------------------------ |
| `maxZ`     | `number` | `3.5`     | Modified z-score of the log duration above which a clip is reported.                                                |
| `minClips` | `number` | `8`       | Populations smaller than this are insufficient data and are not analysed.                                           |
| `scope`    | `string` | `"track"` | "track" compares clips with the other clips on the same track; "sequence" with every eligible clip of the sequence. |

## Customize it [#customize-it]

Turn the rule on or off in the panel's Rules settings. To change its options, severity or wording, open it with its cogwheel in the rule editor and save: your copy replaces the built-in rule until you revert it. You can also copy the file below into your rules folder as `duration-outlier.rule.json` and edit it. See [Change a built-in rule](/docs/editor/saving#change-a-built-in-rule).

## Rule file [#rule-file]

```json title="duration-outlier.rule.json"
{
  "formatVersion": 1,
  "id": "duration-outlier",
  "name": {
    "en_US": "Duration outliers",
    "de_DE": "Abweichende Dauer",
    "es_ES": "Duraciones atípicas",
    "fr_FR": "Durées atypiques",
    "it_IT": "Durate anomale",
    "ja_JP": "デュレーションの外れ値",
    "ko_KR": "지속 시간 이상값",
    "pt_BR": "Durações atípicas",
    "ru_RU": "Нетипичная длительность",
    "zh_CN": "持续时间异常"
  },
  "description": {
    "en_US": "Reports clips far longer or shorter than the other clips.",
    "de_DE": "Meldet Clips, die deutlich länger oder kürzer als die anderen Clips sind.",
    "es_ES": "Detecta clips mucho más largos o más cortos que los demás.",
    "fr_FR": "Signale les éléments bien plus longs ou plus courts que les autres éléments.",
    "it_IT": "Segnala le clip molto più lunghe o più corte delle altre clip.",
    "ja_JP": "他のクリップよりはるかに長いクリップまたは短いクリップを報告します。",
    "ko_KR": "다른 클립보다 훨씬 길거나 짧은 클립을 보고합니다.",
    "pt_BR": "Relata clipes muito mais longos ou mais curtos que os outros clipes.",
    "ru_RU": "Сообщает о клипах, намного более длинных или коротких, чем остальные клипы.",
    "zh_CN": "报告远长于或远短于其他剪辑的剪辑。"
  },
  "category": "global-consistency",
  "scope": "duration-outliers",
  "severity": "info",
  "options": {
    "maxZ": {
      "type": "number",
      "default": 3.5,
      "description": "Modified z-score of the log duration above which a clip is reported."
    },
    "minClips": {
      "type": "number",
      "default": 8,
      "description": "Populations smaller than this are insufficient data and are not analysed."
    },
    "scope": {
      "type": "string",
      "default": "track",
      "description": "\"track\" compares clips with the other clips on the same track; \"sequence\" with every eligible clip of the sequence."
    }
  },
  "checks": [
    {
      "condition": {
        "field": "outlier.z",
        "operator": "greaterThan",
        "value": {
          "field": "options.maxZ"
        }
      },
      "message": {
        "en_US": "Clip \"{clip.name}\" on {clip.track} lasts {outlier.durationSeconds} s, far longer than the typical {outlier.typicalSeconds} s of {labels.population}.",
        "de_DE": "Clip „{clip.name}“ auf {clip.track} dauert {outlier.durationSeconds} s, deutlich länger als der typische Wert ({outlier.typicalSeconds} s) von {labels.population}.",
        "es_ES": "Clip \"{clip.name}\" en {clip.track} dura {outlier.durationSeconds} s, mucho más que la duración típica ({outlier.typicalSeconds} s) de {labels.population}.",
        "fr_FR": "Élément « {clip.name} » sur {clip.track} dure {outlier.durationSeconds} s, bien plus que la durée typique ({outlier.typicalSeconds} s) de {labels.population}.",
        "it_IT": "Clip \"{clip.name}\" su {clip.track} dura {outlier.durationSeconds} s, molto più della durata tipica di {outlier.typicalSeconds} s di {labels.population}.",
        "ja_JP": "クリップ「{clip.name}」（{clip.track}）の長さは{outlier.durationSeconds} sで、{labels.population}の標準的な長さ（{outlier.typicalSeconds} s）よりはるかに長くなっています。",
        "ko_KR": "{clip.track}의 클립 \"{clip.name}\"의 길이({outlier.durationSeconds} s)가 {labels.population}의 일반적인 길이({outlier.typicalSeconds} s)보다 훨씬 깁니다.",
        "pt_BR": "Clipe \"{clip.name}\" em {clip.track} dura {outlier.durationSeconds} s, muito mais que a duração típica de {outlier.typicalSeconds} s de {labels.population}.",
        "ru_RU": "Клип «{clip.name}» на {clip.track} длится {outlier.durationSeconds} с, намного дольше типичной длительности {outlier.typicalSeconds} с для {labels.population}.",
        "zh_CN": "{clip.track} 上的剪辑“{clip.name}” 时长为 {outlier.durationSeconds} s，远长于{labels.population}的典型时长 {outlier.typicalSeconds} s。"
      }
    },
    {
      "condition": {
        "all": [
          {
            "field": "outlier.absZ",
            "operator": "greaterThan",
            "value": {
              "field": "options.maxZ"
            }
          },
          {
            "field": "outlier.z",
            "operator": "lessThan",
            "value": 0
          }
        ]
      },
      "message": {
        "en_US": "Clip \"{clip.name}\" on {clip.track} lasts {outlier.durationSeconds} s, far shorter than the typical {outlier.typicalSeconds} s of {labels.population}.",
        "de_DE": "Clip „{clip.name}“ auf {clip.track} dauert {outlier.durationSeconds} s, deutlich kürzer als der typische Wert ({outlier.typicalSeconds} s) von {labels.population}.",
        "es_ES": "Clip \"{clip.name}\" en {clip.track} dura {outlier.durationSeconds} s, mucho menos que la duración típica ({outlier.typicalSeconds} s) de {labels.population}.",
        "fr_FR": "Élément « {clip.name} » sur {clip.track} dure {outlier.durationSeconds} s, bien moins que la durée typique ({outlier.typicalSeconds} s) de {labels.population}.",
        "it_IT": "Clip \"{clip.name}\" su {clip.track} dura {outlier.durationSeconds} s, molto meno della durata tipica di {outlier.typicalSeconds} s di {labels.population}.",
        "ja_JP": "クリップ「{clip.name}」（{clip.track}）の長さは{outlier.durationSeconds} sで、{labels.population}の標準的な長さ（{outlier.typicalSeconds} s）よりはるかに短くなっています。",
        "ko_KR": "{clip.track}의 클립 \"{clip.name}\"의 길이({outlier.durationSeconds} s)가 {labels.population}의 일반적인 길이({outlier.typicalSeconds} s)보다 훨씬 짧습니다.",
        "pt_BR": "Clipe \"{clip.name}\" em {clip.track} dura {outlier.durationSeconds} s, muito menos que a duração típica de {outlier.typicalSeconds} s de {labels.population}.",
        "ru_RU": "Клип «{clip.name}» на {clip.track} длится {outlier.durationSeconds} с, намного короче типичной длительности {outlier.typicalSeconds} с для {labels.population}.",
        "zh_CN": "{clip.track} 上的剪辑“{clip.name}” 时长为 {outlier.durationSeconds} s，远短于{labels.population}的典型时长 {outlier.typicalSeconds} s。"
      }
    }
  ],
  "labels": {
    "population": {
      "field": "outlier.populationIsTrack",
      "values": {
        "true": {
          "en_US": {
            "count": "outlier.populationSize",
            "one": "{outlier.populationSize} clip on {outlier.populationKey}",
            "other": "{outlier.populationSize} clips on {outlier.populationKey}"
          },
          "de_DE": {
            "count": "outlier.populationSize",
            "one": "{outlier.populationSize} Clip auf {outlier.populationKey}",
            "other": "{outlier.populationSize} Clips auf {outlier.populationKey}"
          },
          "es_ES": {
            "count": "outlier.populationSize",
            "one": "{outlier.populationSize} clip en {outlier.populationKey}",
            "other": "los {outlier.populationSize} clips en {outlier.populationKey}"
          },
          "fr_FR": {
            "count": "outlier.populationSize",
            "one": "{outlier.populationSize} élément sur {outlier.populationKey}",
            "other": "{outlier.populationSize} éléments sur {outlier.populationKey}"
          },
          "it_IT": {
            "count": "outlier.populationSize",
            "one": "{outlier.populationSize} clip su {outlier.populationKey}",
            "other": "{outlier.populationSize} clip su {outlier.populationKey}"
          },
          "ja_JP": "{outlier.populationKey}の{outlier.populationSize}個のクリップ",
          "ko_KR": "{outlier.populationKey}의 클립 {outlier.populationSize}개",
          "pt_BR": {
            "count": "outlier.populationSize",
            "one": "{outlier.populationSize} clipe em {outlier.populationKey}",
            "other": "{outlier.populationSize} clipes em {outlier.populationKey}"
          },
          "ru_RU": {
            "count": "outlier.populationSize",
            "one": "{outlier.populationSize} клипа на {outlier.populationKey}",
            "few": "{outlier.populationSize} клипов на {outlier.populationKey}",
            "many": "{outlier.populationSize} клипов на {outlier.populationKey}",
            "other": "{outlier.populationSize} клипа на {outlier.populationKey}"
          },
          "zh_CN": "{outlier.populationKey} 上的 {outlier.populationSize} 个剪辑"
        },
        "false": {
          "en_US": {
            "count": "outlier.populationSize",
            "one": "{outlier.populationSize} clip in the sequence",
            "other": "{outlier.populationSize} clips in the sequence"
          },
          "de_DE": {
            "count": "outlier.populationSize",
            "one": "{outlier.populationSize} Clip in der Sequenz",
            "other": "{outlier.populationSize} Clips in der Sequenz"
          },
          "es_ES": {
            "count": "outlier.populationSize",
            "one": "{outlier.populationSize} clip de la secuencia",
            "other": "los {outlier.populationSize} clips de la secuencia"
          },
          "fr_FR": {
            "count": "outlier.populationSize",
            "one": "{outlier.populationSize} élément de la séquence",
            "other": "{outlier.populationSize} éléments de la séquence"
          },
          "it_IT": {
            "count": "outlier.populationSize",
            "one": "{outlier.populationSize} clip nella sequenza",
            "other": "{outlier.populationSize} clip nella sequenza"
          },
          "ja_JP": "シーケンス内の{outlier.populationSize}個のクリップ",
          "ko_KR": "시퀀스의 클립 {outlier.populationSize}개",
          "pt_BR": {
            "count": "outlier.populationSize",
            "one": "{outlier.populationSize} clipe na sequência",
            "other": "{outlier.populationSize} clipes na sequência"
          },
          "ru_RU": {
            "count": "outlier.populationSize",
            "one": "{outlier.populationSize} клипа в эпизоде",
            "few": "{outlier.populationSize} клипов в эпизоде",
            "many": "{outlier.populationSize} клипов в эпизоде",
            "other": "{outlier.populationSize} клипа в эпизоде"
          },
          "zh_CN": "序列中的 {outlier.populationSize} 个剪辑"
        }
      }
    }
  },
  "data": {
    "durationTicks": "outlier.durationTicks",
    "typicalTicks": "outlier.typicalTicks",
    "z": "outlier.z",
    "maxZ": "options.maxZ",
    "population": "outlier.populationKey",
    "populationSize": "outlier.populationSize"
  }
}
```
