Charts /
CH-TAB-03
CH-TAB-03 . family TAB
KPI TABLE
table rows: exact value, signed change, micro-trend. Needs: 3-8 metrics with a current value, a delta, a 4+ point history, and a declared good direction.
lookupstatustrend
Use when
- executive KPI panels: exact number, change, and shape in one row
- metrics with different units that must live on one page
Do not use when
- rows sharing one unit where bars would rank them (CH-RNK-06)
- long histories (the trend cell is a shape, not a chart)
See instead
Alternatives
- CH-TIM-06 (shape only, no exact lookup)
- CH-RNK-06 (one comparable measure with bars)
Rules
- values arrive formatted with their own units: this is a lookup table
- delta colored by the row's DECLARED good direction, not by sign
- trend cells scale per row: shape only
- hairline rules, no zebra fills
Never do this
- zebra striping
- coloring deltas by sign when down is good
- reading trend cells against each other
- traffic-light cell fills
QA before delivering
- good direction declared per row
- values carry their units
- >= 4 trend points per row
- source present
Data shape
| title | action title with a number |
| source | bottom-left always |
| value_header | CAPS |
| delta_header | CAPS |
| trend_header | CAPS |
| rows | [{label, value: formatted string, delta, good: up|down, trend}] |
Sample data (golden)
{
"title": "Two of five KPIs move the wrong way this week",
"eyebrow": "KPI TABLE . WEEK 28",
"source": "Source: sample dataset v1, 2026-07-12",
"value_header": "VALUE",
"delta_header": "VS LAST WEEK",
"trend_header": "7-WEEK TREND",
"rows": [
{
"label": "Delivery OTD",
"value": "87 %",
"delta": 2,
"good": "up",
"trend": [
78,
80,
79,
82,
84,
85,
87
]
},
{
"label": "Test pass rate",
"value": "92 %",
"delta": 0,
"good": "up",
"trend": [
88,
90,
89,
91,
91,
92,
92
]
},
{
"label": "Docs on time",
"value": "71 %",
"delta": -1,
"good": "up",
"trend": [
80,
79,
77,
76,
74,
72,
71
]
},
{
"label": "Open punch",
"value": "213 items",
"delta": -8,
"good": "down",
"trend": [
260,
250,
244,
238,
230,
221,
213
]
},
{
"label": "Stock cover",
"value": "41 days",
"delta": 0,
"good": "up",
"trend": [
64,
64,
58,
58,
49,
41,
41
]
}
]
}