> ## Documentation Index
> Fetch the complete documentation index at: https://beebole.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Staffing: plan who works on what, and when

> Plan your team's workload on Beebole's Staffing timeline — drag to create bookings, set allocation percentages, and see each person's remaining capacity.

Beebole's Staffing view is a long-horizon timeline of who works on what, and when. It is the third view of the **Planning** page, alongside the [Gantt chart](/help/documentation/gantt) and the [Kanban board](/help/documentation/kanban) — the bars you see are the same tasks, displayed per person instead of per task. Use it to book people onto projects, set how much of their time each booking takes, and see at a glance who still has capacity.

<Info>
  Staffing, Gantt, and Kanban display the same underlying tasks. A booking created in the Staffing view is a task like any other — it appears in the other views and in reports immediately.
</Info>

***

## Opening a Staffing view

<Steps>
  <Step title="Open the Planning page">
    Click **Planning** in the sidebar, and pick the planning you want at the top of the page.
  </Step>

  <Step title="Select or create a Staffing view">
    Click a Staffing view tab above the task list. To create one, click **Add a view** and select **Staffing**. Like every saved view, it remembers its own settings and filters.
  </Step>
</Steps>

***

## Reading the timeline

Each row is a person (or a project, depending on the grouping). Each bar is a booking: a task scheduled between two dates, shown in the task's color. The bar displays the task name — and, when there is room, its date range and the secondary project path.

* A vertical line marks today; the **Today** button scrolls back to it.
* The timeline extends into the past as well as the future — keep scrolling left to review earlier plans.
* Bar edges snap to working days, so bookings line up with what people can actually work.

### Grouping rows

Open the **⋯** menu on the view tab and use **Group by** to choose what the rows represent:

* **People** — One row per person, with their bookings and a capacity strip.
* **A project category** — Pick a category and a level (or **All levels**); one row per project at that level, showing everyone booked on it.

***

## Creating a booking

A booking doesn't need a task name — the fastest way to staff someone is to book them on a project for a date range. Beebole names the booking automatically from the person and the project.

<Steps>
  <Step title="Drag on the timeline">
    In a person's row, click and drag across the dates you want to book — or just click an empty cell to create a booking spanning that one period. The booking editor opens right next to the bar.
  </Step>

  <Step title="Pick the project">
    Select the project the person is booked on — the booking saves as soon as you pick it, with no confirmation step. When grouping by project, you pick the person here instead. The editor stays open on the new booking so you can adjust it right away, and you can change or remove the assigned person later from the same editor.
  </Step>

  <Step title="Set the allocation">
    Enter the allocation in whichever way you think about it — a **percentage of capacity**, **hours per working day**, or **planned hours over the whole booking** (100% by default). Press **Enter** to confirm.
  </Step>
</Steps>

The new bar appears immediately. If your active filters would hide it, Beebole tells you: **Booking added, but it's hidden by the current filter**.

### Tentative bookings

While plans are still firming up, mark a booking **Tentative** in its editor. A tentative booking is drawn with a hatched style and reserves the person's capacity, but stays out of reports until confirmed.

### Splitting and duplicating

From the booking's editor you can also **Split** it in two at a chosen date — useful when part of a booking moves — or **Duplicate** it.

<Tip>
  Give the booking a name later only if you need one — open it and type a name, exactly as you would rename a task. Unnamed bookings keep showing the person + project automatically, in Staffing, Gantt, and Kanban alike.
</Tip>

***

## Moving and resizing bookings

* **Move** — Drag a bar left or right to shift its dates; the duration is preserved and other bookings restack live as you drag.
* **Resize** — Drag the left or right edge to change the start or end date.
* **Move between rows** — Drag a bar vertically: drop it on another person's row to reassign the booking, on another project's row to move it to that project, or on the **Unassigned** row to clear its owner. A dashed ghost previews where the bar will land, and the whole move is one undo step. The booking's working time reflows over the destination person's own schedule and absences.
* **Work on several bookings at once** — Select multiple bars and drag them together to reschedule the group in one move, hold **⌘** (Alt on Windows/Linux) while dragging to drop dated copies, or grab any selected bar's edge to shift every selected bar's dates by the same amount — all undoable as a single step. ⌘-dragged copies land on the row you release them on.
* **Reach beyond the visible range** — Drag a bar to the edge of the timeline and it auto-scrolls, so a booking can be moved or extended past what is currently on screen.
* **Reassign** — Click a bar to open its editor and change the project, person, or allocation. Changes are saved automatically.

### Dependencies in the Staffing view

Dependency links between bookings are drawn directly on the staffing timeline, color-matched to the tasks at each end, so you can see which bookings depend on which. Moving or resizing a booking cascades to its linked bookings live — dependent bars follow the drag on screen before you drop. If a linked task that moves isn't visible in your current view, a warning names it so you know what changed and can undo it. See [Task dependencies](/help/documentation/gantt#task-dependencies) for how links are created.

### Bookings managed in the Gantt

Some tasks have a schedule the Staffing view must not change. When you try to edit one, Beebole shows **Managed in the Gantt** with the reason:

| Reason                     | Message                                                                           |
| -------------------------- | --------------------------------------------------------------------------------- |
| Recurring task             | This is a recurring task, so its schedule is managed in the Gantt.                |
| Part of a recurring series | This task belongs to a recurring series, so its schedule is managed in the Gantt. |
| Has subtasks               | This task has subtasks, so its schedule is managed in the Gantt.                  |

