@redrob-labs/ui v1.0.2 · Redrob Group Design System 2026

PriceTable

Marketing · src/components/PriceTable/PriceTable.tsx

What each plan includes, and what it costs.

One price per plan: the one set for the market this page is read in. Each market's number is set locally and never converted from another - a price converted from somewhere else is on this company's own list of borders, and it turns somebody's local cost into a rounding artefact of a rate they did not choose.

Absence is drawn as a real "Not included" with an accessible label, not an empty cell. An empty cell is indistinguishable from data that failed to load.

A real table with scope on both axes, and group rows use scope="colgroup" so the grouping is structural.

Import

import { PriceTable } from '@redrob-labs/ui';

Rendered

The design system's own preview case, run against this package's build. The parity gate compares this rendering to the reference bundle's.

Props

PropTypeNotes
plans PricePlan[]
rows PriceRow[]
rowLabel React.ReactNode
footNote React.ReactNode
className string

Exported types

PricePlan, PriceRow