How it works
Future period starts are projected by repeatedly adding the average cycle length. Period ends use the typical duration, and ovulation is estimated by counting backward from the next period.
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
5-
?lastPeriodDate=First day of last periodDate · Required · Default: 2026-08-01
-
?periodLength=Typical period lengthNumber · Required · Default: 5
-
?cycleLength=Average cycle lengthNumber · Required · Default: 28
-
?lutealPhase=Luteal phase lengthNumber · Required · Default: 14
-
?cycles=Cycles to forecastNumber · Required · Default: 6
Outputs
4-
nextPeriodEstimated next periodDate · Primary output
-
nextPeriodEndEstimated period endDate
-
nextOvulationEstimated ovulationDate
-
fertileWindowEstimated fertile windowText
Tracking limit
A calendar forecast is not confirmation of ovulation, pregnancy, or a medical condition.