---
title: formatInterval
description: |
  Returns an interval rendered as a string, with optional control over which time unit is displayed.
url: https://coralogix.com/docs/dataprime/language-reference/functions-reference/time/formatinterval/
product: dataengine
feature: DataPrime Language
feature_id: dataprime-language
feature_identifier: dataengine/dataprime-language
last_updated: '2026-10-21'
---

# `formatInterval`

## Description

Returns an interval rendered as a string, with optional control over which time unit is displayed.

## Syntax

Like many functions in DataPrime, `formatInterval` supports<!-- --> [two notations](https://coralogix.com/docs/dataprime/language-reference/functions-reference.md),<!-- --> **function** and **method**. These interchangeable forms allow flexibility in how you structure expressions.

* Function notation
* Method notation

```
formatInterval(interval: interval, scale?: timeunit): string
```

```
(interval: interval).formatInterval(scale?: timeunit): string
```

## Arguments

| Name       | Type       | Required  | Description                                                                           |
| ---------- | ---------- | --------- | ------------------------------------------------------------------------------------- |
| `interval` | `interval` | **true**  | The interval to format                                                                |
| `scale`    | `timeunit` | **false** | The largest unit to display. Does not cascade into smaller units. Defaults to `nano`. |

## Example

**Use case: Render an interval in seconds**

Even if the interval is 5 minutes, you may want to render it as `300s`. Use the `scale` argument to specify seconds.

```
{

  "timestamp": 1728636298

}
```

### Example query

* Function notation
* Method notation

```
choose formatInterval(now() - $m.timestamp, 'seconds') as seconds_elapsed
```

```
choose (now() - $m.timestamp).formatInterval('seconds') as seconds_elapsed
```

### Example output

```
{

  "seconds_elapsed": "300s"

}
```
