> ## 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.

# Budget permissions

> Who can set a project budget, add task caps and see cost and margin in TimeTracker. The full role matrix, the cost firewall and the two Pro plan gates.

Budgets use two capabilities plus a plan gate, and they answer different questions.

| Gate                              | The question it answers                     |
| --------------------------------- | ------------------------------------------- |
| `budget.manage`                   | May you **set** a budget or a task cap?     |
| `time.viewCost` / `rate.viewCost` | May you **see** cost and margin?            |
| The `budgets` plan feature        | Does your plan include project budgets?     |
| The `profitability` plan feature  | Does your plan let you set a **cost** rate? |

Keep them apart. Being allowed to set a budget does not mean you can see what the project costs.

## The role matrix

| Action                                            | Owner | Admin | Project Manager | Finance | Member | Contractor | Client |
| ------------------------------------------------- | ----- | ----- | --------------- | ------- | ------ | ---------- | ------ |
| See the Budget card in project Settings           | Yes   | Yes   | Yes             | No      | No     | No         | No     |
| Set or change a project budget                    | Yes   | Yes   | Yes             | No      | No     | No         | No     |
| Set the reset schedule on a retainer              | Yes   | Yes   | Yes             | No      | No     | No         | No     |
| Set a margin floor                                | Yes   | Yes   | Yes             | No      | No     | No         | No     |
| Add or remove a task cap                          | Yes   | Yes   | Yes             | No      | No     | No         | No     |
| See the Financials panel                          | Yes   | Yes   | Yes             | Yes     | Yes    | Yes        | No     |
| See utilisation, forecast revenue and health      | Yes   | Yes   | Yes             | Yes     | Yes    | Yes        | No     |
| See actual cost, gross profit and forecast margin | Yes   | Yes   | **No**          | **No**  | No     | No         | No     |
| See the Alerts panel                              | Yes   | Yes   | Yes             | Yes     | Yes    | Yes        | No     |
| Dismiss an alert                                  | Yes   | Yes   | Yes             | Yes     | Yes    | Yes        | No     |
| Receive budget alert emails                       | Yes   | Yes   | Yes             | No      | No     | No         | No     |
| Set a cost rate                                   | Yes   | Yes   | Yes             | No      | No     | No         | No     |
| See a person's cost rate                          | Yes   | Yes   | **No**          | **No**  | No     | No         | No     |

## The capabilities in detail

### `budget.manage`

Held by **Owner, Admin and Project Manager**. It mirrors the `rate.manage` delivery tier.

It covers:

* setting and changing a project's budget – kind, amount, reset schedule and margin floor
* adding and removing a task cap
* reading the budget configuration and the caps list

**Finance does not hold it.** Budgets are a delivery concern. A Finance user owns invoices, payments and expenses, but the ceiling on a project belongs to whoever runs delivery.

Without the capability:

* The **Budget** card in project Settings is **hidden entirely**, not shown as disabled.
* The **Budget cap** section on a task is hidden, and the rest of the task panel renders normally.

<Note>
  The Budget card saves through its own button, not the surrounding **Save changes**. A different mutation under a different capability must never ride along with a general project save – otherwise someone who may edit the project but not its budget would issue a budget write on every save.
</Note>

### `time.viewCost` and `rate.viewCost`

Held by **Owner and Admin only**. Together these are the cost firewall.

| Figure                   | Needs a cost capability   |
| ------------------------ | ------------------------- |
| Utilisation percentage   | No                        |
| Completion percentage    | No                        |
| Health chip              | No                        |
| Forecast revenue         | No                        |
| Billable value           | No                        |
| Effective hourly rate    | No                        |
| **Actual cost**          | **Yes**                   |
| **Forecast cost**        | **Yes**                   |
| **Forecast margin**      | **Yes**                   |
| **Gross profit**         | **Yes**                   |
| **A person's cost rate** | **Yes** (`rate.viewCost`) |

A Project Manager sees the budget **bar** but not the cost figure behind it. The percentage is a progress signal; the amount is internal.

Cost fields are **omitted**, not blanked. The tile grid reflows and no greyed-out placeholder hints at a number you cannot see. The value never reaches the screen at all.

The same firewall applies in reports. The **Gross profit** and **Actual cost** measures require `time.viewCost`; **Billable value** does not.

## The three gates

Capabilities are only one of three checks. All three must pass.

<Steps>
  <Step title="Is the app on?">
    **Budgets & profitability** must be switched on in **Settings → Apps**. It requires both **Projects & tasks** and **Time tracking**, so you cannot turn it on without them.
  </Step>

  <Step title="Do you hold the capability?">
    Your role, plus any custom role or per-person denial your workspace has configured.
  </Step>

  <Step title="Does your plan include it?">
    Setting a project budget needs the Pro `budgets` feature. Setting a cost rate needs the Pro `profitability` feature.
  </Step>
</Steps>

| Gate                     | Off means                                                    |
| ------------------------ | ------------------------------------------------------------ |
| App switched off         | Hidden. No Budget card, no cap section, no Financials panel. |
| Capability missing       | The control is hidden.                                       |
| Plan does not include it | The control is visible and opens an upgrade dialog.          |

"Turned off" and "not on your plan" are different states. See [apps and modules](/concepts/apps-and-modules).

## The plan gates, precisely

Two separate Pro features touch budgets, and they do different jobs.

### `budgets`

Gates setting a project budget. On Free you cannot create or change one.

### `profitability`

Gates **exactly one write: setting a cost rate.** Nothing else.

| On Free                                        | Status                          |
| ---------------------------------------------- | ------------------------------- |
| Set a new **cost** rate                        | Blocked                         |
| Delete a cost rate row                         | Blocked                         |
| Set a **billing** rate                         | Free                            |
| Read cost, revenue and margin already recorded | **Readable**                    |
| Read existing cost rates                       | Readable, subject to capability |
| See margin in a report                         | Readable, subject to capability |

