---
title: set_chunk_time_interval() | Tiger Data Docs
description: Change the chunk time interval of a hypertable
---

Since [0.1.0](https://github.com/timescale/timescaledb/releases/tag/0.1.0)

Sets the `chunk_time_interval` on a hypertable. The new interval is used when new chunks are created, and time intervals on existing chunks are not changed.

## Samples

For a TIMESTAMP column, set `chunk_time_interval` to 24 hours:

```
SELECT set_chunk_time_interval('conditions', INTERVAL '24 hours');
SELECT set_chunk_time_interval('conditions', 86400000000);
```

For a time column expressed as the number of milliseconds since the UNIX epoch, set `chunk_time_interval` to 24 hours:

```
SELECT set_chunk_time_interval('conditions', 86400000);
```

## Arguments

The syntax is:

```
SELECT set_chunk_time_interval(
    hypertable = '<hypertable_name>',
    chunk_time_interval = <interval>,
    dimension_name = '<dimension_name>'
);
```

| Name                  | Type     | Default | Required | Description                                                                                                                                      |
| --------------------- | -------- | ------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| `hypertable`          | REGCLASS | -       | ✔        | hypertable or continuous aggregate to update interval for.                                                                                       |
| `chunk_time_interval` | See note | -       | ✔        | Event time that each new chunk covers.                                                                                                           |
| `dimension_name`      | NAME     | `NULL`  | ✖        | The name of the time dimension to set the number of partitions for. Only use `dimension_name` when your hypertable has multiple time dimensions. |

If you change chunk time interval you may see a chunk that is smaller than the new interval. For example, if you have two 7-day chunks that cover 14 days, then change `chunk_time_interval` to 3 days, you may end up with a transition chunk covering one day. This happens because the start and end of the new chunk is calculated based on dividing the timeline by the `chunk_time_interval` starting at epoch 0. This leads to the following chunks \[0, 3), \[3, 6), \[6, 9), \[9, 12), \[12, 15), \[15, 18) and so on. The two 7-day chunks covered data up to day 14: \[0, 7), \[8, 14), so the 3-day chunk for \[12, 15) is reduced to a one day chunk. The following chunk \[15, 18) is created as a full 3 day chunk.

The valid types for the `chunk_time_interval` depend on the type used for the hypertable `time` column:

| `time` column type | `chunk_time_interval` type | Time unit                               |
| ------------------ | -------------------------- | --------------------------------------- |
| TIMESTAMP          | INTERVAL                   | days, hours, minutes, etc               |
|                    | INTEGER or BIGINT          | microseconds                            |
| TIMESTAMPTZ        | INTERVAL                   | days, hours, minutes, etc               |
|                    | INTEGER or BIGINT          | microseconds                            |
| DATE               | INTERVAL                   | days, hours, minutes, etc               |
|                    | INTEGER or BIGINT          | microseconds                            |
| SMALLINT           | SMALLINT                   | The same time unit as the `time` column |
| INT                | INT                        | The same time unit as the `time` column |
| BIGINT             | BIGINT                     | The same time unit as the `time` column |

For more information, see [hypertable partitioning](/docs/learn/hypertables/understand-hypertables/index.md).

## Returns

This function returns void.
