AlchemyAlchemy — Monetize Iron Ideas
Ember FastingEmber Fasting

What a fasting complication on Apple Watch should actually do

The wrist is the right surface for a fasting timer, and most apps waste it. A design argument, written before we shipped ours.

The Apple Watch is the most logical place in your life for a fasting timer. It is on your wrist. You glance at it dozens of times a day. Checking your fast already lives there in your behaviour.

Most fasting apps treat the Watch as an afterthought.

Before you read further, a disclosure: Ember's Watch app is on the V1.1 roadmap and is not shipped today. What ships today is Lock Screen and StandBy widgets, plus interactive widgets that let you start and end fasts without opening the app. If you need a Watch complication right now, Ember is not yet the app for you, and I would rather say that in the second paragraph than the last one.

This is a post about the design problem. When we ship, this is what we intend to build.

The information hierarchy on a watch face

A complication has roughly six legible characters and one glance of attention. You design for that, or you fail.

In order of what matters:

  1. Am I fasting right now? If yes, the rest matters. If no, the rest is decoration.
  2. How long? A single number. Hours and minutes, or just hours after the first one.
  3. Which zone? Colour, or one character.
  4. How close to target? Optional, encoded visually.

Everything beyond that is noise.

Three ways it goes wrong

The static logo. The complication shows the app icon. Tapping opens the app. Useful as a launcher, useless as a glanceable fasting indicator. This is the most common pattern in the category and it is the least defensible, because it costs a watch face slot and returns nothing.

Elapsed time with no context. A bare "14:23" with no indication of whether that is elapsed time, remaining time, target, or the current zone. Without context the number does not mean anything.

The progress ring with no numbers. Handsome, modern, and unreadable at a glance for the question people actually have, which is "how long have I been fasting?"

The right pattern shows elapsed time in clear numerals, coloured by the current zone. The number tells you where you are. The colour tells you what is happening underneath.

The cross zone moment

The hardest problem is what happens when you cross a zone boundary between glances.

You are at 11:58, in the Early Fasting colour. At 12:00 you cross into Fat Burning. The complication needs to know.

Apple's complication system is not real time. It updates on a schedule, and the schedule is constrained to protect battery. A naive implementation shows the old zone for some minutes after you have crossed, then snaps without warning.

The right design front loads refreshes near boundaries, around 11:55, 17:55, 23:55, when a zone change is imminent. Your wrist shows the right thing at the right moment because the system anticipated the moment.

This is engineering that is invisible when correct and obvious when wrong.

During a workout

If you train fasted, the Watch is at its most crowded. The complication renders alongside heart rate, elapsed workout time, and calorie counters.

A fasting complication during a workout should stay legible against high saturation backgrounds, stay calm with no animation competing with workout cues, and keep running silently.

It should not pause. It should not warn you that you are exercising while fasted. It should not suggest you break your fast. You are an adult and it is a timer.

What the shipped widgets already do

Ember's Lock Screen and StandBy widgets implement the hierarchy above today. The Lock Screen widget shows elapsed time and zone colour. The StandBy widget renders large enough to read across a dim room at 3am, which is a real use case for anyone doing a long fast.

When the Watch complication ships it will follow the same logic. Same colour system, same hierarchy, same refusal to add noise.

The Garmin question

Some fasting apps integrate with Garmin. The engineering lift is significant and the audience is small but committed.

Ember is iOS and Apple Watch first, by choice. Doing one platform properly produces a better product than doing four adequately. If you are a Garmin user, that is a good reason not to choose Ember, and I would rather tell you now.

The takeaway

A fasting complication is not hard to build well. It is hard to build well while the rest of the app is also good, because it is the last thing anyone gets to.

The right one is small, glanceable, honest about colour, and does not pretend the wrist can do more than it can. The wrong one is a logo.

Ember's Watch app is V1.1. What ships today is Lock Screen widgets, StandBy mode, and interactive widgets that start and end fasts without opening the app. $14.99 a year, or $29.99 once and forever.