Touch targets

Every tappable thing must be big enough to hit on the first try, one-handed, in a busy market. This is a hard requirement in DayTwo, not a preference — the minimum interactive size is 48dp.

The sizes

56
comfortable · 56dp
Preferred for primary actions
48
min · 48dp
Floor for any interactive element
44
compact · 44dp
Secondary only — padded to 48 with hitSlop

How to use them

  • min (48dp) — the floor for any interactive element. Never go below it for something a user taps.
  • comfortable (56dp) — the preferred size for primary actions and anything used often.
  • compact (44dp) — allowed only for low-risk secondary controls, and only when you extend the tappable area back to 48 with hitSlop.

If a control looks smaller than 48dp, its visual size can be small — but its tappable area still must not be.

When NOT to

  • ❌ Don't shrink a button below 48dp to fit a tight layout — remove or restructure content instead.
  • ❌ Don't place two small targets so close that a thumb hits both.
  • ❌ Don't rely on tiny icon-only taps for important actions.

What user problem this solves

Error prevention and speed. DayTwo users have a range of dexterity, are often tapping quickly between customers, and may have cracked or low-quality touchscreens. Large targets mean fewer mis-taps — which matters enormously when a mis-tap could record the wrong sale or delete an entry.

Visual size ≠ tappable size

A control can look compact and still be easy to hit. Use hitSlop to grow the touch area to 48dp even when the visible element is smaller.