---
url: /concepts/statuses.md
description: >-
  How a list gets its statuses from a template, and why every status sits in one
  of three stages: Not started, Active or Done.
---

# Statuses and status templates

A [list](/concepts/hierarchy)'s statuses are the steps its tasks move through, and they come from a
**status template**. Every status belongs to one of three stages, so Hule can tell open work from
finished work in any list.

> **Name your steps however you like; the stage tells Hule what they mean.**

Whatever a list calls its statuses, these parts of Hule still know which tasks are finished:

* [views](/concepts/views);
* [dashboards](/guides/build-a-dashboard);
* [GTD](/concepts/gtd).

## Template, statuses, stages

```mermaid
flowchart TB
  TPL["Status template: Bug Tracking"]
  S1["Reported"]
  S2["Confirmed"]
  S3["In Progress"]
  S4["In Review"]
  S5["Fixed"]
  S6["Won't Fix"]
  G1["Stage: Not started"]
  G2["Stage: Active"]
  G3["Stage: Done"]

  TPL -- "gives the list" --> S1
  TPL -- "gives the list" --> S2
  TPL -- "gives the list" --> S3
  TPL -- "gives the list" --> S4
  TPL -- "gives the list" --> S5
  TPL -- "gives the list" --> S6
  S1 -- "belongs to" --> G1
  S2 -- "belongs to" --> G1
  S3 -- "belongs to" --> G2
  S4 -- "belongs to" --> G2
  S5 -- "belongs to" --> G3
  S6 -- "belongs to" --> G3
```

The template holds the statuses in order, and each status points to its stage. Every stage keeps at least one status, and one
status per stage is its default: new tasks land on the default of **Not started**.

## Templates: shared sets of statuses

Each list uses exactly one template. Templates are not inherited down the folder tree: you
pick one for each list when you create it, and can switch later.

| Kind | What it is |
|---|---|
| **System** | comes with Hule and cannot be edited; duplicate one to make your own |
| **Custom** | belongs to your [workspace](/concepts/hule-model), so every list in it can pick it; a new list's own statuses become one too |

Hule ships seven system templates:

* **Simple**
* **Development**
* **Bug Tracking**
* **Marketing**
* **Sales**
* **Hiring**
* **Agile / Scrum**

Because a template is shared, changing it changes every list that uses it. That is the point:
five team lists on one template keep one process, and a new step added once appears in all
five.

Templates live in **Workspace settings** → **Status Templates**. A list on a **System** template
can also edit its statuses in the list's settings
([Edit statuses](/guides/set-up-a-list#edit-statuses)); Hule saves the result as a new workspace
template.

::: info When changes save
In **Status Templates** settings, changes save as you make them. From a list's settings, when
other lists share the template, Hule shows how many lists use it and asks before it saves.
:::

::: warning Who can switch and change templates
Switching a list to another template takes [**Edit** access](/concepts/sharing) to the list and
**Update** in the **Lists** block of your [permission set](/reference/permissions-and-access)
(**List/Folder manager**, **Admin** and **Super Admin** have it). Changing a template's statuses,
from **Status Templates** or from a list's settings, takes **Update** in the **Status templates**
block, which **Admin** and **Super Admin** have.
:::

## Stages: what Hule reads from a status

| Stage | Means | Example status |
|---|---|---|
| **Not started** | the work has not begun; new tasks land on its default status | **Reported** |
| **Active** | the work is under way | **In Progress** |
| **Done** | the work is finished, whichever way it ended | **Fixed**, **Won't Fix** |

What the **Done** stage does:

| Where | What **Done** does |
|---|---|
| The task | entering **Done** marks it completed, with its completion time; leaving **Done** reopens it |
| The [GTD session](/guides/run-a-gtd-session) | skips tasks in **Done** |
| [Recurring tasks](/guides/set-up-recurring-tasks) | one set to repeat **After completion** creates its next copy when the task reaches **Done** |
| [Automations](/concepts/automations) | **Complete all subtasks** moves each open [subtask](/guides/break-down-with-subtasks) to the first status of the **Done** stage in its list |

**Stage** is also a field you can [filter](/reference/view-filters), sort and group by, so a view
that spans several lists can show "everything not done" even when each list calls its statuses
something else:

* filter by it — [View filters](/reference/view-filters);
* sort by it — [View sorting](/reference/view-sorting);
* group by it — [View grouping](/reference/view-grouping).

## Hiring list: two ways to finish

The **Hiring** system template shows why a stage can hold several statuses:

| Status | Stage |
|---|---|
| Applied | Not started |
| Screening | Active |
| Interview | Active |
| Offer | Active |
| Hired | Done |
| Rejected | Done |

Two statuses sit in **Done** because a candidate can leave the pipeline two ways, and both end
the task. A **Kanban** [view](/concepts/views) grouped by **Status** shows a column for each step,
and a view filtered to the **Done** stage lists every closed candidate, whichever way they left.

## Template switches and deleted statuses: where tasks go

When a change would leave tasks without their status, Hule doesn't drop them: it asks where they
go, or refuses to save.

| Change | What Hule does |
|---|---|
| Switching a list to another template | opens **Move tasks to “…”**, titled with the new template and filled in: the same status or one with the same name is matched, and the rest show **(fallback — first open status)** |
| Deleting a status that tasks use, in **Status Templates** settings | asks you to pick **Move tasks to** |
| Removing such a status in a list's own settings | refuses to save while tasks still use it. On a **System** template, the list has by then moved to its own new template; delete the status there from **Status Templates** |

On a switch, you can change any match before you confirm. A status left on the fallback goes to
the default status of **Not started**.

Steps: [Switch templates](/guides/set-up-a-list#switch-templates) and
[Delete a status that tasks use](/guides/set-up-a-list#delete-a-status-that-tasks-use).

::: danger A deleted status doesn't come back
Its tasks move to the status you pick, and the old status is gone from every list on the
template. To bring it back, add it again and move the tasks by hand.
:::

## Statuses in the Hule model

* Statuses belong to lists, the bottom of the tree: see [Folders inside folders](/concepts/hierarchy)
  and [The Hule model](/concepts/hule-model).
* Views group and filter by status and stage: see [Views as lenses on tasks](/concepts/views).

## Status guides and reference

* Choose statuses, fields and features for a list: [Set up a list](/guides/set-up-a-list).
* Show everything not done across lists: [Filter, sort and group a view](/guides/filter-sort-and-group-a-view).
* Repeat a task when it's done: [Set up a recurring task](/guides/set-up-recurring-tasks).
* Look up every task field, **Status** included: [Task fields](/reference/task-fields).
