> For the complete documentation index, see [llms.txt](https://help.resouris.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.resouris.com/understand-your-capacity/find-the-constraint.md).

# What is stopping us

**Throughput → What is stopping us**

Every department knows it cannot staff everything it would like to. This page answers the harder question: *which constraint is costing you the most?*

## What the page shows

Four figures across the top, for the current roster horizon:

|                           | What it means                                         |
| ------------------------- | ----------------------------------------------------- |
| **Sessions filled**       | how many of the sessions offered were staffed         |
| **Sessions withheld**     | the ones that were not                                |
| **Person-half-days used** | how much of the available workforce time was drawn on |
| **Spare**                 | how much was not                                      |

Then a ranked list of constraints, each with the activity it is withholding.

## The ranking is the answer

Any of the individual figures can be reproduced in a spreadsheet if you are determined. The ordering cannot — it comes from re-planning against each constraint and comparing, and it is the part that tells you where to spend.

## The number to read first is "Spare"

This is where the page earns its place.

If **sessions are unfilled and spare hours exist at the same time**, you do not have a headcount problem. The hours are there. They are held by people who were not qualified for those particular sessions, or not free in those particular windows.

That distinction decides what you do next, and it is invisible in every other view of the same data:

* **Unfilled sessions, no spare hours** → a genuine capacity shortfall. More people, more hours, or fewer sessions.
* **Unfilled sessions, spare hours** → a *skills or timing* mismatch. Training, or a different session pattern, will do more than recruitment will.

A department in the second situation that writes a business case for another band 6 will get one, and still not fill its sessions.

## What to do with each constraint

**"Staff available at the time and skill required"** is usually the residual — the sessions the department was offered and did not fill, after every other constraint is accounted for. When this ranks first *and* spare hours exist, go to [Training impact](/understand-your-capacity/capacity-economics-and-attainment.md): it prices the specific competency that would unlock the most activity, and compares that price against buying the same activity through bank, waiting-list initiative or agency.

**Equipment constraints** mean the people were available and the machine was not. Look at the equipment catalogue and its maintenance windows before looking at the workforce.

**Space constraints** mean sessions were competing for the same place. Check [Estate](/how-it-works/the-estate.md) for whether the space model matches reality — a room recorded as ad-hoc that is in fact reliably yours will under-count your capacity.

**Policy constraints** — rest rules, contracted-hours ceilings, on-call recovery — are working as intended. If one of these ranks first, the honest reading is that the department is scheduling up against its own rules, and the fix is a conversation about the rules rather than about the roster.

## What the page does not do

It reports on the horizon that was actually solved. It does not re-solve, and it does not model a hypothetical department.

Splitting the residual further — "how much of this is skills and how much is timing?" — needs a solve probe, which means re-solving with one constraint relaxed and diffing the result. That is what [Training impact](/understand-your-capacity/capacity-economics-and-attainment.md) does for the skills half, and it takes considerably longer than loading a page.

## Related

* [Training impact and capacity economics](/understand-your-capacity/capacity-economics-and-attainment.md)
* [Levels of attainment](/understand-your-capacity/self-assess-attainment.md)
* [Throughput and attendance](/understand-your-capacity/throughput-and-attendance.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://help.resouris.com/understand-your-capacity/find-the-constraint.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
