Skip to content
MomoDays
Guide9 min read

Habit Tracker Template: Build Your Own in Google Sheets in 10 Minutes

The twenty pretty templates dying in your downloads folder didn’t fail on design — they failed on friction, the three seconds it takes to open a sheet on your phone. Here’s how to build one yourself in ten minutes, keep it alive past week two, and choose honestly between Sheets, Excel, Notion, and a dedicated app.

You know this loop. You search habit tracker template, save ten of the prettiest free files, pick one, and fill it in beautifully for a week. Then one night you open the sheet on your phone to tick today’s box — it loads, it syncs, you’re pinch-zooming at a checkbox the size of a rice grain — and you skip it. You don’t open it again.

The gallery pages won’t tell you this: your problem was never finding a good template. The best habit tracker template is the one you still open on day 15 — editable, sitting where your eyes land, forgiving of a blank day, one or two taps to check. Download counts say nothing about whether anyone kept using it.

So this guide skips the download: you’ll build your own in Google Sheets in about ten minutes, rebuild it in Excel and Notion, compare all four by the metric that decides week three — daily friction — and make it survive a missed Tuesday. (Prefer to print and colour by hand? Our free printable habit trackers cover that — this one’s for the editable, digital kind.)

What makes a habit tracker template actually get used

The best habit tracker template isn’t the prettiest download — it’s the one you still open on day 15. That means four things: it’s editable, it’s visible where your eyes already land, a blank cell isn’t treated as failure, and checking off takes one or two taps. Design loses to friction every time.

Every result on that first page is a download, and the trouble is always the same: the daily check-in has too much friction, so around day ten it stops. Strava’s data named the pattern — by “Quitter’s Day”, the second Friday of January, roughly 80% of resolutions are already abandoned. A tracker also curdles in a way a plain list can’t: as pattrn.io notes, most “track, but they don’t teach”, so a broken streak turns the chart red and the tool into “a silent guilt machine”.

This is also how behaviour works. In BJ Fogg’s Behavior Model, an action happens only when motivation, ability, and a prompt line up at once — and ability, meaning how easy it is, is the lever you can pull most reliably, since motivation fades. So the real question isn’t “is it pretty?” but “how easy is the daily tap?” Run every candidate through this filter:

  • It’s editable. Change the habits, the dates, and how it counts — it bends to your life, not the reverse.
  • It’s visible without opening anything. A tab you must remember to open is one you won’t. Put it where your eyes already pass — a widget, a pinned tab, the wall.
  • A blank day isn’t a failure. Favour a month grid over a fragile chain; count the days you did, not the ones you missed.
  • Checking off takes one or two taps. Every screen or sync between “I did it” and “it’s recorded” is where the habit leaks away.

Build it in Google Sheets in 10 minutes

You can build a working Google Sheets habit tracker in four steps: lay out a grid (habits down the side, days across the top), insert checkboxes via Insert ▸ Tick box, add conditional formatting so a checked cell turns green, then drop a COUNTIF formula for your rate. Ten minutes, nothing to download.

Build it in Sheets: 4 steps

  1. Step 1

    Lay out the grid — habits down the left, days 1–31 across the top

  2. Step 2

    Select the cells, then Insert ▸ Tick box to drop a checkbox in each day

  3. Step 3

    Conditional formatting: custom formula =B2=TRUE, fill the cell green

  4. Step 4

    =COUNTIF(row, TRUE) ÷ days = your completion %, updating live

Ten minutes, start to finish — no file to download, and every step is undo-able.

Two or three habits down column A, dates across row 1. Select the day cells and choose Insert ▸ Tick box (a ticked box reads as TRUE); a =B2=TRUE conditional-format rule colours done days green; a COUNTIF gives the rate. mondaygoal’s walkthrough has screenshots — here’s the lot to copy:

What you wantWhat to type in Google Sheets
A checkbox in each day cellInsert ▸ Tick box (checked = TRUE)
Colour a completed day greenConditional formatting → custom formula =B2=TRUE
Days completed this month (one habit)=COUNTIF(B2:AF2, TRUE)
Completion rate for that habit=COUNTIF(B2:AF2, TRUE)/COUNTA(B$1:AF$1)
Highlight today’s column=B$1=TODAY() as a conditional-format rule

The same template in Excel and Notion

In Excel the moves mirror Sheets — a grid, a checkbox (or an x in older versions), conditional formatting for colour, and a COUNTIF of the done days over the days in the month. In Notion, skip the grid: a database with a checkbox property plus a repeating daily template does the same job, though rolling stats across days stay clunky.

Excel is close enough that the muscle memory transfers — TheBricks’ walkthrough uses the same grid and a COUNTIF over the number of days, e.g. =COUNTIF(B2:AF2, TRUE)/31. Newer Excel has real checkboxes; older versions count an x with =COUNTIF(range, "x"). No reason to leave if you already live there.

Notion works differently, and less smoothly for this one job. Instead of a grid you build a database with a checkbox property and a repeating daily template — elegant if Notion is your second brain, but rolling a streak across days is where it strains. Thomas Frank, who built five versions, notes that “database automations currently don’t trigger in response to pages created by repeating templates”, and concludes: “I don’t think Notion is ready for this type of habit-tracking setup.” Great for notes, fiddly for daily ticking.

Whichever grid you build, the harder question is what to put in it — a short, well-chosen set beats a long ambitious one. Staring at empty rows? Steal from these habit tracker ideas.

