> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.delm.app/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# How do I change the date format?

You can fully customize how dates appear in your widget using the HTML editor. Delm selects the correct format based on whether your calculation results in a date range or a specific single date.

**Important:** You can customize these date formats individually for **each language** enabled in your store.

![Date Format](https://storage.crisp.chat/users/helpdesk/website/-/a/4/8/8/a488abe1860c5800/date-format_1cufnqn.png)

---

## Where these formats apply

The formatting rules described below determine how **date variables** are rendered inside your main widget template (`main.html`).

These are the available date variables you can use in `main.html`:

* `{delivery_completed}` (**Most common**: The final delivery date)
* `{processing_started}`
* `{processing_completed}`
* `{shipping_completed}`
* `{transit_completed}`

### How it works

The system inserts the formatted date into your main text.

1. **Your&#32;`main.html`:** `Estimated delivery: {delivery_completed}`
2. **If calculation is a range:** The system uses `range.html` to replace the variable. (Result: "Estimated delivery: between Feb 13 and Feb 16")
3. **If calculation is a single date:** The system uses `single.html` to replace the variable. (Result: "Estimated delivery: Friday, Feb 13")

---

## Date ranges

The system uses these templates when the calculated variable (e.g., `{delivery_completed}`) represents a span of time (min and max duration).

### `range.html`

This is the **wrapper** or "sentence" that holds the start and end dates. You must include the `{earliest}` and `{latest}` placeholders here.

* **Description:** Defines the structure of the sentence.
* **Example Code:** `between {earliest} and {latest}`
* **Result:** "between Feb 13 and Feb 16"

### `range-earliest.html`

This defines the format of the **first date** inside the range.

* **Description:** The start date of the range.
* **Example Code:** `{MMM} {D}`
* **Result:** "Feb 13"

### `range-latest.html`

This defines the format of the **last date** inside the range.

* **Description:** The end date of the range.
* **Example Code:** `{MMM} {D}`
* **Result:** "Feb 16"

---

## Single dates

The system uses these templates when the calculated variable represents a specific, fixed date.

### `single.html`

This is the default format used for any specific date.

* **Description:** The standard display for a single delivery date.
* **Example Code:** `{dddd}, {MMMM} {D}`
* **Result:** "Friday, February 13"

### `today.html`

* **Description:** Used exclusively when the calculated date happens to be **today**.
* **Example Code:** `Today ({D} {MMM})`
* **Result:** "Today (13 Feb)"

### `tomorrow.html`

* **Description:** Used exclusively when the calculated date happens to be **tomorrow**.
* **Example Code:** `Tomorrow, {dddd}`
* **Result:** "Tomorrow, Saturday"

---

## Available variables

You can use the following variables in `range-earliest.html`, `range-latest.html`, `single.html`, `today.html`, and `tomorrow.html`.

### Days

| Variable | Example | Description |
| ---- |
| `{D}` | 5 | Day of the month |
| `{DD}` | 05 | Day of the month, 2 digits |
| `{Do}` | 5th | Day with ordinal |
| `{dddd}` | Friday | Full weekday name |
| `{ddd}` | Fri | Weekday name, short |
| `{dd}` | Fr | Weekday name, shortest |
| `{dddd_gen}` | *Language specific* | Weekday name, genitive case |
| `{dddd_ins}` | *Language specific* | Weekday name, instrumental case |
| `{dddd_acc}` | *Language specific* | Weekday name, accusative case |
| `{dddd_loc}` | *Language specific* | Weekday name, locative case |

### Months

| Variable | Example | Description |
| ---- |
| `{M}` | 2 | Month number |
| `{MM}` | 02 | Month number, 2 digits |
| `{MMMM}` | February | Full month name |
| `{MMM}` | Feb | Month name, short |
| `{MMMM_gen}` | *Language specific* | Month name, genitive case |
| `{MMMM_ins}` | *Language specific* | Month name, instrumental case |
| `{MMMM_loc}` | *Language specific* | Month name, locative case |

### Years

| Variable | Example | Description |
| ---- |
| `{YY}` | 26 | Year, 2 digits |
| `{YYYY}` | 2026 | Year, 4 digits |

> **Note regarding advanced grammar:** The variables with suffixes like `_gen`, `_ins`, `_acc`, and `_loc` are designed for languages with complex case systems. Using these ensures the date fits the grammatical context of your sentence.