Skip to content

Calendar Heatmap from CSV

A column of dates tells you little. Paste it and see at a glance which weeks were busy, which were empty and how long your longest streak ran.

Busiest day

2026-08-07

6 on that day. 2026-08-02 to 2026-11-20.

Total

287

Active days

79 of 111

Longest streak

6 days

Each column is a week starting on Monday. Darker means more, compared with your other days.

MonTueWedThuFriSatSun
4250505058037

How it works

  1. Paste one date per line as YYYY-MM-DD, or add a comma and a count, for example 2026-03-05,3.
  2. A header line at the top is skipped. Several lines on the same day are added together.
  3. Read the grid: each column is a week starting on Monday, darker means more.
  4. Check the busiest day, the active days and the streaks below, then copy the summary.

What people use it for

  • Habit and workout logs

    See whether you really trained three times a week, and where the gaps were.

  • Support and sales exports

    Spot the weekdays when tickets or orders pile up before you plan staffing.

  • Commit or publishing history

    Show when a project was active without installing a dashboard.

Questions

Which date formats are read?
YYYY-MM-DD, optionally followed by a time such as 2026-03-05T14:30:00Z. Other formats like 03/05/2026 are rejected on purpose, because the same text means 5 March in the US and 3 May in much of the world.
How are the shades chosen?
Days with a count above zero are split into four groups by quartile: the lightest shade is the lowest quarter of active days, the darkest the highest quarter. Days with nothing stay empty. Shades compare days within your data, not against any outside scale.
Is there a size limit?
Up to 20,000 rows and a span of 731 days (two years). Time zones are not converted: a timestamp is filed under the date written in it.