[BUG] /stats activity heatmap: date labels off by one day (recent); day-of-week shift in pre-~April 25 history
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
The /stats activity heatmap in the Claude Code Desktop App has two related date-labeling bugs:
1. Recent dates (off by one day): The hover tooltip shows a date one day behind the actual date. Hovering over today's box (June 5, 2026) shows "Jun 4 — 0" instead of "Jun 5 — 0", even though it correctly reflects 0 usage for today. The bar chart on the Models tab also shows the most recent activity bar (which occurred on June 4) labeled as "Jun 3".
2. Older dates (day-of-week shift before ~April 25): Before approximately April 25, activity boxes appear shifted one column to the right (one day later) in the Sunday-to-Saturday weekly calendar grid. Usage confirmed to have occurred on Tuesdays — including a heavy session on April 7 (confirmed by timestamped texts from that evening) — shows up in the Wednesday column instead.
Note: The user did not change timezones between the two periods, so this is not a simple UTC offset issue. The behavior change around April 25 coincides with a physical relocation (within the same timezone), but the cause is unknown.
What Should Happen?
- Hovering over the current day's box in the Overview heatmap should show today's date (June 5, 2026), not yesterday's (June 4).
- The most recent bar in the Models chart should be labeled with the date the usage actually occurred.
- All activity boxes should fall under the correct day of the week across the entire history, regardless of any relocation or other non-timezone changes.
Error Messages/Logs
Steps to Reproduce
- Open the Claude Code Desktop App (version 1.9659.4).
- A new session starts and the /stats activity card is displayed automatically.
- On the Overview tab, hover over the box representing today (June 5, 2026).
- The tooltip reads "Jun 4 — 0" instead of "Jun 5 — 0".
- Switch to the Models tab and hover over the rightmost bar (representing usage from June 4, 2026).
- The tooltip reads "Jun 3" instead of "Jun 4".
- Back on the Overview tab, examine the calendar grid for dates before approximately April 25, 2026. Days known to be Tuesdays (e.g., April 7) appear in the Wednesday column.
Claude Model
None
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
Claude 1.9659.4 (8cc655) 2026-06-02T02:30:57.000Z
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
Terminal.app (macOS)
Additional Information
The bug has two distinct manifestations that appear to have different cutoff points:
Bug 1 (off by one day, affects all recent dates): Every tooltip date in both the Overview heatmap and Models bar chart is exactly one day behind. This is consistent and systematic for all recent dates visible.
Bug 2 (day-of-week shift, affects dates before ~April 25): Before approximately April 25, 2026, the activity boxes appear one day of the week too late. Activity from April 7 (a Tuesday, confirmed by timestamped text messages from that evening) shows in the Wednesday column. The calendar uses a Sunday–Saturday layout.
The user physically relocated from Canada to the US on April 25, 2026, but did NOT change timezones (same timezone before and after). The user also traveled within the US between PST and EST after the move, but noticed no further shift in behavior during those trips. The cause of the April 25 cutoff is unknown — it may or may not be related to the relocation.
App version build date is June 2, 2026 (2026-06-02T02:30:57.000Z), which is after the April 25 behavioral cutoff, so the two bugs may have different root causes.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