# Idle Time Detection & Time Tracking

Ango Hub keeps track of the time annotators and reviewers spend on their tasks.

In this page, we explain in detail how time tracking works in Ango Hub, and how you can set up Idle Time Detection in your projects.

## Terminology

### Tabs and Windows

<figure><img src="/files/2j3oUBi82Mdlb32CqeNp" alt=""><figcaption></figcaption></figure>

### Time Categories

There are two types of time shown in Ango Hub: *active* and *idle*.

| Type   | Description                                                                                                                                                                                                                                                                     |
| ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Active | The tab is active, and the user is using the mouse or keyboard in the tab area (viewport.) The window can be active or inactive.                                                                                                                                                |
| Idle   | <p>The window is active, the tab is active, the user is not using either the mouse or the keyboard.<br><br>OR<br><br>The window is inactive, the tab is active, the user is using the mouse but the cursor never hovers over the tab.<br><br>OR<br><br>The tab is inactive.</p> |

{% hint style="info" %}
Exports and performance reports show active time. When idle durations are enabled for an export, idle time is included as well.
{% endhint %}

Time during which the browser tab is inactive counts as idle time.

## How Time is Tracked

In Ango Hub, time starts being tracked when a user opens a task. When the user clicks *Save* <img src="/files/X83yZAL7Gr5aLay4XSwj" alt="" data-size="line">, the time spent so far is saved on the task, and the timer starts again. When the user clicks *Submit*, the time saved on the task is added to its total duration for the completed stage.

{% hint style="info" %}
This means that if you open a task, then quit it without saving or submitting, this time will not be counted as you were simply 'viewing' the task.
{% endhint %}

When a user first opens an asset, the active timer starts, indicated by the green dot in the top right of the screen:

<figure><img src="/files/fa8sADxvlcf82Vjcf7oo" alt=""><figcaption></figcaption></figure>

If, however, the user is idle for a period of time set by the project manager (by default 300 seconds), the *active timer* stops and the *idle timer* starts, and the dot turns gray:

<figure><img src="/files/IAN8iHSaOnsk5pCT6YdN" alt=""><figcaption></figcaption></figure>

When the dot is gray, the *active timer* stops and the *idle timer* starts. As project manager, you can choose when to show the idleness notice, and thus, when to start considering your users as idle.

## Changing the Idle Time Threshold

To change the duration after which you consider your project members as being idle, navigate to Settings -> General, then change the number, in seconds, under the *Idle Timeout* heading:

{% hint style="info" %}
The Idle Timeout setting is available for standard Ango Hub projects. 3D MSFT projects do not show this setting.
{% endhint %}

<figure><img src="/files/jrLA1DgQWAoVsAZAcV5i" alt=""><figcaption></figcaption></figure>

Lastly, click on *Save* to save your settings.

## Idle Detection Examples

Assuming a 5-second idle detection threshold.

| Scenario                                                                                                                                                                                                                                                                                                                                                              | Durations                                                                                                                                                                                                                                                                          |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <ol><li>Open task</li><li>Annotate for 15 seconds</li><li>Save and quit.</li></ol>                                                                                                                                                                                                                                                                                    | <p>Duration: 15s<br>Idle duration: 0s</p>                                                                                                                                                                                                                                          |
| <ol><li>Open task</li><li>Annotate for 15 seconds</li><li>Save and quit.</li><li>Open the task and don’t perform any annotation</li><li>Quit without saving</li><li>Enter the task again and perform annotations for 10 seconds</li><li>Save and quit</li></ol>                                                                                                       | <p>Duration: 25s<br>Idle duration: 0s</p>                                                                                                                                                                                                                                          |
| <ol><li>Open task</li><li>Annotate for 10 seconds</li><li>Change tab for 30 seconds (keeping the browser window active)</li><li>Go back to the annotation and annotate for 10 more seconds</li><li>Save and quit</li></ol>                                                                                                                                            | <p>Duration: 20s<br>Idle duration: 30s</p>                                                                                                                                                                                                                                         |
| <ol><li>Open task</li><li>Annotate for 10 seconds</li><li>Do nothing for 30 seconds with the tab and window active</li><li>Move the mouse and annotate for 10 more seconds</li><li>Save and quit</li></ol>                                                                                                                                                            | <p>Duration: 25s (20 seconds of actual annotation + 5 seconds idle detection threshold)<br>Idle duration: 25s (30 seconds of actual idleness minus 5 seconds idle detection threshold)</p>                                                                                         |
| <ol><li>Open task</li><li>Annotate for 10 seconds</li><li>Save and quit</li><li>Open task again</li><li>Be active, but don’t perform any annotation for 10 seconds</li><li>Submit</li></ol>                                                                                                                                                                           | <p>totalDuration (in export): 20 seconds<br><br>This occurs because saving keeps the task in its current stage and stores the time spent so far. When the user later submits the task, the saved time from both sessions is added to the task's total duration for that stage.</p> |
| <ol><li>Open task</li><li>Annotate for 10 seconds</li><li>Change the foreground application for 30 seconds (keeping the tab open in the window, but with the window in the background) and never hover over the window.</li><li>Go back to annotation and annotate for 10 more seconds</li><li>Save and quit</li></ol>                                                | <p>Duration: 25s (20 seconds of actual annotation + 5 seconds idle detection threshold)<br>Idle duration: 25s (30 seconds of actual idleness minus 5 seconds idle detection threshold)</p>                                                                                         |
| <ol><li>Open task</li><li>Annotate for 10 seconds</li><li>Change the foreground application for 30 seconds (keeping the tab open in the window, but with the window in the background) and never hover over the window.</li><li>Go back to annotation and annotate for 10 more seconds</li><li>Submit</li><li>Review the asset for 5 seconds</li><li>Submit</li></ol> | <p>In the export:<br>totalDuration: 25s + 5s = 30s</p><p>(review) stageDuration: 5s</p>                                                                                                                                                                                            |

## Inspecting time spent on tasks

Other than the columns present in the *Performance*, *Assets*, and *Tasks* tabs, you may also inspect a single task's idle and active times, both for the stage it is currently in and as a total.

To do so, open the task you wish to inspect, and open the *Task Info* panel on the right side:

In the highlighted box, you will be able to inspect active and idle times, both for the current stage and for the totality of the task's stage history.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.imerit.net/core-concepts/idle-time-detection-and-time-tracking.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
