Last night was rough: two wakes, one feed and a resettle that felt endless. Yet a month ago, two wakes would have been the best night of the week.
That is the problem with judging baby sleep at 6am. The most recent night is vivid; the earlier pattern is a blur. A difficult night can feel like failure even when the longer direction is genuinely improving.
The useful question is not “Did my baby wake last night?” but “Are they waking meaningfully less often than they did in their own earlier record?” OBubba’s current app has a deliberately cautious answer. Its Look how far you’ve come card compares a baby only with themselves, requires at least three weeks of history and stays silent unless the improvement clears two separate thresholds.

The short answer
The current sleep-journey calculation can appear only when all of these are true:
| Guardrail | Current rule | Why it matters | |---|---:|---| | Real span | First and last qualifying nights are at least 21 days apart | A good weekend is not called a journey | | Enough nights | At least 3 bedtime nights in both the early and recent windows | Both averages need actual observations | | Measurable baseline | The earlier average is above 0 wakes | A percentage drop from zero would be meaningless | | Absolute change | Recent average is at least 0.4 wakes per night lower | Tiny numerical movement stays quiet | | Relative change | The reduction is at least 20% | The change must also matter relative to the starting level | | Honest direction | Flat or harder nights return no card | OBubba does not invent progress or guilt a family |
When the result qualifies, the app can show a card such as:
> Maya’s nights have settled > 3.0 → 1.0 wakes a night · 67% fewer
That is a description of the logged pattern, not a promise that every future night will be easy.
Why one bad night can hide a better month
Baby sleep is uneven. Teething, illness, development, travel, hunger and ordinary variation can all interrupt an improving run. The NHS notes that babies have their own waking and sleeping patterns and that these patterns change as they grow.
That means these two statements can both be true:
- last night was harder than the night before;
- the recent two-week pattern is better than the early two-week pattern.
Imagine an early run of 3, 4, 2, 3 and 3 wakes. Its average is 3.0. A recent run of 1, 2, 1, 2 and 1 wakes averages 1.4. The latest two-wake night may feel disappointing beside yesterday’s one wake, but the larger comparison still shows 1.6 fewer wakes a night—about 53% below the early level.
The card restores a kind of memory that exhaustion steals. It does not erase last night; it puts last night back inside the whole story.
How OBubba chooses the two comparison windows
We traced the current `computeNightWakeJourney` function, its screen and its focused regression tests.
First, the engine arranges every eligible night chronologically. A night is eligible when the record contains a saved bedtime; its wake count comes from OBubba’s normal night analysis, which joins the evening and early-morning events into the same night.
The function then measures the calendar span between the first and last eligible nights. If that span is under 21 days, it returns nothing.
For a long history, the early and recent windows are each capped at roughly 14 days. For a shorter qualifying history, each window contracts so the two sides do not overlap. This matters: counting the same middle night in both averages would make the comparison look more stable than it really is.
Only nights with a bedtime contribute. A blank date does not silently become a zero-wake success, and an untracked night does not become a bad night. Each side still needs at least three qualifying nights after the windows are formed.
The day boundaries use calendar dates rather than raw 24-hour durations, so a daylight-saving clock change does not accidentally push a boundary night into the wrong group.
A worked example
Suppose the record spans 30 days and contains these qualifying bedtime nights:
| Early window | Wakes | Recent window | Wakes | |---|---:|---|---:| | Night 1 | 3 | Night 18 | 2 | | Night 4 | 2 | Night 21 | 1 | | Night 8 | 4 | Night 25 | 1 | | Night 12 | 3 | Night 29 | 2 |
The early average is 3.0. The recent average is 1.5.
- absolute reduction: 1.5 wakes a night
- relative reduction: 50%
- span: more than 21 days
- samples: 4 early + 4 recent
Both improvement thresholds clear, so the card can appear.
Now change the recent values to 2, 2, 2, 3. The recent average becomes 2.25. The absolute reduction is 0.75 and the percentage reduction is 25%, so the card can still appear.
But if the recent average were 1.8 after an early average of 2.0, that is only 0.2 fewer wakes and 10% lower. The movement fails both guardrails and OBubba stays quiet.
Why the app needs both 0.4 and 20%
An absolute difference alone can exaggerate a small baseline. A relative difference alone can exaggerate a tiny numerical change.
For example:
| Earlier → recent | Absolute drop | Relative drop | Card? | |---|---:|---:|---| | 3.0 → 2.4 | 0.6 | 20% | Yes, if the other gates pass | | 2.0 → 1.8 | 0.2 | 10% | No | | 1.0 → 0.7 | 0.3 | 30% | No—the absolute change is too small | | 5.0 → 4.5 | 0.5 | 10% | No—the relative change is too small |
Neither threshold is a medical definition of “better”. They are product guardrails designed to prevent a warm celebration from being triggered by ordinary noise.
What counts as a wake in this journey
The card uses OBubba’s existing night model rather than counting every sound a baby makes.
A saved bedtime anchors the night. Proper night-wake entries inside that overnight record contribute to its count. A wake for the day ends the night; a daytime nap does not become an overnight wake. OBubba’s Pause and Resume flow can preserve a meaningful awake interval without ending the whole sleep.

