# activity_cutoff (/docs/hyperparameters/activity-cutoff)

`activity_cutoff` is the window, in blocks, that a validator can go without
setting weights before the epoch marks it inactive and removes its stake from
consensus. Validators care because an expired cutoff silently zeroes their
influence and dividends; owners tune it to keep consensus limited to
validators that are actually evaluating miners.

## How it works [#how-it-works]

At each epoch (`pallets/subtensor/src/epoch/run_epoch.rs`), a neuron is
inactive when `last_update + activity_cutoff` is less than the current block,
where `last_update` is the block of its last accepted weight submission.
Inactive stake is masked out of the active-stake vector before consensus, so
an inactive validator contributes nothing to the
[`kappa`](/docs/hyperparameters/kappa)-weighted median and earns no
dividends until it sets weights again.

The effective value is derived, not stored directly:
`get_activity_cutoff_blocks` (`pallets/subtensor/src/utils/misc.rs`) computes
`factor_milli × tempo / 1000`, clamped to at least 1 block. The per-mille
factor is bounded to 1,000–50,000 (one to fifty tempos); the default 13,889
at tempo 360 yields the legacy 5,000-block cutoff (\~16.7 hours).

The chart below plots each validator's blocks-since-last-weights against the
cutoff — slide it to see who drops out of consensus.

<HyperparamActivityCutoffChart />

## Reading and setting [#reading-and-setting]

Inspect with:

```
btcli sudo get --netuid N --name activity_cutoff
```

This returns the effective block count. It is not settable directly: the
epoch derives it from
[`activity_cutoff_factor`](/docs/hyperparameters/activity-cutoff-factor)
(per-mille of [`tempo`](/docs/hyperparameters/tempo)), so change the factor
instead:

```
btcli sudo set --netuid N --name activity_cutoff_factor --value 13889
```

A legacy absolute-blocks extrinsic (`sudo_set_activity_cutoff`) still exists
on chain, but the value it writes is ignored by the epoch and it will be
removed; don't use it.

## Related [#related]

[`activity_cutoff_factor`](/docs/hyperparameters/activity-cutoff-factor) ·
[`tempo`](/docs/hyperparameters/tempo) ·
[`kappa`](/docs/hyperparameters/kappa) ·
[`rho`](/docs/hyperparameters/rho) ·
[`max_validators`](/docs/hyperparameters/max-validators) ·
[`weights_rate_limit`](/docs/hyperparameters/weights-rate-limit)
