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

# Expense categories

> Build the list your team files expenses under. Add, rename, archive and restore expense categories in TimeTracker workspace settings.

Expense categories are the list an expense is filed under – Travel, Software, Equipment. Owners, Admins and Finance manage the list at **Settings → Expense categories**.

## What is an expense category?

A category is a workspace-wide label. Every expense is filed under exactly one.

Categories exist so spend can be grouped. A report on the Expenses source can group by category, so you can see how much of a project's cost went on travel versus software.

Unlike tags, a category:

* carries no colour
* cannot be created from inside the expense form
* can only be added by someone with the `expenseCategory.manage` capability

That is deliberate. Categories are a finance taxonomy, not a free-form label. If anyone could mint one mid-form, the list would fill with near-duplicates and the reports would stop adding up.

## What a new workspace starts with

Every workspace begins with five categories:

* Travel
* Meals
* Software
* Equipment
* Other

You can rename or archive any of them, and add as many as you need.

## When to change the list

<CardGroup cols={2}>
  <Card title="Your business has its own cost lines" icon="list">
    A studio might add `Print production`, `Stock imagery` and `Client entertainment`.
  </Card>

  <Card title="A category is no longer used" icon="box-archive">
    Archive it. It drops out of the expense form, and every past expense keeps its label.
  </Card>

  <Card title="A name is wrong or unclear" icon="pen">
    Rename it. Because expenses point at the category rather than copying its name, the change shows everywhere at once.
  </Card>

  <Card title="You are cleaning up after a migration" icon="broom">
    Merge duplicates by renaming one and archiving the rest.
  </Card>
</CardGroup>

## How to add a category

<Steps>
  <Step title="Open the settings page">
    Go to **Settings → Expense categories**.
  </Step>

  <Step title="Type the name">
    Use the **New category name…** field at the top of the **All categories** card.
  </Step>

  <Step title="Add it">
    Click the add button. The category appears in the table and in every expense form immediately.
  </Step>
</Steps>

A name must be 1 to 40 characters after trimming spaces.

<Note>
  Adding a name that already exists does not create a duplicate. If the matching category is archived, it is restored instead.
</Note>

## How to rename a category

<Steps>
  <Step title="Find the row">
    Use the search box or the scope filter to find the category.
  </Step>

  <Step title="Open the manage dialog">
    Click the pencil icon in the row's action column. The **Manage category** dialog opens.
  </Step>

  <Step title="Change the name and save">
    Edit the **Name** field and save. A toast confirms **Category renamed.**
  </Step>
</Steps>

Renaming propagates everywhere. Every expense already filed under the category picks up the new name, including expenses that are already approved or invoiced.

You cannot rename a category to a name another category already uses.

## How to archive a category

Archiving retires a category without destroying history.

<Steps>
  <Step title="Open the row's lifecycle menu">
    Click the three-dot menu at the end of the category's row.
  </Step>

  <Step title="Choose Archive">
    The category moves out of the active list.
  </Step>
</Steps>

After archiving:

* the category disappears from the expense form's dropdown
* every past expense filed under it keeps working and keeps its label
* reports still group by it
* anyone with an open expense form pointing at it is moved to the first active category

To bring it back, switch the scope filter to **Archived**, open the row menu and choose **Restore**.

<Warning>
  A category that still has expenses filed against it cannot be permanently deleted. That is the guardrail that stops financial history losing its labels. Archive it instead.
</Warning>

## Example

Northwind Studio bills Bluebird Coffee for stock imagery often enough to want its own line.

<Steps>
  <Step title="Daniel adds the category">
    Daniel Okafor, Finance, opens **Settings → Expense categories** and adds `Stock imagery`.
  </Step>

  <Step title="Sarah files against it">
    Sarah Lin's next \$240 licence purchase is filed under `Stock imagery` instead of the generic `Software`.
  </Step>

  <Step title="The report splits">
    An Expenses report grouped by category now shows `Stock imagery` and `Software` as separate rows, so Northwind can see exactly how much imagery costs on the Website Redesign.
  </Step>

  <Step title="A year later, they stop">
    Bluebird brings imagery in-house. Daniel archives `Stock imagery`. New expenses cannot use it, but the historical spend stays labelled and reportable.
  </Step>
</Steps>