Sheets vs Excel vs Notion vs a habit app: an honest comparison

Spreadsheets win on being free and endlessly customizable; Notion wins if you already live there; a dedicated app wins on daily friction — the metric that decides whether you’re still tracking in week three. So choose for the daily check-in, not the setup. On a phone a spreadsheet check can take five or six taps; a one-tap app is a different sport.

Google SheetsExcelNotionDedicated app
CostFreePaid / free webFree tierFree–freemium
CustomizationUnlimitedUnlimitedHighGuided
Daily check on phone5–6 taps5 taps3 taps1 tap
Missed-day handlingYour rulesYour rulesYour rulesBuilt-in / gentle
Best when…You love formulasYou already live in ExcelIt’s your second brainFriction is what stops you

By cost and features, spreadsheets sweep that table. By the daily check on phone row it flips — the axis the galleries never measure, on two axes at once:

Customization vs daily friction

The bottom-right sweet spot — editable and easy to tap — is exactly where almost nothing sits.

The top-right corner — Sheets and Excel — holds all the customization and the worst daily friction. The maker of one popular Sheets template says it straight: “tapping tiny checkboxes on a phone screen is annoying, and the Google Sheets app sometimes takes a few seconds to sync.” Spreadsheets, they add, are “designed for desktop data work”, while a dedicated app is built for “quick, one-thumb interactions”.

Taps to today’s check-in

Illustrative, not a lab measurement — but the gap is the whole reason a Sheet gets abandoned by week three (see the mobile-friction note above).

None of this makes a spreadsheet bad — it makes it a desktop tool doing a phone job. If daily-tap friction is what keeps stopping you, that’s the cue to reach for a dedicated daily checklist app built for one-thumb logging. If friction was never your problem, keep the sheet with a clear conscience.

Make it survive missed days (and week 3)

A template survives real life when a blank cell isn’t a failure. Count completed days, not streaks; keep a month grid visible instead of a fragile chain; and decide your “missed a day” rule before you need it. Missing a single day has no measurable effect on whether a habit forms — the median to automaticity is 66 days, not 21.

66 days
median time to make a behaviour automatic (Lally et al., 2010)
18–254
the real day range across people and habits — not 21
~80%
of New Year’s resolutions abandoned by mid-January (Strava)

Those first two numbers come from Lally et al. (2010), who tracked people building real habits: automaticity took a median of 66 days, with a spread from 18 to 254. Most freeing finding — missing a single day didn’t measurably affect whether the habit formed. A blank cell is not a broken habit. (The UCL write-up is the plain-English version.)

This is why the COUNTIF you built beats a streak counter: it counts the days you did, not the ones in a row. “19 days this month” stays true forever; “streak: 0” erases three good weeks over one hard night. A visible month grid shows density instead of a snappable thread — a monthly habit tracker grid makes a scattered, real month look like the good one it was. And if three habits is too many, a mini habit tracker of one or two rows finishes far more often.

Then set your rule now, while you’re calm: “If I miss a day, I tick one box the next day and I’m back on track.” You’re not negotiating with yourself mid-shame — the rule already exists before the hard night arrives.

Full disclosure: where a template stops and MomoDays begins

MomoDays is a habit tracker we make, so read this knowing that. A spreadsheet template is genuinely great for setup and customization; MomoDays exists for the part a Sheet is worst at — the daily one-tap check on your phone, with the month grid and completion count already built in, and no streak-shame screen anywhere.

Everything here — the grid, the checkboxes, the colour, the completion formula — is the principle of habit tracking, and a spreadsheet is a lovely place to set it up. What MomoDays (yes, we make it) adds is the part a Sheet can’t: a sleeping Momo who wakes the instant you tap, so the daily check pays off immediately instead of costing friction. If a spreadsheet fits you better, use it — the tool you keep opening is always the right one.

Habit tracker templates — quick answers

Is it better to build my own habit tracker template or download one?

Downloading is faster to start, but it locks you into someone else’s layout. Building your own takes about ten extra minutes and fits your habits, your dates, and how you like to count — and you keep opening it because you made it. Judge it by how easy the daily check-in is, not by how it looks.

How do I make a habit tracker in Google Sheets with checkboxes?

Put your habits down the left column and the dates across the top row to make a grid. Select the range of day cells and go to Insert then Tick box; a ticked box reads as TRUE. Then add conditional formatting with the custom formula =B2=TRUE so every completed day fills with colour on its own.

What’s the best formula to calculate my habit completion rate?

For one habit, use =COUNTIF(range, TRUE)/COUNTA(header_range). COUNTIF counts the ticked (TRUE) cells, COUNTA counts the days, and dividing gives your rate — format the cell as a percentage so it updates itself. In Excel it is the same idea; if you mark days with an x, count "x" in place of TRUE.

Google Sheets, Excel, Notion, or a habit app — which should I use?

Choose Sheets or Excel if customization matters most, Notion if you already run your life inside it, and a dedicated app if daily friction is what keeps stopping you. On a phone, a spreadsheet check takes five or six taps and a habit-app widget takes one — and that tap count, not the setup, decides whether you last to week three.

How many habits should one template track?

Start with one to three and don’t go past five. Every habit you add makes each box mean a little less and slows the daily check-in — the very friction that kills the whole thing. Master a small set until ticking it feels boring, then add one more.

Sources & further reading

Keep reading