U7.06.2Preset ranges should cover common cycles and allow custom inputdesign

Preset ranges like last 7 days save a click, but only if custom input covers what falls outside them

Aliases: preset time ranges · quick select

What it is

Preset ranges ("last 7 days," "last 30 days," "this month," "last quarter") are the highest-frequency entry point of a time range control. A preset's value lies in compressing a complex date selection into one click; but the coverage of the preset set determines whom it actually serves. If a user's analytical period is "last Wednesday through Friday" or "the past 6 hours" while presets only offer "last 7 days / last 30 days," they are forced down the custom path and the preset's efficiency advantage disappears. A good time range control does both things at once: presets cover the target users' high-frequency cycles, and the custom path is always reachable.

Why it happens

Presets work by encoding high-frequency intent as low-friction options: the most common query patterns cluster around a few relative periods (yesterday, last 7 days, this month), and making them one-click options folds multiple interactions into one. When presets fall short, users take the custom path—a calendar popup demands three anchoring decisions (year, month, day), an order of magnitude more interaction cost than a preset, which explains why dashboards with incomplete preset sets feel markedly worse to use. Too many presets are equally harmful: once the option list exceeds seven items, visual search time grows roughly linearly with option count, high-frequency choices drown in the long list, and cognitive load increases instead. Custom path quality matters just as much: a text field that accepts "2024-01-15 to 2024-01-20" via keyboard is far faster than a popup requiring month-by-month calendar clicking.

Where it stops holding

The optimal preset composition varies by product: operations dashboards cluster on calendar days and weeks; finance dashboards on months and quarters; real-time monitoring panels need minute-level presets. Presets cannot replace scope disclosure—"this month" as a calendar month versus a rolling 30 days may mean different things in different systems and must be labeled in the UI. For global products spanning time zones, where "today" starts depends on whether it anchors to the user's timezone or the data's—a frequently overlooked boundary condition with serious consequences.

Applying it

  • Extract the distribution of actually selected time ranges from usage logs; take the top 5-7 cycles covering 80% of queries as presets.
  • Always keep a "custom" entry in the preset list, and make the custom popup accept direct keyboard input of date ranges.
  • State each preset's exact scope (calendar month vs rolling 30 days) in a hover tooltip or side note.
  • Verification: check whether preset clicks plus custom-path usage cover 90%+ of queries; if custom exceeds 30%, the preset set needs adjustment.

Related

  • Same group: U7.06.1 The default time range determines the conclusion most users will see · U7.06.3 Relative and absolute ranges suit different usage scenarios · U7.06.4 Comparison baselines must update in sync when the time range changes · U7.06.5 The active time range must be visible alongside the chart
  • Nearby: U7.06.1 The default time range determines the conclusion most users will see · U7.05.3 The baseline choice can flip the same metric into a rise or a fall
  • Search terms: preset time range · date range picker · quick select

Cards in the same group

Quick Actions

Share

Share this page

ios_share

https://hci.top/en/handbook/U7.06.2