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

# How timesheets work

> Understand timesheet periods, how time entries roll up, what locks and when, and the full loop from draft to submitted to approved or sent back.

A timesheet bundles your time entries for one period. Submitting the period sends every draft entry in it for review at once.

## The period is the unit

You do not submit a day. You do not submit a single entry. You submit a **period**.

Your workspace picks the period length once, in **Settings → Time policies**.

| Period     | What it covers                   |
| ---------- | -------------------------------- |
| `Weekly`   | A 7-day week, Sunday to Saturday |
| `Biweekly` | A fixed 14-day block             |
| `Monthly`  | A calendar month                 |

The daily grid always shows 7 days. If the workspace uses biweekly or monthly, submitting the week you are looking at submits the whole period that contains it.

<Note>
  Period boundaries are read in the **workspace timezone**, not your browser's. A period means the same dates for the person filling it in and the person approving it, wherever either of them is.
</Note>

## Two layers of status

This is the part people mix up. There are two status layers, and they answer different questions.

| Layer                 | Question it answers                       | Values                                                           |
| --------------------- | ----------------------------------------- | ---------------------------------------------------------------- |
| **Submission status** | Where is this whole period in the review? | Not submitted, Submitted, Approved, Changes requested, Withdrawn |
| **Entry status**      | Where is this one time entry?             | Draft, Submitted, Approved, Locked, Invoiced                     |

A week's overall status follows its **least advanced entry**. If nine entries are approved and one is still draft, the week reads as draft.

Full detail is on [/timesheets/timesheet-statuses](/timesheets/timesheet-statuses).

## The loop

<Steps>
  <Step title="Draft">
    You track time. Every new entry starts as a draft. You can edit, duplicate, or delete it freely.
  </Step>

  <Step title="Submitted">
    You click **Submit timesheet**. Every draft entry in the period flips to submitted, and the period locks from your edits.
  </Step>

  <Step title="Approved or sent back">
    A reviewer approves the period, or asks for changes. Asking for changes sends every entry back to draft with the reason attached.
  </Step>

  <Step title="Locked">
    An owner or admin closes a period through a date. Every approved entry on or before that date locks. Nothing can be edited, deleted, or added for that range.
  </Step>

  <Step title="Invoiced">
    Locked billable time can go onto an invoice.
  </Step>
</Steps>

## What locks, and when

This is the rule that surprises people most, so it is worth stating plainly.

| Moment            | What you can still do                                                    |
| ----------------- | ------------------------------------------------------------------------ |
| Draft             | Edit, duplicate, delete, add entries                                     |
| Submitted         | Nothing – the period is frozen until it is reviewed. You can withdraw it |
| Changes requested | Everything again – entries are back to draft                             |
| Approved          | Nothing yourself. A reviewer can reopen it, if nothing is locked yet     |
| Locked            | Nothing. Corrections go through an adjustment                            |
| Invoiced          | Nothing. Voiding the invoice returns the entries to locked               |

## Who the submission goes to

When you open the submit dialog, TimeTracker tells you who can review it.

* **Goes to** – one named reviewer.
* **Goes to any of** – several reviewers, all of whom can act on it.
* **No approver is available for this timesheet yet** – it goes to your workspace admins instead.

A reviewer is eligible when they hold `time.approve` **and** they supervise you. Naming a reviewer is a routing note, not a lock. Every reviewer who supervises you sees the submission in their queue, so nobody can quietly route around a manager.

## Example

Northwind Studio runs weekly periods.

Sarah Lin tracks 32 hours between Sunday and Saturday. On Friday she submits. All 32 hours of entries flip from draft to submitted, and her week locks.

Priya Raman spots that 3 hours on Bluebird Coffee's Website Redesign were marked non-billable by mistake. She clicks **Request changes** and writes "3h on homepage wireframes should be billable."

Every entry in Sarah's week goes back to draft. Sarah fixes the 3 hours, resubmits, and Priya approves. Those 3 hours at Sarah's $100/hour rate add **$300\*\* of billable value to the project.