Consistency matters more than perfection. If one week records every rustle and the next records only wakes that needed help, the apparent improvement may mostly reflect a changed logging habit.
A practical convention is:
- ignore brief sleepy sounds when the baby never properly wakes;
- mark a wake when the baby is clearly awake or needs a response;
- use the same definition as often as real life allows;
- correct obvious duplicate or forgotten entries when you notice them.
You do not need to log through exhaustion merely to earn a card. Missing nights remain missing rather than being filled with guesses.
“Since you started” has an extra honesty check
The visible card uses one of two messages.
If all known history is available in the current record, it can say:
> “Since you started with OBubba…”
If the app knows older dates exist in archived storage outside the active history, it changes the wording to:
> “Over the last [span] days…”
Why? The earliest active night may not be the family’s genuine beginning. Calling it “since you started” would turn the oldest readily available window into a false lifetime baseline.
This is a small implementation detail with a large trust benefit. A personalised app should be as careful about the limits of its memory as it is about the numbers it displays.
Why no card can be good product behaviour
The journey returns nothing when:
- the history spans fewer than 21 days;
- either window has fewer than three bedtime nights;
- the early window averages zero wakes;
- the average is flat;
- recent nights are harder;
- the drop is under 0.4 wakes a night;
- the percentage change is under 20%.
Silence does not mean your baby is failing. It can mean the app does not yet have enough comparable nights, the pattern is genuinely stable or the family is in a difficult patch that does not need a cheerful statistic placed over it.
The current function is intentionally one-way: it celebrates meaningful improvement but does not produce a “wakes are up” journey card. Other parts of the app may help investigate a rough patch, but this particular space is reserved for progress.
What this card cannot prove
The calculation cannot tell you:
- why waking changed;
- whether a feed was still developmentally or medically needed;
- how long each wake lasted;
- how distressed the baby or parent felt;
- whether one long wake was harder than three brief wakes;
- whether a routine, product or sleep method caused the difference;
- whether unlogged nights followed the same pattern;
- what will happen tonight.
Two wakes lasting five minutes each can be easier than one 90-minute split night, yet the count alone favours the single wake. For that reason, use the journey beside total awake time, longest stretch, feeds, settling detail and family wellbeing—not as a complete sleep score.
The card also should not be used to compare siblings or friends. Its strength is exactly the opposite: this baby, against this baby’s own earlier nights.
How to use the insight without chasing a perfect night
1. Celebrate the direction
If the card appears, let it be good news. You do not need to immediately remove another feed, push bedtime later or ask for zero wakes.
2. Open the underlying record
Check whether your definition of a wake stayed reasonably consistent and whether illness, travel or missing nights changed the sample.
3. Notice what the count leaves out
Was the recent window also easier in total awake minutes? Did the first stretch lengthen? Are both adults coping better? A useful trend should make sense in family life, not only in arithmetic.
4. Keep responding to the baby you have tonight
A lower recent average does not mean tonight’s cry should be ignored. Feed, comfort and assess your baby according to their cues and individual advice.
5. Share the win, not private pressure
The card includes a Share our progress action. Share it if it feels affirming. Keep it private if public sleep milestones would create comparison or anxiety.
Why this makes OBubba different from a basic timer
A basic baby tracker stores bedtime and wake entries. OBubba can turn those ordinary taps into a careful memory of change:
- it compares the baby with themselves;
- separates early and recent evidence;
- avoids overlapping windows;
- requires both an absolute and relative improvement;
- withholds the card when the story is flat or harder;
- changes the copy when older archive history makes “since you started” too strong; and
- makes a real win shareable without turning every night into a grade.
That is the kind of intelligence parents deserve: not a red score after a hard night, but a truthful reminder that progress can be happening too slowly to feel from inside it.
Try OBubba’s personalised baby sleep tracker free → — record the night with a few calm taps, keep the history that exhaustion blurs and let meaningful progress earn its own moment.
Frequently asked questions
How long do I need to use OBubba before this card can appear?
The first and last qualifying bedtime nights must be at least 21 days apart. Each comparison window also needs at least three qualifying nights. Twenty-one days alone does not guarantee a card; the improvement thresholds must pass too.
Does an unlogged night count as zero wakes?
No. Only nights with a saved bedtime enter the chronological set. Missing nights are not treated as uninterrupted sleep.
Why did my friend get the card sooner with fewer total logs?
The detector cares about the calendar span, bedtime nights in each window and the size of the change—not the total number of every kind of baby-care entry.
Can the card appear after one perfect night?
Not by itself. The recent comparison window needs at least three bedtime nights, the whole record needs at least a 21-day span and the average must clear both improvement thresholds.
Does 50% fewer wakes mean my baby is sleeping through?
No. A change from four wakes to two is a 50% reduction and can be meaningful, but it is not zero wakes and says nothing by itself about feeds, duration or the longest sleep stretch.
Why is there no card when nights are already wake-free?
The function needs an earlier average above zero so it can calculate a truthful percentage reduction. Stable wake-free nights are wonderful, but they are not a new downward journey for this detector.
Should I wake or night-wean my baby to improve the number?
No. This is a retrospective celebration, not a target. Babies vary, and young babies commonly wake for feeding and care. Follow your baby’s cues and individual advice from your health visitor, GP or feeding team.
Reliable UK sources
- NHS: Helping your baby to sleep
- NHS Best Start in Life: Your baby’s sleep patterns
- NHS Best Start in Life: Safer sleep advice for babies
This article provides general information for UK families. OBubba is not a medical device and a night-wake trend cannot assess feeding needs, illness, breathing, development or sleep safety. Follow your baby’s cues and advice from your own health visitor, GP or clinical team.
Ready to try OBubba?
Use OBubba to track feeds, sleep, naps, nappies, growth, milestones and family handovers in one calm baby tracker app.