Start and end dates need comparison in one view
Aliases: date range picker · split calendars · inclusive nights
What it is
Check-in and check-out, contract start and end—what people must judge is the relation between two days: how many nights, whether they are reversed, whether they cross a month. If the two dates cannot be seen at once—one calendar closes, another opens—comparison falls on working memory. Start-end date co-visibility keeps both days (or both month panels) in one view during selection. The issue is comparing a pair, not how tiring paging is for a single day, and not whether a single day can be typed.
Why it happens
A range is one object, not two independent day picks. Gap, inclusivity of ends, and crossing a month or year are relational attributes that must be computed against both days together. Sequential single calendars split the relation into two episodes: start is chosen, the surface becomes the end month, the start day leaves the visual field, and people hold a number to check against the end. Memory slips produce an end before the start, or one night short. Two months side by side, or one grid with both ends and the days between highlighted, externalizes the relation. A “end must be after start” check only catches reversal at submit; it does not catch “I thought three nights, it was two.”
Where it stops holding
Two dates that are business-independent (birth date and registration date) do not need one view; forcing them side by side implies a false relation. Ranges measured in years (archive start and end) are not served by two months; they need a year layer or a timeline. On a narrow screen, two months side by side can crush cells below a tappable size; stacking the two months still counts as one view if the selected ends stay marked while scrolling. When only an open-ended “start, end TBD” is filled, the comparison object does not yet exist.
Applying it
- Show start and end in one view: two months side by side, or one grid with both ends and the span highlighted.
- Keep the chosen start visible and marked while the end is picked; do not close the first calendar and open a second.
- Label the gap in the view (nights, days) so the relation need not be mental arithmetic.
- Verify by picking a stay that crosses a month and asking how many nights. If answering requires reopening a closed calendar, co-visibility was not built. Then pick an end before the start and see whether reversal is visible on the cells at once, or only as a post-submit error.