## The settings screen

The page is a single **All categories** card described as "An expense form only offers the active ones."

| Control                      | What it does                                                           |
| ---------------------------- | ---------------------------------------------------------------------- |
| **New category name…** field | Adds a category                                                        |
| **Scope filter**             | Switches the table between Active, Archived, Trashed and All           |
| **Search categories…**       | Filters the loaded rows by name                                        |
| **Category** column          | The category name. Sortable                                            |
| **Created** column           | When the category was added. Sorts chronologically, not alphabetically |
| Pencil icon                  | Opens the **Manage category** dialog to rename                         |
| Three-dot menu               | Archive, restore or trash the category                                 |

The empty state reads **No categories yet – add your first one above.**

## Permissions

| Action                             | Capability               | Roles that hold it    |
| ---------------------------------- | ------------------------ | --------------------- |
| View the settings page             | `expenseCategory.manage` | Owner, Admin, Finance |
| Add a category                     | `expenseCategory.manage` | Owner, Admin, Finance |
| Rename a category                  | `expenseCategory.manage` | Owner, Admin, Finance |
| Archive or restore a category      | `expenseCategory.manage` | Owner, Admin, Finance |
| Pick a category on an expense form | `expense.submit`         | Every working role    |

**Project Manager is deliberately excluded.** Categories are a finance taxonomy, not a delivery one. A PM can approve expenses and manage budgets, but the category list belongs to the money tier.

Without the capability the page shows a no-access panel rather than the editor.

See [roles and capabilities](/concepts/roles-and-capabilities) for the full model.

## Common questions

<AccordionGroup>
  <Accordion title="Can I create a category from the expense form?">
    No. The form only picks from the managed active list. If the list is empty the form tells you: "No categories yet. Add one in Settings → Expense categories."
  </Accordion>

  <Accordion title="What happens to expenses filed under an archived category?">
    Nothing. They keep the category and its name, stay valid, and stay in reports. Archiving only removes the category from the picker.
  </Accordion>

  <Accordion title="Can I merge two categories?">
    Not in one action. Rename the one you want to keep, then archive the other. Expenses already filed under the archived one keep their original label.
  </Accordion>

  <Accordion title="Is there a limit on how many categories I can have?">
    There is no fixed limit, but a long list slows the expense form down for everyone. Keep it to the cost lines you actually report on.
  </Accordion>

  <Accordion title="Does renaming a category change past invoices?">
    An invoice line snapshots its description when the invoice is built, so a sent invoice does not change. Reports and the expense log, which read the live category, do.
  </Accordion>

  <Accordion title="Why can I not delete a category outright?">
    Because expenses point at it. Deleting it would leave financial history with an unlabelled cost. Archive is the correct retirement.
  </Accordion>
</AccordionGroup>

## Troubleshooting

| Message or problem                                         | What it means                                                                          |
| ---------------------------------------------------------- | -------------------------------------------------------------------------------------- |
| **Couldn't create the category. You may lack permission.** | You do not hold `expenseCategory.manage`. Ask an Owner, Admin or Finance user.         |
| **Couldn't rename the category.**                          | The name is empty, over 40 characters, or already used by another category.            |
| The settings page shows a no-access panel                  | Your role does not include `expenseCategory.manage`. Project Manager does not hold it. |
| **Expense categories** is missing from Settings            | The Expenses app is switched off in **Settings → Apps**.                               |
| An archived category still shows on old expenses           | This is correct. Archiving hides it from new expenses only.                            |

## Related guides

<CardGroup cols={2}>
  <Card title="Submit an expense" icon="plus" href="/expenses/submit-an-expense">
    Where the category list is used.
  </Card>

  <Card title="Expenses overview" icon="receipt" href="/expenses/overview">
    How expenses fit the wider product.
  </Card>

  <Card title="Expense permissions" icon="lock" href="/expenses/expense-permissions">
    Who may manage the taxonomy.
  </Card>

  <Card title="Archive, trash and delete" icon="box-archive" href="/concepts/archive-trash-and-delete">
    What archiving really means across TimeTracker.
  </Card>

  <Card title="Apps and modules" icon="toggle-on" href="/concepts/apps-and-modules">
    Switching the Expenses app on and off.
  </Card>
</CardGroup>
