Stat tile
A stat tile shows one figure, such as the offers accepted this month, with a plain label above it and its change below. A row of them opens a report.
The tile
- Offers accepted48+12% on last month
- Placement fees245,000 EUR
- No show rate14%+3.0 points on last month
- Average time to hireFewer than 5 placements
When to use it
Use tiles for the few figures a report exists to show, such as placements this month or the interview no show rate. Put them first, in one row.
When the story is a trend or a comparison, use a chart. A tile holds one value and its change.
Anatomy
The label names the figure in plain words. The value is the largest text on the tile and uses tabular digits. The change line says how much it moved and against what.
- Surface
- 16 px radius, 16 px padding, no border
- --surface-1
- Label
- 12 px, weight 500
- --text-muted
- Label to value
- 6 px
- Value
- weight 700, tabular, letter spacing minus 0.02 em, line height 1
- --text
- Change
- 12 px, weight 500
- Gap between tiles
- 12 px
- --space-3
Long values
The value steps down in size as it gets longer and wraps before it would be cut off, since a truncated number is a wrong number. It breaks between groups of digits or before the currency code, and the code counts toward its length.
- Up to 9 characters
- 28 px
- Up to 13 characters
- 22 px
- Longer
- 18 px, wrapping
The change line
Write the change as a signed figure and its comparison, such as +12% on last month. The sign gives the direction and the color adds a judgment: green for good news, red for bad, gray when there is nothing to judge. A change under 1 percent is left out.
- Offers accepted48+12% on last month
- No show rate14%+3.0 points on last month
- Open positions126+4 on last week
- Offers accepted48+12% on last month
- No show rate14%+3.0 points on last month
- Open positions126+4 on last week
- Good news
- success ink
- --success-ink
- Bad news
- error ink
- --error-ink
- No judgment
- quiet ink
- --text-muted
- Left out
- under 1 percent of change
Missing and loading
When a figure cannot be shown, the tile says why in the value's place, in quiet text at the smallest value size. A rate waits for 5 observations before it prints.
While the data loads, a skeleton the size of the tile holds its place.
- Average time to hireFewer than 5 placements
- Placement fees245,000 EUR
Tiles in a row
Tiles sit in two columns on a phone and four from 1024 px. A set of three or six tiles takes three or six columns instead, so no row ends with a gap. When labels wrap to different heights, the values in a row still share one line.
- Offers accepted48+12% on last month
- Placement fees245,000 EUR
- No show rate14%+3.0 points on last month
- Interviews booked312
- Average placement fee across every market5,100 EUR
- Candidates placed87+9.0% on last quarter
- Offers accepted48+12% on last month
- Placement fees245,000 EUR
- No show rate14%+3.0 points on last month
- Interviews booked312
- Average placement fee across every market5,100 EUR
- Candidates placed87+9.0% on last quarter
In a printed report
On paper the tile drops its surface and keeps its type: a label, a large figure, the unit and year, and the change in plain ink. Whether a change in a market is good depends on who reads it, so paper stays neutral.
- Label
- 7.5 pt
- --text
- Figure
- 26 pt, weight 700
- --text
- Unit and year
- 7.5 pt
- --text-muted
- Change
- 7.5 pt
- --text
Accessibility
Screen readers meet a tile as one group named by its label, then hear the value and the change as a sentence, with the sign read aloud.
A tile that opens a detail view, such as the list of this month's placements, is a link with the focus ring and a 44 px target.
Permitted and not permitted
Permitted
Say what the change is compared with
On last month, or on the same week last year.
Let a long value step down and wrap
The whole figure stays readable.
Not permitted
Put the change in a colored pill
Signed text is enough, and a tint under colored ink makes it harder to read.
Shorten a value to make it fit
Step the size down. A shortened value hides the real figure.
Add an icon beside the label
The label already names the figure.