Skip to main content

Filters

The Filters feature lets you exclude items from sweeps by tag or quality profile, configured independently per instance. Items matching an excluded tag or profile are silently skipped — they never consume a search slot.


What this is for

Tags and quality profiles in Radarr and Sonarr are a powerful way to segment your library. Filters lets Nudgarr respect that segmentation.

Common use cases:

  • Manual sourcing — tag items you prefer to source yourself (e.g. manual, hold) so Nudgarr never touches them
  • Profile exclusion — exclude a high-end profile like Remux-2160p where you're happy to wait for RSS rather than nudging
  • Anime separation — if your anime Sonarr instance uses a tag to mark shows handled by a separate workflow, exclude that tag so Nudgarr doesn't interfere
  • 4K libraries — on a dedicated 4K Radarr instance, exclude profiles you don't want Nudgarr to upgrade automatically

How it works

Filters are applied in the sweep pipeline after title exclusions and before cooldown. The order matters — filtered items are removed from the pool entirely before any slot counting happens.

For each instance, Nudgarr reads the excluded_tags and excluded_profiles from the instance's saved config. During a sweep:

  1. For each item in the cutoff unmet or backlog list, Nudgarr checks whether any of the item's tag IDs appear in the excluded tags set
  2. If a tag matches, the item is skipped and a debug log line is written: skipped_tag: The Dark Knight (tag=manual)
  3. Nudgarr then checks whether the item's quality profile ID appears in the excluded profiles set
  4. If a profile matches, the item is skipped: skipped_profile: The Dark Knight (profile=Remux-2160p)
  5. Items can match both — each match produces its own log line and increments the respective counter independently
  6. After all filtering, the info log line for that instance includes the aggregate counts alongside other skip types

Filtered items do not appear in History — they are removed before any record is written.

Sonarr note: Tags and quality profiles live at the series level in Sonarr, not the episode level. Nudgarr reads them from the series map fetched at the start of each sweep — no extra API calls are made per episode.


Configuring filters

Configuring filters

  1. Open the Filters tab (between Settings and Sweep in the main navigation)
  2. For the Radarr or Sonarr box, select the instance from the dropdown (if you have multiple)
  3. Click Load Tags & Profiles — Nudgarr fetches the current tags and profiles live from that instance
  4. Click any tag or profile in the list to mark it as excluded — it appears as a pill above the list
  5. Click the × on a pill to remove it from the excluded set
  6. Use the search box to filter long lists
  7. Click Apply to save — filters take effect on the next sweep

Each box saves independently. Applying Radarr filters does not affect Sonarr and vice versa. Switching instances within a box clears the loaded state for that box — load and apply per instance.

Pending changes: If you navigate away from the Filters tab with unsaved changes, a proceed/cancel dialog appears. Changes are not saved until you click Apply.


Refreshing tags and profiles

Tags and profiles are fetched live from each arr instance — they are not cached permanently. If you add a new tag or profile in Radarr or Sonarr, click Load / Refresh on the relevant card to pull the updated list. Previously saved filter selections are preserved across refreshes.


Instances with no tags

If an instance has no tags configured in Radarr or Sonarr, the tags section shows a "No tags configured" message. Profile filtering still works normally.


Disabled instances

If all instances of a kind are disabled, the Radarr or Sonarr box renders greyed out with an All Instances Disabled label. The last saved filters remain visible in read-only mode — no interaction is possible until an instance is re-enabled. Saved filters are preserved and reactivate automatically when the instance is re-enabled.


Sweep logging

When an item is skipped due to a tag, profile, queue, or availability filter, Nudgarr logs it at DEBUG level. Per-item lines fire in pipeline order:

skipped_tag: Dune: Part Two (tag=4K-Only)
skipped_profile: The Bear S03E01 (profile=Ultra-HD)
skipped_queued: The Brutalist (id=2103)
skipped_not_available: Sinners (minimumAvailability=released, releaseDate=2026-04-18)

Each sweep also logs aggregate counts at INFO level:

skipped_tag=0 skipped_profile=0 skipped_queued=2 skipped_not_available=1 skipped_cooldown=9

skipped_not_available only appears on Radarr instances — Sonarr has no minimumAvailability concept.

Set Log Level to DEBUG in the Advanced tab to see per-item skip log lines.


How filters are stored

Filters are stored in the config file (/config/nudgarr-config.json) on the instance object:

{
"instances": {
"radarr": [
{
"name": "Radarr Main",
"sweep_filters": {
"excluded_tags": [1, 3],
"excluded_profiles": [6, 7]
}
}
]
}
}

Tag and profile IDs are stored, not names — so if you rename a tag in Radarr or Sonarr, the filter continues to work without any change in Nudgarr. The UI resolves IDs to labels at load time by fetching from the live instance.


Filters vs Exclusions

These two features are complementary but distinct.

FiltersExclusions
ScopePer instanceGlobal — all instances, both apps
Match onTag ID or quality profile IDTitle (case-insensitive string)
Configured inFilters tabHistory tab (⊘ icon) or Advanced tab
Stored inInstance config objectSQLite database
Appears in HistoryNo — removed before any recordYes — past searches remain visible
Use whenYou want to skip a category of content by how it's tagged or profiledYou want to permanently exclude a specific title

Relationship with Per-Instance Overrides

Filters and Per-Instance Overrides are independent features. Overrides control how Nudgarr searches (cooldown, caps, sample mode, backlog). Filters control what Nudgarr searches. Both can be configured on the same instance simultaneously.

Filters do not require Per-Instance Overrides to be enabled.