---
title: "Linear allocation"
canonical_url: "https://docs.getdx.com/reports/linear-allocation/"
md_url: "https://docs.getdx.com/reports/linear-allocation.md"
last_updated: "2026-06-08"
---

# Linear allocation
DX lets you track how engineering time is allocated based on categorization rules which you define. Linear allocation reporting can be used for business reporting as well as financial use cases such as [CapEx reporting](https://docs.getdx.com/reports/linear-capex/).

Linear allocation reporting involves two parts:

- **Issue categorization –** DX categorizes issues based on customizeable SQL-based categorization rules.
- **Issue time spent –** DX calculates the time spent on each issue using data from Linear and GitHub (when available).

## Issue categorization

By default, DX provides categorization rules for parent issue and projects. In addition, customers can create custom SQL-based categorization rules to cover any use case. For more information, see [Creating Linear categorization rules](https://docs.getdx.com/reports/linear-categorization-rules/).

## Issue time spent

DX estimates time spent on tasks by combining data from Linear issues and GitHub commits. DX updates calculations in your database nightly.

Time spent is calculated as follows:

- Developers are treated as having a maximum capacity of one Dev week per every five weekdays (i.e., 0.2 Dev weeks per weekday).
- For each weekday, DX looks up issues that were in an in-progress state and then divides the developer's capacity across those issues based on time spent in an [in-progress status](https://linear.app/docs/configuring-workflows).
- Time is allocated based on the month work is performed. If an issue moves to an in-progress state in January but is completed in February, time is allocated to each month accordingly.
- If multiple developers contribute to a Linear issue (e.g., one assigned, others authoring commits), DX can use GitHub commits data—if the data connector is enabled—to allocate work more precisely.
- Calculations are winsorized by treating issues as in-progress for up to 30 days after the last recorded activity.

In order to be included in calculations, the conditions below must be true:

- The Linear issue must not be a sub-issue to avoid double counting
- The Linear issue must be non-deleted
- The Linear issue must be assigned
- The Linear issue must have been moved to an in-progress status
- DX must have access to the Linear issue (i.e., not listed in denylist)

## Advanced settings

#### Active status allowlist

By default, all in-progress statuses count toward time tracking. If some statuses shouldn't be counted, you can specify which statuses to include. To see all of your in-progress statuses, run the following query in Data Studio:

```sql
select distinct(name)
from linear_states
where state_type = 'started'
```

#### GitHub commit signals

When this setting is enabled:

- If a task has a commit on a given day, the task will be considered active for that day for the commit author regardless of Linear data.
- If multiple developers contribute to a Linear issue (e.g., one assigned, others authoring commits), time will be allocated to each person.

To enable this setting, you must have set up the [GitHub commits data connector](https://docs.getdx.com/connectors/github-commits/).

#### Max days in status

By default, DX tracks up to 30 days per status after the last activity. So if a task was in "In Development" for 45 days and "In Review" for 45 days, only 30 days in each status would count (60 total). You can change this threshold as needed.
---

## Sitemap

[Overview of all docs pages](/llms.txt)
