What the stress index is and how it is calculated

Stress is one of the most common migraine triggers, but it is also one of the hardest to measure. There is no thermometer for stress. So MigraineMe does the next best thing: it looks at how your heart is behaving and turns that into a single number between 0 and 100.

You do not need to read the number every day. It is there if you want it, but the app uses it quietly in the background as well.

What the number means

The stress index is a simple score from 0 to 100.

  1. Low numbers (around 0 to 30) mean your body looks calm and rested.
  2. Middle numbers (around 30 to 60) mean an ordinary day.
  3. High numbers (above 60) mean your body looks more strained than usual.

There is no perfect number to aim for. What matters is how today compares to your own usual range.

Where the number comes from

The score is not measured directly. MigraineMe builds it from two simple things your watch or ring already tracks:

  1. Your resting heart rate. How fast your heart beats when you are at rest.
  2. Your heart rate variability (HRV). The tiny differences in time between heartbeats.

These come from whichever source feeds your heart data: a directly connected WHOOP, Garmin, Oura or Polar, or Apple Health on iPhone / Health Connect on Android.

One exception: if your source is a Garmin watch or an Oura ring, the device works out its own stress number, and MigraineMe shows that one directly instead of calculating its own.

How the maths works (in plain language)

You do not need to know this part, but if you are curious, here is the idea.

  1. MigraineMe looks at your previous two weeks of resting heart rate and HRV to learn your own usual range. It needs about five days of history before it can say anything.
  2. To do that fairly, it uses something called robust statistics. This is a careful way of measuring "usual" that is not thrown off by one strange day.
  3. Each new day's numbers are then compared to that usual range.
  4. The further today sits from your usual, in the direction that tends to mean strain (higher resting heart rate, lower HRV), the higher the score. Resting heart rate counts slightly more than HRV.
  5. The result is squeezed into a friendly 0 to 100 scale.

This means your score of 70 and someone else's score of 70 are not the same thing. Each one is judged against its own owner's pattern.

Where to see it

  1. Open MigraineMe.
  2. Tap the Monitor tab.
  3. Scroll to the Cognitive card. The stress index sits inside it, alongside things like screen time and the noise reading.
  4. You will see today's number and a small line showing recent days.

What if it is empty

The stress index needs both resting heart rate and HRV data. If your watch has not synced today, or you do not have a watch or ring, this reading may be empty.

  1. Open your watch app and pull down to refresh.
  2. Check Settings, Connections in MigraineMe to make sure your wearable, Apple Health or Health Connect is connected.

A gentle reminder

The stress index is not a verdict on your day. A high number does not mean you did anything wrong. It just means your body is showing signs of strain. Treat it as a quiet nudge, not a scolding.

If you would rather not see this, open the gear icon top-left, tap Data and Notifications, expand the Cognitive section and switch off Stress index.

More in this section

Still stuck? Write to us at help@migraineme.app

Download MigraineMe