How it works
Ovulation is estimated by counting backward from the next expected period using the entered luteal-phase length. The fertile window extends from five days before through one day after that date.
Input query strings and outputs
Use an input name in this page’s URL as ?name=value, and join additional inputs with &. Portable shared links may instead use the compact ?ac= state parameter.
Input query strings
4-
?lastPeriodDate=First day of last periodDate · Required · Default: 2026-08-01
-
?cycleLength=Average cycle lengthNumber · Required · Default: 28
-
?lutealPhase=Luteal phase lengthNumber · Required · Default: 14
-
?cycles=Cycles to forecastNumber · Required · Default: 6
Outputs
4-
nextOvulationEstimated next ovulationDate · Primary output
-
fertileWindowEstimated fertile windowText
-
nextPeriodEstimated next periodDate
-
bestDaysHighest-probability daysText
Limit
Calendar tracking does not verify ovulation. Irregular cycles, postpartum changes, perimenopause, illness, and other factors can reduce accuracy.