> ## Documentation Index
> Fetch the complete documentation index at: https://docs.omni.co/llms.txt
> Use this file to discover all available pages before exploring further.

# custom_calendar - Dimensions

> Assigns a date or timestamp dimension to a named custom calendar defined in the model.

Assigns a date or timestamp dimension to a calendar defined in the model's [`custom_calendars`](/modeling/models/custom-calendars) parameter. The dimension's mapped timeframes then use the calendar's periods instead of the Gregorian calendar. For a walkthrough, refer to [Set up a custom calendar](/guides/modeling/custom-calendars).

<Warning>
  This parameter changes the results of saved content that uses the dimension. A `this quarter` filter or a period-over-period comparison now uses the calendar's quarter. Check saved content before you apply a calendar.
</Warning>

## Limitations

This parameter is only compatible with date and timestamp dimensions.

## Syntax

```yaml theme={null}
<dimension_name>:
  custom_calendar: <calendar_name>
```

## Properties

<ParamField path="dimension_name" type="object">
  The name of the dimension. Dimension names must:

  * Be unique within the view
  * Start with a letter
  * Contain only alphanumeric characters and underscores

  <Expandable title="dimension_name properties" defaultOpen="true">
    <ParamField path="custom_calendar" type="string">
      The name of a calendar defined in the model's `custom_calendars` parameter. The calendar must exist in this model or a model it extends, and must not be set to `ignored: true`. Otherwise the model shows a validation error. When omitted, the dimension uses the Gregorian calendar.
    </ParamField>
  </Expandable>
</ParamField>

## Examples

```yaml title="Assign a dimension to a retail calendar" theme={null}
sold_at:
  custom_calendar: retail_454
```
