How dimensions work
Dimensions define how data is structured and explored in Valsight by organizing values across multiple axes.
Use this page to learn the vocabulary (dimension, level, level value, hierarchy) and the mental model behind how Valsight stores and aggregates data.
For rules on designing a good dimension, see Best practices for dimensions.
The core idea
Instead of storing data in rows and columns, Valsight organizes data in a multidimensional space. Each dimension represents one axis along which values can vary. A single value is defined by its exact position across all relevant dimensions at once, for example the intersection of Time, Product, and Region simultaneously.
The structure that holds these values for each node is called a cube. See Cubes for how it works and what it means for function behavior.
Key components
Dimension: one axis of analysis (for example Time, Region, Product).
Level: a resolution within a dimension (for example Year, Quarter, Month).
Level value: a concrete member of a level (for example 2026, 2026-Q1, 2026-01).
Hierarchy: the aggregation relationship between levels.

Why this matters
Dimensions are referenced by every subsystem in Valsight that handles data:
Data sources are validated against dimensions on upload. Columns must match level names; values must match existing level values.
Nodes hold cubes shaped by dimensions, and formulas operate on those cubes, f.e.
EXPAND(0, "Year", "Region")orFILTER('Sales', "Region", ["EMEA", "APAC"]).Scenarios and assumptions scope their changes to dimensional slices.
Charts use dimensions on axes and as filters.
Filters at workspace, worksheet, perspective, and chart level can filter on dimension values.
Hierarchical structure means a value tracked at the granular level (2026-01) rolls up consistently through its hierarchy (2026-Q1, 2026), and dimension design decisions ripple across the entire project.
Related sections
Cubes: the structure that holds dimensional values for each node
Best practices for dimensions: MECE, design principles, and limitations
Creating dimensions: setting up a dimension end to end
Getting started: Build a Valsight Project: a walkthrough that shows dimensions being created and used end to end