We IBD

How your health indicator is calculated

We IBD is a private self-tracking journal. Everything the app displays is deterministic arithmetic applied to data you have entered yourself. This calculation runs entirely on your device: no server, no account, no network call, no machine-learning or generative model, and no health professional involved. (The app's only network call anywhere is a separate, opt-in food-barcode lookup — it never touches this indicator.) This page describes every input, every weight and every threshold, so nobody has to trust an opaque number.

We IBD is not a medical device and does not replace medical advice. Clinical indices are used here as a structuring framework for self-observation, never as a diagnostic tool. Every threshold and weight described on this page is a self-monitoring heuristic, not a diagnostic one. The Harvey-Bradshaw, partial Mayo and SCCAI figures below are calculated by We IBD from your entries — they are not the value a clinician would obtain administering the original questionnaire in person.

1. The percentage indicator (0–100%)

The percentage shown on the Home card and in the app is not the Harvey-Bradshaw Index, the partial Mayo score or the SCCAI — those are shown separately, as raw numbers, never as a percentage. The percentage is a scale specific to We IBD, where higher is better: 100% means everything you logged over the window looks good. It corresponds to no medical scale and is not a percentage of any clinical quantity.

Formula: global = intestinal × 0.7 + fatigue × 0.2 + stress × 0.1, each sub-score normalised to [0,1], displayed ×100.

Global scoreLevel shown
≥ 0.70Good
0.40 – 0.69Moderate
< 0.40Concerning
This weighting changed in version 1.2 (it was 60/20/20 before, with bands at 0.66/0.35). For identical entries, the new formula can move your percentage by up to 9 points — that's the formula changing, not your health changing. The levels above were recalibrated at the same time, specifically so that a patient in a flare is never pushed into a better-looking band by the re-weighting alone.

The Home screen calculates this indicator over the last 7 days. The consultation report calculates it over whichever period you select — the two values will therefore legitimately differ, and the window is stated on each screen.

With no stool entry logged, the score is not considered meaningful, and the app states this rather than showing a misleading number.

2. Which framework, depending on your profile

Tracking profileFramework used
Crohn's diseaseHarvey-Bradshaw Index (HBI)
Ulcerative colitisPartial Mayo score — switches to SCCAI if urgency and nocturnal stools are both present in at least 30% of entries
IBS / simple trackingBristol scale alone

3. Harvey-Bradshaw Index (Crohn's disease) — items

ItemHow it is obtained
General well-being (0–4)(average pain ÷ 10) × 4, from the 0–10 pain ratings you log
Abdominal pain (0–3)(average pain ÷ 10) × 3
Liquid stoolsCount of Bristol type 6 or 7 stools you logged, capped at 9
Abdominal massAlways 0 — item neutralised
ComplicationsUrgency, nocturnal stool, incontinence, blood: 1 point each, if observed at least once over the period
Why abdominal mass is always zero. This item requires a physical examination by a physician. We IBD cannot observe it, and deliberately chooses to leave it at zero rather than estimate it: the app must never simulate a clinical finding. This is also why the value shown here is not comparable to an HBI taken during an in-person consultation.

Normalisation (HBI → [0,1], linear interpolation within each band):

HBI rangeScore
0 – 51.0 to 0.9
5 – 80.89 to 0.65
8 – 170.64 to 0.35
17 – 300.34 to 0.0

4. Partial Mayo score (ulcerative colitis) — items

ItemHow it is obtained
Stool frequency (0–3)0–1 stool → 0 · 2–3 → 1 · 4–5 → 2 · ≥ 6 → 3
Rectal bleeding (0–3)Worst blood presence observed over the period — none → 0 · traces → 1 · moderate → 2 · heavy → 3
Global assessment (0–3)(average pain ÷ 10) × 3. In the original score this is the physician's assessment; here it is a proxy derived from the pain you log — stated explicitly

Normalisation (range 0–9):

Score rangeSub-score
0 – 21.0 to 0.9
2 – 50.89 to 0.65
5 – 80.64 to 0.35
8 – 90.34 to 0.0

5. SCCAI

Partial Mayo score plus two dedicated items: urgency (+1) and nocturnal stools (+1), over a range of 0–11.

Normalisation (range 0–11):

Score rangeSub-score
0 – 31.0 to 0.9
3 – 60.89 to 0.65
6 – 90.64 to 0.35
9 – 110.34 to 0.0

6. Bristol scale alone (IBS / simple tracking)

The optimal band is types 3 and 4 (zero deviation). Below that band, the score uses the distance to type 3; above it, the distance to type 4. The maximum theoretical deviation is 3. Score = 1 − (average deviation ÷ 3).

7. Fatigue and stress sub-scores

Manual entry (0–10) is normalised so that 0 → 1.0 (optimal) and 10 → 0.0. With no symptom entry logged, a neutral value of 0.5 is used instead of guessing.

Blend with Health app signals: your manual entry is weighted 0.7, an objective Health-app signal (when available) 0.3 — a weighting that keeps how you feel in the lead, not a sensor corroborating it.

Objective signalHow it maps to [0,1]
Sleep≥ 8h → 1.0 · ≤ 4h → 0.0 · linear in between
HealthKit fatigue level1 → 0.75 · 2 → 0.50 · 3 → 0.25
"State of Mind" valence−1 to +1 → (v + 1) ÷ 2
Activity (steps)Your last 3 complete days vs. your own 30-day median (no fixed target): at your median → 0.5 · standing still → 0.0 · at double → 1.0
A documented limit: the "objective" share can be your own entry, read back. Sleep is a genuinely independent measurement — the only fully external signal that enters this score. Fatigue and stress are different: when you log a symptom entry, We IBD also writes a derived fatigue level and a derived "State of Mind" valence into the Health app, and later reads Health-app data for the same period back in, filtered only by date, with no check on which app wrote it. If Health has no other source for that day, the app reads back the value it wrote itself: for stress, the "objective" signal then equals exactly (1 − your own 0–10 rating ÷ 10), so the 0.7/0.3 blend collapses to your original entry, unchanged. The objective share only adds independent information when another source — the Health app itself, an Apple Watch, another app — has written fatigue or mood data for that period.
A second documented limit: the activity baseline moves with you. Your median is a rolling 30-day figure. A patient whose activity declines slowly sees their own median decline with them: the ratio drifts back toward 1.0 and the sub-score back toward 0.5 within about a month. This signal is built to catch a sharp, sudden drop, not a slow chronic decline — it should not be read as measuring either one indifferently. Its maximum possible contribution to the overall indicator is about 2%, and without permission to read your step count the indicator is numerically unchanged.

Deliberately excluded from the score: heart-rate variability, resting heart rate and weight. Their baseline is too individual for an absolute threshold — they are shown as trends, never folded into the score.

A missing signal never enters the blend: no value is ever invented.

8. Weekly check-in (not part of the indicator)

Once a week, the app can ask a short, self-made set of questions about how your week went, plus one 0–100 scale. It is not a validated clinical questionnaire, and it is never scored, never weighted and never folded into the percentage indicator described above. Your answers are reproduced verbatim in your consultation report, under a heading that states they were declared by you. The weekly reminder is optional.

9. The consultation report

The consultation report is generated by the app, on the device. It contains counts, averages and distributions of your own entries only, over the period you choose. It makes no interpretation, gives no recommendation and no treatment advice. It is not reviewed or validated by a clinician. Its purpose: to let a patient walk into a consultation with facts instead of memory.

10. References

The clinical frameworks referenced above are published instruments, used here as a self-observation structure:

These frameworks are published instruments, used here as a structuring aid for self-observation. The aggregation and the thresholds described on this page are specific to We IBD and are not validated instruments.

Last updated: August 2026 · ← We IBD