Open the [Gantt chart](/help/documentation/gantt) to adjust these tasks.

***

## The Unassigned row

Planned work nobody has picked up yet sits in the **Unassigned** row. Drag a booking onto it to clear the owner, or drag one out of it onto a person to assign the work. The row can be collapsed out of the way, and ⌘-dragging an unassigned booking drops the copy straight onto the row you release it on.

An account-wide reminder can warn everyone involved before an unassigned task starts — see [Timesheet and Planning Settings](/help/documentation/timesheetSettings).

***

## Locking the view to a period

By default the timeline is infinite — it scrolls by day or week as far as you need. Open the **⋯** menu on the view tab and use **Period** to lock the view to a fixed **week**, **month**, **quarter**, or **year** instead: the chart fits that window to your screen and shows only the bookings that fall inside it.

Bookings that start before or end after the locked period are drawn cut off, with a dashed edge and a chevron — click it to jump to the hidden start or end date. Cut edges can't be resized, since the date they would move isn't on screen.

***

## Copying the previous period

With the view locked to a fixed period, **Copy the previous period** refills the current period from the one before it — with or without the people and project assignments. Recurring tasks are skipped, and anything that would spill outside the period is clipped. If there is nothing to copy, Beebole says so: **The previous period has no bookings to copy**.

***

## Finding who's free

Click **Find capacity** to search for available people over a chosen period — including forward-looking ranges like **By year end** and **Next 12 months**:

| Search              | Who matches                                                                                                      |
| ------------------- | ---------------------------------------------------------------------------------------------------------------- |
| **Has free time**   | Anyone with unbooked capacity in the period                                                                      |
| **Free at least**   | People with at least the number of hours you enter — typing in the hours field applies this search automatically |
| **Nothing planned** | People with no bookings at all in the period                                                                     |
| **Overbooked**      | People booked beyond their capacity                                                                              |

A count shows how many people match. You can also filter the people list by person custom-field values, and search people and projects by name. Capacity is only computed when grouping by people.

***

## Workload and capacity

Each person's row includes a capacity strip: one cell per period comparing their planned load to their available capacity. Capacity comes from the person's [work schedule](/help/documentation/work-schedule) minus their absences, and each booking counts for its allocation percentage.

* **Hover a cell** to see the numbers — how much is planned against how much is available for that period.
* **Overload** — Load bars use a three-color scale: red while capacity remains, green when it is exactly met, and purple as soon as someone is booked beyond 100%. The headcount strip in the timeline header flags overloaded periods for the whole view.
* **Step through the load** — Click a period's workload bar to step through the tasks driving that period's load, one by one.
* **Hours or days** — Open the **⋯** menu on the view tab and use **Durations in** to switch every figure between hours and days.

Use the free capacity to decide who takes the next booking — the gaps in the timeline are exactly the people and periods still available.

***

## Filtering

Use the **Filters** button to narrow the view — by task, status, owner, assigned person, project, or [tags](/help/documentation/tags) on people, projects, and tasks, with the active filter count shown on the button. Filters on people or projects hide entire rows; other filters hide only the bars that don't match, keeping the row visible. The filters can be switched off and back on without losing them — the button toggles them rather than clearing them.

***

## Related content

<CardGroup cols={2}>
  <Card title="Tasks" icon="list-check" href="/help/documentation/planning">
    What tasks are in Beebole — creating, assigning, and tracking time on them.
  </Card>

  <Card title="Gantt chart" icon="chart-gantt" href="/help/documentation/gantt">
    Schedule tasks on a timeline, sequence them with dependencies, and manage recurring tasks.
  </Card>

  <Card title="Work schedules" icon="calendar" href="/help/documentation/work-schedule">
    Define the working hours that determine each person's capacity.
  </Card>

  <Card title="Planned vs. real report" icon="chart-column" href="/help/documentation/reports#planned-vs-real">
    Compare the time you planned in Staffing and Gantt with the hours actually logged.
  </Card>
</CardGroup>

## Frequently asked questions

<AccordionGroup>
  <Accordion title="What is the difference between the Staffing view and the Gantt chart?">
    Both display the same tasks. The Gantt chart in Beebole is task-centric — one row per task, with dependencies and hierarchy. The Staffing view is person-centric — one row per person, with their bookings and remaining capacity. Use the Gantt to structure the work, and Staffing to balance who does it.
  </Accordion>

  <Accordion title="Does a booking need a task name?">
    No. In Beebole you can book a person on a project for a date range without naming a task — the booking is named automatically from the person and the project. You can add a name later if the work becomes a concrete task.
  </Accordion>

  <Accordion title="How does Beebole calculate a person's capacity?">
    Capacity comes from the person's work schedule minus their absences, per period. Each booking consumes capacity according to its allocation percentage — a 50% booking on a 40-hour week uses 20 hours.
  </Accordion>

  <Accordion title="Why can't I move a booking in the Staffing view?">
    The task's schedule is managed in the Gantt. Recurring tasks, tasks in a recurring series, and tasks with subtasks show a **Managed in the Gantt** message — open the Gantt chart to change their dates. Bookings with dependencies can be moved and resized directly in Staffing; their linked bookings follow along.
  </Accordion>

  <Accordion title="Can I plan further back than the visible timeline?">
    Yes. The Staffing timeline scrolls into the past as well as the future, and dragging a bar to the edge of the screen auto-scrolls so you can drop it beyond the visible range. The **Today** button brings you back to the current date.
  </Accordion>
</AccordionGroup>
