An app can tell you which day of your cycle it is, by counting from the days you marked, and it can lay that calendar under your own training charts. It cannot tell you how you will feel, lift or weigh on any given day — and Zyra Workouts is built not to pretend otherwise. This article states the exact rule the app uses to estimate cycle day and phase, describes what the planned chart overlay shows, and is explicit about what it does not claim.
How the phase is estimated (the exact rule)
The app stores exactly one kind of cycle data: a set of calendar days you marked as period days, toggled on or off from the cycle screen. Nothing else — no symptoms, no notes, no temperatures. Everything you see is derived from that set by four short functions.
| Step | Rule (from the app's code) | Example |
|---|---|---|
| Period starts | A marked day whose previous day is not marked | Marked 3, 4, 5 May and 31 May, 1 June → starts on 3 May and 31 May |
| Cycle day | Days since the most recent start, counting the start as day 1 | On 10 June, with the last start on 31 May, cycle day = 11 |
| Cycle length | Median of the gaps between consecutive starts, clamped to 21–35; 28 if fewer than two starts | Gaps of 28, 30 and 27 days → median 28 |
| Phase label | Cycle day ≤ round(length / 2) → follicular; otherwise luteal | Length 28 → days 1–14 follicular, 15–28 luteal |
A few properties of that rule are worth knowing. It uses the median rather than the mean, so a single unusually long or short cycle does not move the estimate. The clamp means the app will never assume a cycle shorter than 21 or longer than 35 days, whatever the data says. And the phase boundary is nothing more than the halfway point of the estimated length: it is a calendar convention, chosen so the two halves are comparable in size, not a claim about where any physiological event falls for you.
The dashboard shows the result as a small CYCLE tile — "Day N" and a 28-day grid of marked days — and the cycle screen shows "Cycle day N", or "No cycle data" until you have marked something. The tile can be switched off with the period-tracking setting.
In plain terms: the app counts days between the dates you gave it and splits the count in half. That is the whole estimate.
What the overlay on your volume chart shows
The design for the dashboard (spec §11.9) adds an opt-in overlay: when cycle data exists, the weekly volume chart and the recent-records chart can shade the follicular and luteal bands behind your own numbers. This is planned and off by default; as of this writing the phase function exists in the code but no chart draws it yet, so treat this section as what is coming rather than what you will see today.
What the overlay would show is your data, unchanged, on a shaded calendar:
- Working sets per week by muscle group, with the phase bands behind the weeks, so you can see whether your own logged volume tends to differ between the two halves.
- Recent records (estimated one-rep maxes, rep PRs) with the same bands, so you can see which half of the calendar your own best sets happened to fall in.
That is all it does. It does not rescale, adjust or annotate the numbers; it does not change your targets; it does not generate a message. It gives you two shaded halves and your own bars, and leaves the reading to you. If a pattern exists in your data it will be visible; if none exists, the bands will look like decoration — which is the honest outcome.
What it deliberately does not claim
Because the phase is a calendar estimate and the overlay is a background shade, the app makes none of the following claims, and this article does not either:
| The app does not… | Because… |
|---|---|
| Predict how strong, tired or motivated you will be on a given day | The estimate contains no information about you beyond dates |
| Change your program, loads, targets or rest by phase | Any such change would be a claim about your physiology it cannot support |
| Explain a weigh-in or a girth reading by phase | It shows the calendar next to the data; it does not attribute cause |
| Tell you where ovulation or any other event falls | The halfway split is a convention for comparable bands, nothing more |
| Turn the overlay on for you | Cycle data is personal; the tile can be hidden and the overlay is planned as opt-in |
If you want to act on what you see — reshuffle a heavy week, plan a deload, take a note — that is your call, or one to make with a coach. The point of putting your own training numbers on your own calendar is that you become the person with the evidence, rather than the app telling you what the evidence should say.
The short version
Zyra Workouts stores the days you mark, finds period starts, estimates cycle length as the median gap clamped to 21–35 days (28 by default), and labels the first half of the cycle follicular and the second luteal. A planned, off-by-default overlay will shade those two bands behind your volume and records charts so you can compare your own training numbers by phase. The app claims nothing about how any phase affects you; it shows your data on a calendar and stops there. Training guidance only — nutrition and training decisions around your cycle are yours and your coach's. Educational overview only — not medical advice.