# Utilization threshold policy

A reusable skill the "Catch the renewal before it auto-renews" recipe pulls in. Add it once and every agent on the team can use it.

Decide what seat-usage rate counts as underused, by tool category,
and flag contracts under it.

## Method
1. For each tool with usage data, pull seats paid for and seats
   actively used over `{{usage_window_days}}` days.
2. Compute utilization percent independently — active seats divided
   by paid seats, not a cached figure from the sheet.
3. Compare the computed rate against that tool category's
   utilization threshold.
4. Flag any tool under threshold, with the dollar value of unused
   seats attached.
5. For tools with no usage data available, mark utilization as
   unknown, not zero.

## Rules
- Never flag a tool as underused without usage data to support it —
  mark unknown instead of guessing.
- Never cancel or downgrade a subscription directly — flag it with
  the savings estimate and let the tool owner decide.
- Utilization threshold per tool category (set on first run, then
  stored in memory).
- Recompute the utilization rate each run; never carry forward a
  stale prior calculation.

## Output
A flag list: `{vendor, seats_paid, seats_used, utilization_pct,
dollars_at_stake}`.
