Why sleeping better is hard to track

Not hard to do — that's a separate problem. These are the reasons the tracking itself tends to give out first, which is usually what takes the habit with it.

  • Wearables measure the result and none of the inputs you control
  • The decisive moment is 10pm, and every app looks at you at 7am
  • Caffeine, alcohol, screens and bedtime all interact and get analyzed separately
  • Weekend lie-ins wreck the following week and never get connected to it

Worth tracking

  • Time you actually got into bed, and lights out
  • Last caffeine and last alcohol
  • Whether screens were out of the room
  • How you felt on waking, in one number

Cadence

Two lines at night, one in the morning

What progress looks like

Two weeks of a bedtime within a 30-minute window, and the first weekend that didn't undo it

In practice

Log it in the sentence you'd have said anyway

Every operation in the app is a tool the chat can call, so sleeping better gets recorded — with its context — in the time it takes to think it.

Sleeping Better Chat

In bed by 10:45, no screens after 10. Last coffee was about 2pm.

Called 4 tools

  • log_check_in(habit: "bedtime", at: "22:45")
  • log_check_in(habit: "no-screens-before-bed", status: "held")
  • log_context(last_caffeine: "14:00")
  • correlate_habits(a: "last_caffeine", b: "morning_score")

Logged, and that's your fifth night this week inside the 10:30–11 window. On the nine nights with caffeine before 3pm your morning score averages 4.1, against 2.9 after.

Every figure here was counted from your check-ins. The model picked the tools and filled in the arguments — it never estimates a streak or invents a number.

And then ask

The question your history can answer

Weeks of check-ins about sleeping better contain a genuine answer to questions you've been guessing at. The only thing that was ever missing was something willing to read them.

Ask in plain language; the model turns it into queries against your record and shows the numbers behind the answer, so you can tell a real pattern from a coincidence in eleven data points.

Asking about the pattern Chat

What's the single thing most costing me sleep?

Called 3 tools

  • get_history(habit: "better-sleep", window: "6m")
  • find_pattern(group_by: "context")
  • compare_periods(metric: "completion")

Caffeine timing, by a distance. Bedtime explains some of it, screens almost none of it in your data — but every one of your six worst mornings followed coffee after 4pm.

Every figure is a count or an average over your own check-ins. The model chose which comparisons to run; it produced none of the numbers.

What it does

Set up around sleeping better

The same mechanics as every other habit, pointed at what actually matters for this one.

Targets per week, not per day

Three a week is a real goal and a daily checkbox can't hold it. Rest days get recorded as rest rather than counted as failures.

Streaks that survive a life

A missed day is a missed day. The streak that matters is the pattern over months, and one interruption shouldn't erase the evidence of it.

Partial credit

Ten minutes still counts, and gets logged as ten minutes. Half-measures are how most habits actually survive a bad week.

What predicts the days you show up

Last caffeine and last alcohol — captured alongside the tick, because that's where the explanation for a good month usually turns out to be.

Measured against your other habits

Ask whether this one is propping up another, or being crowded out by it. Cross-habit questions on request.

Caught at day three

A gap is recoverable early and much less so at three weeks. One nudge when it's still the former.

Early access

Start with sleeping better

Tell us where it's gone wrong before and we'll set it up with you — measuring the right thing, at a cadence you'll keep.

  • Founding accounts lock their price for life
  • No card, no trial clock, no streak-guilt notifications
  • Export everything you've logged whenever you want

No card required. Unsubscribe any time.

Track sleeping better by talking about it

Founding pricing is locked for accounts opened during early access.

Founding accounts lock their price for life. No card required.