A lookup table is an XLOOKUP-style grid of values your brand maintains in Admin and references from price templates — a price matrix by product category and tag, a base value per size, a per-market figure. Templates read from it with lookup.<table>.<column>, and prices recompute automatically when the inputs change.
Table setup
A table has a name, a key (the name templates use), and a season scope — all seasons, or per season.
Key columns decide what a row is looked up by: the product's hierarchy node, its tag in a category (the tags can be dragged into order), and size. Result columns hold the values, each with a name, a key and a type — a Money column is held in a single currency.
A key column can also be a single-select custom field. Pick Single-select custom field as the key column type, then the field: the column takes the field's name, its options become the row values, and a row is picked by the article's value for that field.
The Usage panel on the page shows where the table's values can be used. Today that is out-price templates; the panel marks what is planned next. The panel now also lists seasonal article and SKU custom fields as usable, with in-prices marked as coming soon.
Rows and the closest match
Any hierarchy node can carry values, and the closest node with values applies — a row on the root node acts as the brand-wide default, and a row on a deeper node overrides it for everything beneath.
Worked example, using the grid above: an article tagged Gore Tex in the Tech category and Trend in Assortment, on a product anywhere under the root node, resolves to the Gore Tex · Trend row — and a template referencing the EU column gets that row's value. Add a row on a deeper hierarchy node and articles under that node resolve to it instead, while everything else keeps using the root row.
The rows grid works like the other spreadsheet-style tables — range selection, copy and paste, fill, undo, with values saving as you type (see Working in tables) — plus Excel export and import for maintaining large grids outside the system. Tables scoped per season get a tab per season, and each season needs its own rows — values don't fall back to another season, so a season without a row resolves to an empty value.
Referencing a table from a price template
In any out-price Liquid template, reference a result column as {{ lookup.<table key>.<column key> }} — for example lookup.prices.eu. Money columns expose .converted (in the price's currency), .unconverted (the column's own currency) and .currency (the code). The template variables panel offers the lookup columns with live previews when linking a price.
Prices recompute automatically when an article's tags change or a product moves to another hierarchy node. After editing a lookup table itself, use the Recalculate prices action on the SKU pricing table to re-bake prices that were computed from the old values.
💡 Calculated (linked) out-prices are recalculated from each SKU's own inputs when a SKU is added or an article is duplicated — they are not copied from a sibling, so they can start empty if the template cannot be resolved yet.



