> For the complete documentation index, see [llms.txt](https://formulapro.shadebridge.com/formula-pro/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://formulapro.shadebridge.com/formula-pro/formula-pro-custom-functions/timeline.md).

# Timeline Functions

Functions for working with monday.com Timeline columns. Timeline values use the format `YYYY-MM-DD+YYYY-MM-DD` (start date + end date).

***

## TIMELINE / TIMELINE\_FROM\_DATES

Creates a timeline string from one or more dates. Returns the earliest date as start and the latest as end.

**Syntax:** `TIMELINE(date1, date2, ...)` or `TIMELINE_FROM_DATES(...)`

**Example:**

```
TIMELINE("2025-03-15", "2025-03-01")
```

**Result:** `"2025-03-01+2025-03-15"`

**Example:**

```
TIMELINE_FROM_DATES("2025-01-10", "2025-02-20", "2025-01-05")
```

**Result:** `"2025-01-05+2025-02-20"`

***

## DATES\_FROM\_TIMELINE

Extracts start and end dates from a timeline string. Returns an array `[start, end]` (used internally; in formulas the result may be used by other functions).

**Syntax:** `DATES_FROM_TIMELINE(timeline)`

**Example:**

```
DATES_FROM_TIMELINE("2025-03-01+2025-03-15")
```

**Result:** `["2025-03-01", "2025-03-15"]`

***

## START

Extracts the start date from a timeline string.

**Syntax:** `START(timeline)`

**Example:**

```
START("2025-03-01+2025-03-15")
```

**Result:** `"2025-03-01"`

***

## END

Extracts the end date from a timeline string.

**Syntax:** `END(timeline)`

**Example:**

```
END("2025-03-01+2025-03-15")
```

**Result:** `"2025-03-15"`

***

## Recipe Example: Timeline Shift

Shift a timeline by 14 days:

```
CONCATENATE(
  TEXT(DATEVALUE(LEFT({item's Timeline}, 10)) + 14, "YYYY-MM-DD"),
  "+",
  TEXT(DATEVALUE(RIGHT({item's Timeline}, 10)) + 14, "YYYY-MM-DD")
)
```

Or using Formula Pro functions:

```
CONCATENATE(
  TEXT(DATEVALUE(START({item's Timeline})) + 14, "YYYY-MM-DD"),
  "+",
  TEXT(DATEVALUE(END({item's Timeline})) + 14, "YYYY-MM-DD")
)
```

***

## Recipe Example: Workday Count from Timeline

Calculate working days between timeline start and end:

```
NETWORKDAYS(DATEVALUE(LEFT({item's Timeline}, 10)), DATEVALUE(RIGHT({item's Timeline}, 10)))
```

Or:

```
NETWORKDAYS(DATEVALUE(START({item's Timeline})), DATEVALUE(END({item's Timeline})))
```
