Skip to main content

Skip Reasons

Every item Houndarr evaluates but does not search gets an action=skipped row in the log with a reason string attached. Most reasons are normal scheduling behavior, not errors.

Reasons

Reason stringScopeWhat it means
on cooldown (Nd)per-itemMissing item was searched less than Cooldown (days) ago.
on cutoff cooldown (Nd)per-itemCutoff item was searched less than Cutoff Cooldown ago.
on upgrade cooldown (Nd)per-itemUpgrade item was searched less than Upgrade Cooldown (days) ago. Default 90 days.
not yet releasedper-itemNo release date, or the release date is in the future.
post-release grace (Nh)per-itemRelease date passed but the grace window (default 6 hours) has not elapsed.
hourly limit reached (N/hr)per-itemMissing pass hit Hourly Cap of N for the current hour.
cutoff hourly limit reached (N/hr)per-itemCutoff pass hit Cutoff Cap of N.
upgrade hourly limit reached (N/hr)per-itemUpgrade pass hit Upgrade Cap of N.
queue backpressure (N/M)cycle-levelDownload queue has N items, at or above Queue Limit of M. Entire cycle is skipped.
outside allowed time windowcycle-levelCurrent time falls outside every window defined in Allowed Search Window. Entire cycle is skipped.

Cycle-level skips write one log row and the supervisor sleeps until the next cycle. Per-item skips write one row per candidate evaluated.

Release-aware retry

Missing items skipped with not yet released or post-release grace (Nh) get one immediate retry on a later cycle once the release-timing gate clears, even when the normal missing cooldown has not fully elapsed. After that one retry, normal missing cooldown applies again.

Cutoff and upgrade passes do not use this early retry. They always wait for their full cooldown.

Queue backpressure

Setting Queue Limit to a value above zero makes Houndarr check the download queue before each cycle. When the queue count meets or exceeds the limit, the cycle writes one queue backpressure (N/M) skip and sleeps. If the queue endpoint is unreachable, the cycle proceeds normally (fail-open).

Outside allowed time window

The Allowed Search Window field restricts scheduled cycles to one or more time-of-day windows. When the current container-local time falls outside every configured window, the cycle writes one outside allowed time window info row with the current time and the configured windows, then sleeps. Manual Run Now clicks bypass this gate.

Log deduplication

Three reasons are deduplicated in the log: on cooldown, on cutoff cooldown, and on upgrade cooldown. Each (instance, item, reason) triple writes at most one search_log row per 24 hours. The engine still evaluates every candidate every cycle; only the log write is suppressed. This keeps the logs scannable when hundreds of items share the same cooldown.

The other reasons in the table above write a row every cycle they apply.

Why skips are normal

A high skip count with zero errors is pacing working as designed. The engine evaluates candidates, finds most ineligible, and waits.

Worked example: 500 monitored movies, 50 flagged cutoff-unmet, 35 of those on cooldown, 8 inside post-release grace, batch size 1. The cycle searches 1 movie and skips 49. Over days and weeks the engine works through the backlog as cooldowns expire and grace windows close.

Errors (HTTP 401, connection refused) are the real signal that something is wrong. See Troubleshoot Connection when errors appear.