So Free does not hide margin. It stops margin being **maintained**. A new hire cannot be given a cost rate, so their hours cost nothing and the recorded margin quietly stops being true.

<Warning>
  Who may **see** cost and margin is a **capability** question, decided by `time.viewCost` and `rate.viewCost`. It is never a plan question. A Free workspace's Owner sees margin. A Pro workspace's Project Manager does not.
</Warning>

See [plans and features](/concepts/plans-and-features).

## Example

Northwind Studio, project by project.

| Person        | Role            | What they can do with the Bluebird budget                                                                                                                              |
| ------------- | --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Maya Ellis    | Owner           | Sets the $40,000 budget, sees the $12,500 cost, the \$12,500 gross profit and the 50% margin.                                                                          |
| Tom Whitfield | Admin           | The same.                                                                                                                                                              |
| Priya Raman   | Project Manager | Sets the budget, the retainer reset and the margin floor. Sees `31% spent · 63% complete` and the $40,000 forecast revenue. Never sees the $12,500 cost or the margin. |
| Daniel Okafor | Finance         | Sees the Financials panel and the revenue figures. Cannot set the budget – no Budget card in Settings. Cannot see cost.                                                |
| Sarah Lin     | Member          | Sees the Financials panel with utilisation, health and forecast revenue. No cost, no budget editing.                                                                   |
| Ana Ferreira  | Contractor      | The same as Sarah.                                                                                                                                                     |
| Ruth Castillo | Client          | Sees none of this. A portal contact holds no internal capabilities.                                                                                                    |

Priya is the interesting case. She owns delivery on the project and sets its ceiling, but the money the team costs is not hers to see. That separation is intentional.

## Capability is not scope

`budget.manage` says you **may** manage budgets. It does not say **which** projects.

Which projects you can reach is decided by project visibility, which follows your supervision scope. Both have to pass:

* the capability – may you do this at all?
* the scope – on this project?

See [supervision scope](/concepts/supervision-scope) and [project visibility](/projects/project-visibility).

## Custom roles and overrides

Your workspace can define custom roles and can deny specific capabilities to individual people.

Two cautions:

1. Some capabilities are **owner-exclusive** and cannot be granted to anyone else.
2. Some are **deny-only** – they can be taken away from a person but not added to a role that does not seed them.

Check the role editor rather than assuming any capability can be moved freely. See [roles and capabilities](/concepts/roles-and-capabilities).

## Common questions

<AccordionGroup>
  <Accordion title="Why can Finance not set a budget?">
    Budgets are a delivery decision – what the project is allowed to consume. Finance owns invoices, payments and expenses. The two surfaces are deliberately separate.
  </Accordion>

  <Accordion title="Can I give a Project Manager cost visibility?">
    `time.viewCost` and `rate.viewCost` seed to Owner and Admin only. Check your workspace's role editor before promising it – not every capability can be freely reassigned.
  </Accordion>

  <Accordion title="Can a Member see how much budget is left?">
    Yes. Utilisation, completion and health are open to any workspace member. Only the cost amount behind them is restricted.
  </Accordion>

  <Accordion title="Who receives budget alert emails?">
    Project managers plus workspace Owners and Admins. The person whose action triggered the alert is excluded.
  </Accordion>

  <Accordion title="Can anyone dismiss an alert?">
    Yes, any workspace member. Dismissing only hides the row from the in-app list – it never re-arms the alert or recalls an email.
  </Accordion>

  <Accordion title="Does turning the Budgets app off delete my budgets?">
    No. Switching an app off hides it. Every budget, cap and alert is still there when you switch it back on.
  </Accordion>

  <Accordion title="Do I need Pro just to look at a budget?">
    No. Reading is free. Setting a budget needs Pro.
  </Accordion>
</AccordionGroup>

## Troubleshooting

| Problem                                                      | Cause and fix                                                          |
| ------------------------------------------------------------ | ---------------------------------------------------------------------- |
| No **Budget** card in project Settings                       | You lack `budget.manage`, or the Budgets app is off.                   |
| No **Budget cap** section on a task                          | The same two reasons.                                                  |
| **Forbidden: budget.manage**                                 | Your role or a per-person override does not allow it.                  |
| The Financials panel has no cost tiles                       | You lack `time.viewCost` and `rate.viewCost`.                          |
| Saving a budget opens an upgrade dialog                      | Budgets is a Pro feature.                                              |
| Saving a cost rate opens an upgrade dialog                   | Cost rates need the Pro `profitability` feature. Billing rates do not. |
| You hold `budget.manage` but cannot see one project's budget | Project visibility. The project may be outside your supervision scope. |
| The Budgets app will not switch on                           | It requires Projects & tasks and Time tracking. Enable those first.    |

## Related guides

<CardGroup cols={2}>
  <Card title="Roles and capabilities" icon="user-shield" href="/concepts/roles-and-capabilities">
    The full permission model.
  </Card>

  <Card title="Set a project budget" icon="pen-to-square" href="/budgets/set-a-project-budget">
    The surface `budget.manage` unlocks.
  </Card>

  <Card title="Profitability and margin" icon="chart-pie" href="/budgets/profitability-and-margin">
    What the cost firewall protects.
  </Card>

  <Card title="Cost rates" icon="eye-slash" href="/rates/cost-rates">
    The same firewall applied to people.
  </Card>

  <Card title="Plans and features" icon="credit-card" href="/concepts/plans-and-features">
    The budgets and profitability gates.
  </Card>

  <Card title="Apps and modules" icon="toggle-on" href="/concepts/apps-and-modules">
    The gate above every capability.
  </Card>
</CardGroup>
