CF Score
The CF Score pipeline finds monitored files where the custom format score is below the quality profile cutoff and tells your Arrs to search for a better-scored release.
What it does
Cutoff Unmet handles quality tier upgrades — moving from 720p to 1080p, for example. CF Score handles a different problem: you already have the right quality tier, but the specific release does not score well against your custom format rules.
For example, a movie might be grabbed as a 1080p Blu-ray which satisfies the quality cutoff, but your custom formats prefer a specific audio codec or release group that the grabbed file does not have. Radarr and Sonarr never surface this through their normal wanted system — as far as they are concerned, the item is done. CF Score Scan finds these files directly from the quality profile scoring and brings them back into the search pipeline.
Both Radarr and Sonarr are supported.
Enabling CF Score
CF Score is off by default. To enable it:
- Open the Advanced tab
- Under Pipelines, toggle CF Score Scan to on
- The CF Score tab appears in the navigation
- Open the CF Score tab and click Scan Library to build the initial index
- Save your CF Score Max settings on the CF Score tab and save
The pipeline remains dormant until it is explicitly enabled. No background activity runs while it is off.
How the index is built
CF Score uses a two-job architecture:
The syncer runs on its own schedule (default: every 24 hours) and also immediately when you click Scan Library. It:
- Fetches all quality profiles from each instance once to read
cutoffFormatScoreper profile - For Radarr: fetches all monitored movies that have a file, then batch-fetches their custom format scores in groups of 100
- For Sonarr: fetches all monitored series, then per series fetches episode files (custom format scores are present directly on episode file objects)
- Writes an entry for any file where
current_score < cutoffFormatScoreandcurrent_score >= minFormatScore - Prunes entries for items that no longer qualify (deleted, unmonitored, score improved naturally)
The sweep pipeline reads from this index during each sweep, applies cooldown and exclusion filters, and tells the Arr to search for the chosen items.
The syncer and sweep never run simultaneously — the syncer defers if a sweep is in progress.
Sonarr requirement
For Sonarr, CF Score only indexes episodes where the quality profile has a non-zero cutoffFormatScore. If you have not set a custom format score cutoff in your Sonarr quality profiles, the syncer will find zero eligible episodes regardless of what custom formats are configured. This is not a bug — without a cutoff score there is no threshold to search toward.
To use CF Score with Sonarr, open Sonarr, go to Settings > Profiles, edit each quality profile you want covered, and set a minimum custom format score cutoff value.
Settings
CF Score settings live on the CF Score tab itself, not in the Settings tab.
| Setting | Default | Description |
|---|---|---|
| Radarr CF Score Max (Per Instance) | 1 | Maximum CF Score items to nudge per Radarr instance per sweep. Minimum value is 1 — there is no all-eligible mode for CF Score. |
| Sonarr CF Score Max (Per Instance) | 1 | Maximum CF Score items to nudge per Sonarr instance per sweep. Minimum value is 1. |
| Sync Interval (Hours) | 24 | How often the syncer automatically re-builds the index. |
The Scan Library button triggers an immediate full re-sync on all instances. Use this after initial setup or after making significant changes to your custom format rules or quality profiles.
The Reset CF Index button clears the entire index. The next sync or Scan Library will rebuild it from scratch.
The CF Score tab
The CF Score tab shows the current state of the index and the results of the most recent CF Score sweeps.
Coverage section
One row per configured instance showing:
- Instance name and app badge
- Sync progress percentage during an active scan
- Items indexed (total files in the index for this instance)
- Items below cutoff (eligible for searching this sweep)
The Last Synced indicator shows when the most recent sync completed. A grey dot means the index has never been synced for that instance.
Table
A sortable table of all items currently in the index, ordered worst gap first by default (largest difference between current score and cutoff score at the top). Columns:
| Column | Description |
|---|---|
| Title | Click to open the item in Radarr or Sonarr |
| Instance | Which instance this item belongs to |
| Profile | Quality profile name |
| Score | Current custom format score |
| Cutoff | The profile's cutoffFormatScore threshold |
| Gap | Difference between cutoff and current score |
You can filter by instance using the dropdown, search by title, and change the page size.
Filters and CF Score
If you have tag or profile filters configured for an instance in the Filters tab, those same filters apply to the CF Score index. Items with excluded tags or profiles are never written to the index and will not be searched by the CF Score pipeline.
If you change your filters, a popup appears asking whether you want to re-sync the index immediately so the filter changes take effect. You can also click Scan Library manually at any time.
Relationship to Cutoff Unmet
CF Score and Cutoff Unmet are independent pipelines that can both be active for the same item simultaneously. An item that is both below quality cutoff and below CF score cutoff will appear in both the Cutoff Unmet wanted list and the CF Score index. The Cutoff Unmet pipeline takes priority in a sweep — if a Cutoff Unmet search succeeds and the file is upgraded to a higher quality tier, the CF Score entry will be pruned on the next sync if the new file now meets the score cutoff.
Import history
When a CF Score search leads to a confirmed import, it appears in the Imports tab with a CF Score type badge (amber). The upgrade history tooltip shows the quality the item was replaced from, the same as Cutoff Unmet upgrades.