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

# Time tracking

> Log billable and non-billable time with the weekly timesheet, manage approval workflows, and track work estimates.

## Overview

Ekso tracks the time people spend on work [items](/guide/concepts/items) and on non-billable activities. Time data flows into billing, profitability analysis, and resource planning. Billable time entries are tied to items within a [cycle](/guide/concepts/cycles), while non-billable entries are logged independently against predefined categories.

The **Timesheet** is the primary interface for recording and reviewing time. It gives each user a weekly view that combines billable and non-billable time in one place.

## Timesheet

The Timesheet is a per-user weekly view for logging and reviewing time. Navigate between weeks using the date picker and arrow controls in the top-right corner.

### Weekly grid

The top section displays a grid of items with time logged during the selected week. Each row is an item and each column is a day (Monday through Sunday). Time entries appear at the intersection — for example, "1h 22m" in the Wednesday column for a given item. A running total at the top shows the combined hours for the week.

### Assigned items

Below the grid, the **Assigned** panel lists all items currently assigned to you. Each item shows its process icon, status, item key, and name. Click the **+** button next to an item to log time against it.

Items appear here based on your assignments across [boards](/guide/concepts/boards) and [cycles](/guide/concepts/cycles). Items in any status — from Unassigned and In Backlog through to Closed — can have time logged against them, as long as their cycle is still open.

### Non-billable categories

The **Non-Billable** panel lists the available non-billable time categories. Click the **+** button next to a category to log non-billable time for the selected day. Common categories include:

| Category      | Description                                                               |
| ------------- | ------------------------------------------------------------------------- |
| Conference    | Events and conference attendance                                          |
| Entertainment | Customer, supplier, and partner entertainment activities                  |
| HR            | Conducting job interviews, appraisals, and recruitment-related activities |
| Meetings      | Time spent in meetings not related to billable work                       |
| Offsite       | Company-related offsite activities                                        |
| Sickness      | Health-related time off                                                   |
| Training      | Training, self-learning, and mentoring                                    |
| Unpaid        | Unpaid time off                                                           |
| Vacation      | Time off for vacation                                                     |

Non-billable categories are configured at the tenant level. See [Finance](/guide/concepts/finance#non-billable-codes) for how to create and manage them.

### Creating a time entry

When you click the **+** button on an assigned item or non-billable category, the time entry form opens. Each entry captures:

| Field      | Description                                                                                                |
| ---------- | ---------------------------------------------------------------------------------------------------------- |
| Status     | The approval state — starts as Pending and is controlled through the [board cycle](/guide/concepts/cycles) |
| Time entry | Duration in hours and minutes, formatted as `5h 16m`                                                       |
| Time type  | The work type — for example, Development, QA, Internal, or Consulting                                      |
| Comment    | Optional notes describing the work performed                                                               |

<Note>
  The status field is read-only on the time entry form. Time entry status is controlled through the board cycle approval process, not by the person logging time.
</Note>

## Time entries

A time entry records work done by a specific user on a specific date. Ekso tracks two kinds of time entries:

* **Billable** — time logged against an item, contributing to cost and revenue calculations
* **Non-billable** — time logged against a category, tracking non-chargeable activities

By default, a new time entry is **Pending**. Time can only be logged during an open cycle window — once a [cycle is closed](/guide/concepts/cycles#closing-a-cycle), no further time can be logged against its items.

## Billable time

Billable time entries represent work you charge to a client or project. Each billable entry is logged against an [item](/guide/concepts/items) and assigned a time type.

### Time types

Time types categorize the kind of work performed. Each type can be marked as billable or non-billable and may have an associated rate for revenue calculations. For example, "Development" might have a rate of $150/hour while "Consulting" is $200/hour.

Billable time types map to [SKUs](/guide/concepts/finance#skus-billable-time-codes) in the finance configuration.

## Non-billable time

Non-billable time entries categorize work that is not chargeable. Each non-billable entry uses a [non-billable code](/guide/concepts/finance#non-billable-codes) that explains the reason — for example, meetings, training, or vacation.

Tracking non-billable time lets you understand where non-chargeable hours go and identify opportunities to improve billable utilization.

## Time approval

Time entries for billable work follow a three-status approval workflow:

| Status   | Description                                         |
| -------- | --------------------------------------------------- |
| Pending  | Initial state when time is logged — awaiting review |
| Approved | Reviewed and accepted by a board manager            |
| Rejected | Returned for correction                             |

A board manager can mark individual time entries as **Approved** or **Rejected** at any time. When a [cycle is closed](/guide/concepts/cycles#closing-a-cycle), all remaining Pending time entries for items in that cycle are **automatically approved**.

<Warning>
  Closing a cycle auto-approves **all** time entries — including rejected ones. Review and resolve rejected entries before closing if you do not want them approved. Once a cycle is closed, this cannot be undone.
</Warning>

To resolve rejected time entries before closing:

* **Fix them** — correct the hours, date, or time type
* **Remove them** — delete the entry so it is not included in the cycle's approved totals

## Work estimates

Items can carry a work estimate in hours. As time is logged, Ekso tracks the gap between estimated and actual time. Risk reports identify items where logged time exceeds the estimate, helping you catch overruns early.

## Reporting

Time data feeds into the [Insights](/guide/concepts/insights) reporting module, which provides profitability analysis, per-user summaries, item-level financials, and risk reports. Insights calculates cost and revenue using [job role](/guide/concepts/finance#job-roles) hourly rates applied to billable time entries.

For detailed finance configuration (job roles, cost centers, SKUs, non-billable codes, and budget reason codes), see [Finance](/guide/concepts/finance).
