# Period Calculator > Forecast period start and end dates, estimated ovulation, and fertile windows for multiple cycles. Page: https://askcalculators.com/calculator/period-calculator/ Definition: https://askcalculators.com/calculator/period-calculator/definition.json JSON Schema: https://askcalculators.com/calculator/period-calculator/schema.json Version: 2.0.0 Maintained by: AskCalculators (software project; not a credentialed reviewer) Qualified review: pending. Automated checks do not establish professional approval. Page status: Live Review status: Pending ## Use Open the calculator page and enter values. Query-string parameters can restore and bookmark a calculation. Example: https://askcalculators.com/calculator/period-calculator/?lastPeriodDate=2026-08-01&periodLength=5&cycleLength=28&lutealPhase=14&cycles=6 ## Inputs - lastPeriodDate: First day of last period; type=date; required; default=2026-08-01 - periodLength: Typical period length; type=number; required; default=5; min=1; max=14 - cycleLength: Average cycle length; type=number; required; default=28; min=20; max=45 - lutealPhase: Luteal phase length; type=number; required; default=14; min=8; max=20 - cycles: Cycles to forecast; type=number; required; default=6; min=1; max=24 ## Outputs - nextPeriod: Estimated next period; format=date; primary - nextPeriodEnd: Estimated period end; format=date - nextOvulation: Estimated ovulation; format=date - fertileWindow: Estimated fertile window; format=text ## Formula Next period = last period + average cycle length; estimated end = start + period length − 1; ovulation ≈ next period − luteal phase. ## Rules - Empty optional inputs are undefined, not zero. - Hidden conditional inputs are ignored. - Do not invent missing required inputs. Notice: Calendar predictions are estimates and are not a diagnosis or reliable contraception method.