At month end, Tom Whitfield closes the period through the last day of the month. Sarah's approved hours lock.

## Options and settings

| Setting                       | Where                                               | Who can change it |
| ----------------------------- | --------------------------------------------------- | ----------------- |
| Timesheet period length       | **Settings → Time policies → Timesheet submission** | Owner, Admin      |
| Period locking date           | **Settings → Time policies → Period locking**       | Owner, Admin      |
| What every entry must contain | **Settings → Time policies**                        | Owner, Admin      |
| A person's expected hours     | Their work schedule                                 | Owner, Admin      |

## Permissions

| Action                    | Capability            | Default roles                                     |
| ------------------------- | --------------------- | ------------------------------------------------- |
| Submit your own period    | `time.submit`         | Owner, Admin, Project Manager, Member, Contractor |
| Submit for a teammate     | `time.submitOnBehalf` | Owner, Admin, Project Manager                     |
| Approve or send back      | `time.approve`        | Owner, Admin, Project Manager                     |
| Reopen an approved period | `time.reopenApproval` | Owner, Admin                                      |
| Close a period            | `period.close`        | Owner, Admin                                      |
| Correct settled time      | `time.adjust`         | Owner, Admin, Project Manager, Finance            |

## Plan and app gating

Filling in and submitting a timesheet is **free**. Approving is **Pro**.

A Free workspace still collects submissions. They queue, they keep their totals, and nothing is destroyed. Upgrading clears the whole backlog.

The **Timesheets** app must be on in **Settings → Apps**, and it depends on the **Time tracking** app.

## Common questions

<AccordionGroup>
  <Accordion title="Why is my whole week locked when I only submitted one day?">
    You always submit the whole period, never a single day. That is the unit approval works on.
  </Accordion>

  <Accordion title="What happens to entries I add after I submit?">
    You cannot add entries to a submitted period. Withdraw it, add the entry, and submit again.
  </Accordion>

  <Accordion title="Does a rejected timesheet get a `rejected` status?">
    The period reads **Changes requested**. The individual entries go back to draft and carry the reason, so they show as **Rejected** until you redo them.
  </Accordion>

  <Accordion title="Can I approve my own timesheet?">
    Yes, if you hold `time.approve`. Your own submitted period appears in your queue like anyone else's.
  </Accordion>

  <Accordion title="What if my workspace changes the period length?">
    New submissions use the new length. Periods already submitted keep the boundaries they were submitted with.
  </Accordion>
</AccordionGroup>

## Troubleshooting

* **"That period has been submitted for approval, so it can't be changed."** Withdraw the period, or ask your approver to send it back.
* **"That period is closed."** An owner or admin locked it. Corrections go through an adjustment – see [/approvals/adjustments](/approvals/adjustments).
* **"That period doesn't line up with your workspace's timesheet weeks."** Navigate to a period with the arrows rather than typing a date range by hand.

## Related guides

<CardGroup cols={2}>
  <Card title="Timesheet statuses" icon="git-branch" href="/timesheets/timesheet-statuses">
    Every status and every legal move between them.
  </Card>

  <Card title="Fill in a timesheet" icon="pen-line" href="/timesheets/fill-in-a-timesheet">
    Enter hours in the list or the grouped grid.
  </Card>

  <Card title="Submit a timesheet" icon="send" href="/timesheets/submit-a-timesheet">
    Send a period for approval.
  </Card>

  <Card title="Close a period" icon="lock" href="/approvals/close-a-period">
    Lock approved time through a date.
  </Card>

  <Card title="Expected vs tracked hours" icon="scale" href="/timesheets/expected-vs-tracked-hours">
    Where the target hours on your grid come from.
  </Card>

  <Card title="Roles and capabilities" icon="shield" href="/concepts/roles-and-capabilities">
    The permission model behind every rule above.
  </Card>
</CardGroup>
