> For the complete documentation index, see [llms.txt](https://docs.myjuicebox.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.myjuicebox.io/building-reports/story-designer/ingredients/the-ingredient-editor/the-dimension-ingredient-editor.md).

# The dimension ingredient editor

## Header

In the ingredient editor header, you can set the icon and label, view the source data table, and access perform various actions from the gear menu.

<figure><img src="https://872636700-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LmfYn9Ab4YpIl0ZZFm-%2Fuploads%2F4y1igWfV30uUPh8v5H1Y%2Fimage.png?alt=media&amp;token=93d118f5-a083-4fa0-9deb-8b1f80c09170" alt=""><figcaption><p>The dimension ingredient header</p></figcaption></figure>

**Icon**. This is a [FontAwesome](https://fontawesome.com/) icon associated with the dimension ingredient. By default, text dimensions have `check-square`<img src="https://872636700-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LmfYn9Ab4YpIl0ZZFm-%2F-M94c30nMQw0c2qWcaYk%2F-M94vjGQ9kRFO6VXNzrK%2Fcheck-square-solid.svg?alt=media&amp;token=b2da8745-c97b-41fc-a203-a386f0bb29e9" alt="" data-size="line">, time dimensions have `calendar`<img src="https://872636700-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LmfYn9Ab4YpIl0ZZFm-%2F-M9ZD0Syfn5x-ithmQ0x%2F-M9ZHtjxHh9ceO1QBtYV%2Fcalendar-solid.svg?alt=media&amp;token=2e9642de-20df-4e6b-b623-bfd8feb59cc7" alt="" data-size="line">, place dimensions have `map-marker-alt` <img src="https://872636700-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LmfYn9Ab4YpIl0ZZFm-%2F-M9ZD0Syfn5x-ithmQ0x%2F-M9ZHbp_uNi4O50Eh0_D%2Fmap-marker-alt-solid.svg?alt=media&amp;token=8ff1a90b-0abb-4382-8b92-32502403a90b" alt="" data-size="line"> , and number dimensions and measures have `hashtag` <img src="https://872636700-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LmfYn9Ab4YpIl0ZZFm-%2F-M8Laen5FChCsBj0TEOl%2F-M8MUPMEJ90_And0-Mis%2Fhashtag-solid.svg?alt=media&amp;token=a2a9ff15-7dda-459f-afdb-09ecf8ddcaa1" alt="" data-size="line">. The default icon can be changed, or the icon can be removed.

**Label**. This is the ingredient label. It is the same as the Plural label.

**Data table**. This displays the name of the source data table.

**Gear menu**. Provides access to the following actions:

* **Duplicate column**. Creates a new dimension ingredient with the same definition. This is used to [add new ingredients](/building-reports/story-designer/ingredients/adding-new-ingredients.md).
* **Duplicate as Advanced**. Creates a new dimension ingredient with the same definition expressed in yaml. This is used in cases where the UI does not yet support a particular configuration option. In most cases, you should not need to duplicate as Advanced.
* **Copy ingredient ID**. Copies the underlying ingredient ID for use in complex ingredient field formulas.
* **Delete column**. Deletes the ingredient.

## Basics

The Basics section of the ingredient editor contains the options that are required or used most frequently.

<figure><img src="https://872636700-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LmfYn9Ab4YpIl0ZZFm-%2Fuploads%2FgECTU4rlwDYErvKrYtWl%2Fimage.png?alt=media&amp;token=bcb06bac-9ac1-40bd-b1ad-8e4d2f857f92" alt=""><figcaption><p>The dimension ingredient Basics section</p></figcaption></figure>

**Field formula**. This is where the ingredient logic is defined. It could be the name of a single column or it could involve [complex logic](/building-reports/story-designer/ingredients/advanced-formulas.md).

**Plural label**. This is the label that will be used when the user selects multiple dimension values or no dimension values in the report.

**Singular label**. This is the label that will be used when the user selects a single dimension value in the report.

**Number format**. Only for dimensions with a number data type. Select how values should be formatted from the dropdown, or enter a custom [number format](/building-reports/story-designer/ingredients/ingredient-formats.md).

**Time format**. Only for date or time dimensions. Select how values should be formatted from the dropdown, or enter in a custom [time format](/building-reports/story-designer/ingredients/time-formats.md).

{% hint style="success" %}
Date or time ingredients will "roll up" in charts to the period selected for the **Time format**. For example, selecting the `month yyyy` format will roll up to the month. Selecting the `yyyy` format will roll up to the year.
{% endhint %}

**Latitude**. Only for place dimensions. Enter the column associated with latitude value.

**Longitude**. Only for place dimensions. Enter the column associated with the longitude value.

**Geometry Field**. Only for place dimensions. Enter the column associated with the geojson geometry field.

## Styling

Description

Color

Color when negative

Image url

**Hide count**. By default, filter pills will display the count of distinct dimension values. Enable this option if you want to hide the count.

## Advanced

#### Buckets

A bucketed dimension groups field values into buckets based on [conditions](/building-reports/story-designer/ingredients/advanced-formulas.md#conditional-logic) in the **Buckets** box, like so:

```yaml
- label: Detractor
  condition: score <= 6
- label: Passive
  condition: score <= 8
- label: Promoter
  condition: <= 10
```

For example, let's say your data includes a `score` field with customer scores, and you want to use the scores to group customers into different roles: Detractor, Passive, and Promoter. Here's what you would enter in the **Buckets** box:

<figure><img src="https://872636700-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LmfYn9Ab4YpIl0ZZFm-%2Fuploads%2FHo0PmkLj7L6piWanuE66%2Fimage.png?alt=media&amp;token=6f4c6b1e-1f29-4c8d-ad3e-5886479feb27" alt=""><figcaption><p>Adding buckets</p></figcaption></figure>

Conditions are evaluated in the order they are defined, which makes defining buckets for continuous values convenient:

```yaml
- label: Under 25k
  condition: <25000
- label: 25k-49k
  condition: <50000
- label: 50k-99k
  condition: <99000
```

The **Buckets default label** is the label to display if a value does not meet any of the conditions.

#### Lookups

If the values in a field are not what you want displayed in your report, you can create lookups to change them by entering a list of values to lookup with their associated value to display in the **Lookups** box, like so:

```yaml
value to lookup: value to display
value to lookup: value to display
value to lookup: value to display
```

For example, let's say the Country field has "United States" values that you want to display as "USA", and it has null values that you want to display as "Unknown". Here's what you would enter in the **Lookups** box:

<figure><img src="https://872636700-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LmfYn9Ab4YpIl0ZZFm-%2Fuploads%2F0KcM61rPiAicJ4NSwYPU%2Fimage.png?alt=media&amp;token=f40bf020-7fd6-46bd-9ab3-c2497a9fa35a" alt=""><figcaption><p>Adding Lookups</p></figcaption></figure>

If there is a value in the field that is not added to the list of values to lookup, then the original value in your data will be displayed.

Id Field. Specify a custom unique identifier for columns. Especially useful for selections and filtering in unique cases. For example, you could set the field definition to `string(" ")` to hide the values and the Id Field to `last_name` .

Order By

Filter

**Reverse**. By default, higher numbers are deemed "better." To flip this, turn on Reverse.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.myjuicebox.io/building-reports/story-designer/ingredients/the-ingredient-editor/the-dimension-ingredient-editor.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
