{
  "id": "period",
  "version": "2f006bcb2d06",
  "status": "published",
  "name": "Period Calculator",
  "question": "When is my next period?",
  "summary": "Predicts the next three periods from the first day of the last period and the usual cycle length, with the likely ovulation day and fertile window.",
  "category": "health",
  "subcategory": "pregnancy",
  "url": "https://www.acalculator.org/health/period-calculator",
  "markdown": "https://www.acalculator.org/health/period-calculator.md",
  "kind": "function",
  "method": "Next period = the first of last period + k × cycle length (k = 1, 2, 3, …) on or after today; ovulation = next period − 14 days; fertile window = ovulation − 5 days to ovulation; later periods add the cycle length again.",
  "assumptions": [
    "Every cycle has the same length as the one you enter. Real cycles vary from month to month.",
    "If your last period was more than one cycle ago, the dates continue the same rhythm, so the next period shown is never before today.",
    "Ovulation happens 14 days before the next period (the luteal phase), the average ACOG gives; in real cycles it varies.",
    "The fertile window is the 6 days that end on the ovulation day (Wilcox and others, 1995).",
    "The dates are estimates for information. They are not a reliable way to prevent pregnancy and are not medical advice."
  ],
  "inputs": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "type": "object",
    "properties": {
      "lmp": {
        "title": "First day of your last period",
        "description": "The first day of bleeding of your most recent period.",
        "type": "string",
        "format": "date"
      },
      "cycle": {
        "title": "Cycle length (days)",
        "description": "Days from the first day of one period to the first day of the next; 28 on average.",
        "type": "integer",
        "minimum": 20,
        "maximum": 45
      },
      "days": {
        "title": "Period length (days)",
        "description": "How many days your bleeding usually lasts.",
        "type": "integer",
        "minimum": 1,
        "maximum": 10
      },
      "on": {
        "title": "Today’s date",
        "description": "The date to count from: the next period is the first predicted period on or after it.",
        "type": "string",
        "format": "date"
      }
    }
  },
  "outputs": {
    "next": {
      "label": "Next period starts",
      "description": "The first day of the next period: the first of last period + k × cycle length (k = 1, 2, …) on or after today.",
      "format": "date"
    },
    "nextEnd": {
      "label": "Next period ends",
      "description": "The last day of the next period: its first day + period length − 1.",
      "format": "date"
    },
    "fertileStart": {
      "label": "Fertile window starts",
      "description": "Five days before the estimated ovulation day.",
      "format": "date"
    },
    "ovulation": {
      "label": "Estimated ovulation",
      "description": "The likely ovulation day and end of the fertile window: 14 days before the next period.",
      "format": "date"
    },
    "second": {
      "label": "Period after that",
      "description": "The first day of the period after next: next period + cycle length.",
      "format": "date"
    },
    "third": {
      "label": "Third period",
      "description": "The first day of the third predicted period: next period + 2 × cycle length.",
      "format": "date"
    }
  },
  "defaultAnswer": {
    "inputs": {
      "lmp": "2026-09-15",
      "cycle": 28,
      "days": 5,
      "on": "2026-09-29"
    },
    "outputs": {
      "next": "2026-10-13",
      "nextEnd": "2026-10-17",
      "fertileStart": "2026-09-24",
      "ovulation": "2026-09-29",
      "second": "2026-11-10",
      "third": "2026-12-08"
    },
    "text": "With a 28-day cycle, your next period should start on October 13, 2026."
  },
  "examples": [
    {
      "given": {
        "lmp": "2026-09-01",
        "cycle": 28,
        "days": 5
      },
      "expect": {
        "next": "2026-09-29",
        "nextEnd": "2026-10-03",
        "fertileStart": "2026-09-10",
        "ovulation": "2026-09-15",
        "second": "2026-10-27",
        "third": "2026-11-24"
      },
      "source": "hand calculation in content.mdx: ACOG (28-day cycle, ovulation about 14 days before the next period); Wilcox and others 1995 (6-day fertile window ending on ovulation)"
    },
    {
      "given": {
        "lmp": "2026-12-20",
        "cycle": 32,
        "days": 4
      },
      "expect": {
        "next": "2027-01-21",
        "nextEnd": "2027-01-24",
        "ovulation": "2027-01-07",
        "fertileStart": "2027-01-02"
      },
      "source": "hand calculation in content.mdx: a 32-day cycle across the new year"
    },
    {
      "given": {
        "lmp": "2028-02-10",
        "cycle": 21,
        "days": 7
      },
      "expect": {
        "next": "2028-03-02",
        "nextEnd": "2028-03-08",
        "ovulation": "2028-02-17",
        "fertileStart": "2028-02-12"
      },
      "source": "hand calculation in content.mdx: a 21-day cycle through February 29, 2028 (a leap year)"
    },
    {
      "given": {
        "lmp": "2026-06-01",
        "cycle": 28,
        "days": 5,
        "on": "2026-09-28"
      },
      "expect": {
        "next": "2026-10-19",
        "nextEnd": "2026-10-23",
        "fertileStart": "2026-09-30",
        "ovulation": "2026-10-05",
        "second": "2026-11-16",
        "third": "2026-12-14"
      },
      "source": "hand calculation in content.mdx: 119 days since June 1; 119 ÷ 28 = 4.25, so k = 5 and June 1 + 140 days = October 19"
    },
    {
      "given": {
        "lmp": "2026-08-31",
        "cycle": 28,
        "days": 5,
        "on": "2026-09-28"
      },
      "expect": {
        "next": "2026-09-28",
        "second": "2026-10-26"
      },
      "source": "hand calculation in content.mdx: 28 days since August 31, so k = 1 and the next period starts today"
    }
  ],
  "sources": [
    "American College of Obstetricians and Gynecologists, Fertility Awareness-Based Methods of Family Planning (FAQ024, last reviewed February 2025). https://www.acog.org/womens-health/faqs/fertility-awareness-based-methods-of-family-planning",
    "American College of Obstetricians and Gynecologists, Heavy and Abnormal Periods (TFAQ007, last reviewed April 2026). https://www.acog.org/womens-health/faqs/heavy-and-abnormal-periods",
    "Wilcox AJ, Weinberg CR, Baird DD. Timing of sexual intercourse in relation to ovulation. New England Journal of Medicine 1995;333:1517–1521. doi:10.1056/nejm199512073332301",
    "Wilcox AJ, Dunson D, Baird DD. The timing of the \"fertile window\" in the menstrual cycle: day specific estimates from a prospective study. BMJ 2000;321:1259–1262. doi:10.1136/bmj.321.7271.1259",
    "Bull JR, Rowland SP, Scherwitzl EB, et al. Real-world menstrual cycle characteristics of more than 600,000 menstrual cycles. npj Digital Medicine 2019;2:83. doi:10.1038/s41746-019-0152-7"
  ],
  "related": [
    "pregnancy-test",
    "conception"
  ],
  "changelog": [
    {
      "date": "2026-09-28",
      "note": "The next period is the first predicted period on or after today (new Today’s date input), so an old last period gives no past dates."
    }
  ]
}
