Health & FitnessFormula-based · Runs in your browser

Period Calculator

Forecast period start and end dates, estimated ovulation, and fertile windows for multiple cycles.

Preparing saved example…

Inputs

Enter the values you know. Optional fields may be left empty.

Local save controls below
Required
Required
days
Required
days
Required
days
Required

Result

Updates as valid inputs change.

Calculated locally
Calendar predictions are estimates and are not a diagnosis or reliable contraception method.
Estimated next period
Estimated period end
Estimated ovulation
Estimated fertile window

Saved locally, explained clearly

Drafts, calculations, scenarios, and workflow progress stay in this browser unless you export them.

Opening local database…

Calculation steps

Follow what happened from the selected formula to the displayed answer.

Show substituted values and intermediate working
Calculate current inputs to see the working.
  1. 1

    Formula selected

    The calculator uses the following formula or method.

    Next period = last period + average cycle length; estimated end = start + period length − 1; ovulation ≈ next period − luteal phase.

  2. 2

    Values entered

    Your values are placed into the calculation.

    Enter values to see what is used in this step.

  3. 3

    Result calculated

    The formula or method produces the following result values.

    Results will appear after a successful calculation.

  4. 4

    Answer formatted

    Displayed values are rounded and formatted using each output’s configured precision.

Scenario comparison

Save working scenarios, then select two or three to compare. Formula versions and inputs remain visible.

No scenarios saved for this calculator yet.

Recent calculations

Successful calculations are retained locally according to your privacy settings.

No local history for this calculator yet.

Data and privacy

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 period

    Date · Required · Default: 2026-08-01

  • ?periodLength= Typical period length

    Number · Required · Default: 5

  • ?cycleLength= Average cycle length

    Number · Required · Default: 28

  • ?lutealPhase= Luteal phase length

    Number · Required · Default: 14

  • ?cycles= Cycles to forecast

    Number · Required · Default: 6

Outputs

4
  • nextPeriod Estimated next period

    Date · Primary output

  • nextPeriodEnd Estimated period end

    Date

  • nextOvulation Estimated ovulation

    Date

  • fertileWindow Estimated fertile window

    Text

Tracking limit

A calendar forecast is not confirmation of ovulation, pregnancy, or a medical condition.

Sources
Limitations
  • Calendar predictions are estimates and are not a diagnosis or reliable contraception method.
  • Health results are educational estimates, not a diagnosis or treatment recommendation. Individual circumstances may require a qualified clinician's assessment.