SKILL/TREE

Year-long habit tracker with heatmap and streak counter

Give it 3-8 habits and a start date — get a 365-day GitHub-style heatmap per habit, current and longest streaks via LAMBDA, weekly summaries, and a monthly rate table in Google Sheets, CSV, and HTML.

$3.99
Works in Claude (Pro/Max/Team) or ChatGPT (Plus/Team) · paid AI plan required
Both Claude + ChatGPT packages included — you can't pick the wrong one.
Updated
01365-day GitHub-style heatmap per habit with conditional formatting pre-configured (green #ebedf0 → #216e39)
02Current streak and longest streak per habit via tested LAMBDA/SCAN formula that counts the trailing consecutive run
03Weekly completion rate using ISOWEEKNUM mask, monthly rate table by month/year, total completions per habit
04Tracks up to 8 habits in one dashboard — no switching apps to see the full picture
05Outputs three ways: HTML artifact you can screenshot, CSV ready for Sheets paste, Google Sheets formula block live
06Excel-365 LAMBDA formulas plus Excel-2019 helper-column fallback for users on older versions

What it does

You've tried Streaks, Habitica, Way of Life — and at some point you stopped opening them. This skill builds the year-long habit tracker spreadsheet you actually wanted: a full 365-day heatmap per habit, GitHub-contribution-style, living in a Google Sheets dashboard you own forever. Tell it your habits (3-8), your start date, and any past data you have. It generates a conditional-format heatmap grid (GitHub green default, or rainbow-per-habit if you ask), calculates current and longest streaks for each habit via a LAMBDA/SCAN formula that counts the trailing consecutive run (not just total 1s in a window), produces a weekly summary anchored to ISOWEEKNUM, and builds a monthly completion rate table — all in one dashboard. Output comes three ways: an HTML artifact you can print or screenshot, a CSV you drop straight into Google Sheets, and a fully formula-driven Sheets layout ready to go. Three bundled references do the work: streak-formulas.md has every LAMBDA plus an Excel-2019 helper-column fallback (LOOKUP/MAX-based) for users without modern array functions; conditional-formatting-guide.md walks you through the exact rule sequences for both Sheets and Excel; heatmap-color-schemes.md gives you the GitHub-green default plus rainbow-per-habit, blue mono, purple mono, and print-friendly grayscale with hex codes.

Frequently asked

How do I make a GitHub-style habit tracker in Google Sheets?
The skill outputs the entire Sheets layout — Log tab with the 365-row daily grid, Dashboard tab with current and longest streak formulas, and the exact conditional formatting rules (Custom formula =C2=1 → fill #40c463; =C2=0 → fill #ebedf0). Apply per habit column. Paste the CSV into Log!A1 and the heatmap activates immediately.
What's the formula for the longest streak of consecutive days?
=IFERROR(LET(col, FILTER(Log!C2:C366, Log!C2:C366<>''), runs, SCAN(0, col, LAMBDA(acc, v, IF(v=1, acc+1, 0))), MAX(runs)), 0) — SCAN accumulates the running streak and resets to 0 on each miss, then MAX returns the peak. Works in Google Sheets and Excel 365. The skill also ships an Excel-2019 fallback using a helper column with =IF(C2=1, IF(ROW()=2, 1, D1+1), 0) and =MAX(D2:D366).
Can it track 8 habits at once on one heatmap dashboard?
Yes. The dashboard supports 3-8 habits in one tab. Default scheme paints every habit in GitHub green for consistency. Ask for rainbow and it assigns distinct palettes per habit (green, blue, purple, orange, red, teal, pink, gold) with hex codes from the bundled color guide. Each habit gets its own 7×53 heatmap grid plus stats cards (current streak, longest streak, total completions, monthly rate).
I have 3 months of past data in my notes app — can I import it?
Yes. Tell the skill which habits were done on which dates (or paste the data however you have it). It populates those cells as 1s in the CSV, leaves future dates blank, and computes the current streak, longest streak, and monthly rates from the real data on the spot. The HTML heatmap renders the actual colored cells, not a blank placeholder.
Why use this instead of a habit-tracking app like Streaks or Habitica?
Apps charge $4-10/mo, live behind a login, and own your data. This is a one-time output that lives in Google Sheets you control — tweakable formulas, exportable, no subscription, no ads, no Sunday-night reminder pestering. The visual is the same GitHub-contribution heatmap the apps are imitating, with a proper trailing-run streak formula instead of a buggy reset-on-app-close streak.

Install — no Terminal required

After checkout you land on a page with a one-click download and a pre-built install prompt. Pick the AI you already pay for — both packages are included, so you can't pick wrong.

What you'll see the second your payment clears
Your license key
ST-XXXX-XXXX-XXXX · permanent
Pre-built install prompt⧉ Copy
ChatGPT package (ZIP)⬇ Download

No setup work before you buy — copy, paste, done.

Have Claude Pro, Max, or Team?
Copy the prompt, paste into Claude

Copy the pre-built install prompt from the success page, paste it into any Claude Code chat, and Claude installs the skill itself — about 10 seconds. Using the app instead? Drop the downloaded folder into a Claude Project's knowledge and ask Claude to use it.

Have ChatGPT Plus or Team?
Build a Custom GPT — ~2 minutes
  1. Click Download ChatGPT package (included with every purchase).
  2. Unzip it — inside is a SETUP.md and a knowledge/ folder.
  3. Go to chatgpt.com → your profile → My GPTs Create a GPTConfigure.
  4. Paste the Name, Description, and Instructions from SETUP.md into the matching fields.
  5. Under Knowledge, upload every file in the knowledge/ folder.
  6. Click Create/Save, open your GPT, and describe your task in plain English.

A paid plan on either platform is required — Claude (Pro, Max, or Team) or ChatGPT (Plus or Team). Comfortable with Terminal? A one-line npx skilltree-network install path is available too.

More in Personal Dashboards

View all Personal Dashboards skills →