Pregnancy Due Date Calculator

Estimate your pregnancy due date from the first day of your last menstrual period (LMP) using Naegele's rule - the standard clinical method. The calculator also shows how many weeks pregnant you currently are, how many days until the due date, and which trimester you are in.

Leave as today to see current pregnancy status.

Due date
8 October 2026
Weeks pregnant
21 weeks
Days remaining
129 days
Trimester
Second trimester

How it works

Naegele's rule adds 280 days (40 weeks) to the first day of your last menstrual period. This assumes a 28-day cycle with ovulation on day 14. If your cycle is shorter or longer, your actual ovulation and conception date may differ, and your doctor may adjust the date after an early ultrasound.

Formula
Due date = LMP + 280 days

Example. If your last period started on 1 January 2026, your estimated due date is 8 October 2026.

Frequently asked questions

How accurate is this due date?

Only about 4% of babies arrive on their exact due date. Most are born within 2 weeks before or after. An early ultrasound (7-10 weeks) is the most accurate way to date a pregnancy.

What if I have irregular cycles?

Naegele's rule assumes a 28-day cycle. Women with longer or shorter cycles may have a different due date. Your healthcare provider can adjust based on cycle length or ultrasound measurements.

Related calculators

Embed this calculator

Free to use on any site. Please keep the credit link.

<iframe
  id="letmecalc-pregnancy-calculator"
  src="https://letmecalc.com/embed/health/pregnancy-calculator"
  title="Pregnancy Calculator"
  width="100%"
  height="620"
  style="border:0;max-width:100%"
  loading="lazy"
></iframe>
<p><a href="https://letmecalc.com/health/pregnancy-calculator" target="_blank" rel="noopener">Pregnancy Calculator</a> by letmecalc</p>
<script>
(function () {
  var f = document.getElementById("letmecalc-pregnancy-calculator");
  window.addEventListener("message", function (e) {
    if (e.origin !== "https://letmecalc.com") return;
    if (!f || e.source !== f.contentWindow) return;
    var d = e.data;
    if (!d || d.source !== "letmecalc-embed" || d.type !== "resize") return;
    if (typeof d.height === "number" && d.height > 0) {
      f.style.height = d.height + "px";
    }
  });
})();
</script>