METHODOLOGY

How Plumm predicts your cycle so precisely.

Our algorithm doesn't guess — it learns from your real cycles, grounded in clinical research. Here's how, in full transparency.

Day-accurate after 3 cycles

The more you log, the more the prediction sharpens. The algorithm learns from YOU.

8 clinical signals

Mucus, ovulation pain, libido, spotting… each weighted by the clinical literature.

Sources: Hilgers, Billings, ACOG

We cite our references — and ship them in our code.

The starting point: Ogino, only better

Most apps predict from an « average » 28-day cycle with ovulation on day 14. That's the Ogino method, a hundred years old — and accurate for no one, because nobody has a perfectly average cycle.

Plumm starts from that estimate, then refines it through two mechanisms: learning your actual cycle lengths, and refining based on the signals you log.

1. Adaptive learning: your cycles, not an average

The moment you record your period, Plumm stores a history of your real cycles. With each new cycle, we compute your true average length — using an exponential weighting that gives more weight to recent cycles (your last 5 count more than those from 6 months ago).

Outlier cycles (< 15 days or > 60 days) are automatically filtered out. Your « average » cycle in Plumm is therefore yours, not the population's.

2. Multi-signal refinement: 8 clinically weighted signs

Standard apps stop here. Plumm goes further: if you log physiological signals, the algorithm adjusts your predictions in real time.

Each signal carries a weight based on clinical literature: • Egg-white mucus (weight 0.8) — Hilgers 1978, Scarpa 2006: 70-90 % reliability for spotting ovulation (Billings method) • Watery mucus (0.6) — Bigelow 2004: fertile window signal • Dry mucus after peak (0.85) — Billings: confirms ovulation has passed • Mittelschmerz / ovulation pain (0.8) — NCBI StatPearls 2023 • Libido peak (0.4) — Bullivant 2004 • Spotting (0.85) — ACOG, Munro 2018: cycle-start signal • PMS pain cluster (0.5) — Borenstein 2003 • PMS mood cluster (0.4) — Halbreich 2003

3. Time decay: yesterday matters more than last week

A signal has a shelf life. Plumm applies an exponential decay (weight × 0.8^days): yesterday's signal counts at 80 % of its weight, the day before at 64 %, and so on. Beyond 10 days, it's ignored.

In practice: what you log today carries more weight than what you logged last week. The same way a gynecologist would read your most recent signs.

4. 70/30 blend: signals + baseline

The algorithm never blindly follows a single signal. The final prediction is a mix of 70 % recent signals + 30 % adaptive baseline (your statistical average).

This anchor prevents drift: one misread signal can't push your prediction far from your statistical reality.

5. Conflict detection

If Plumm detects contradictory signals (say, an ovulation cue AND a period cue within 3 days), it switches to cautious mode: baseline prediction + low confidence indicator. And it tells you why.

A « not sure » beats a false certainty.

And the limit, because we need to say it.

Plumm is a tracking tool, not a medical device. Even with the best algorithms, predicting ovulation 100 % of the time isn't possible — the body isn't a clock.

For contraception, use a medically validated method. To plan a pregnancy, work with a doctor or midwife. In case of doubt (long-overdue periods, abnormal pain, unusual bleeding), see a professional. Plumm walks with you, but doesn't replace medical advice.

Ready to truly see your cycle?

Download Plumm and let the algorithm learn from you.

Download Plumm