MinifyPic

Due Date Calculator

Estimate your due date from the first day of your last period, and see how many weeks along you are.

FreeInstantPrivate
Loading tool…

How it works

A compact workflow from input to download.

1

Enter your figures

Fill in first day of last menstrual period and average cycle length (days). Every value stays in your browser — nothing is sent to a server.

2

Read the result

The result updates as soon as your inputs are valid, with the headline figure highlighted and the supporting numbers broken out beneath it.

3

Change the inputs and compare

Adjust any value to see immediately how it moves the result — the quickest way to understand which input the outcome is actually most sensitive to.

Frequently asked questions

How is the due date calculated?
By Naegele's rule: add 280 days — forty weeks — to the first day of your last menstrual period. This assumes a regular 28-day cycle with ovulation around day 14, which is why the estimate is less reliable if your cycles are longer, shorter or irregular.
Why is it counted from my last period rather than conception?
Because the date of the last period is something most people actually know, whereas the date of conception usually is not. It does mean the convention counts you as two weeks pregnant at the moment of conception, which is a genuine oddity of obstetric dating that confuses almost everyone at first.
How likely am I to give birth on the due date?
Only about 4 percent of babies arrive on their estimated due date. Most births occur within a window of roughly two weeks either side of it, and the due date is best understood as the centre of a distribution rather than an appointment. An early ultrasound gives a more accurate estimate than the last-period calculation.
Are my numbers sent anywhere?
No. Every calculation runs in JavaScript inside your own browser — nothing is uploaded, logged or stored. Your figures, including financial and health details, never leave your device.

A date that is really a range

The estimated due date is one of the most misunderstood numbers in medicine, largely because it is presented as a single day. In reality only around one baby in twenty-five arrives on it, and a full-term birth is defined as anywhere from 37 to 42 weeks — a five-week window. The date is a statistical midpoint, useful for scheduling scans, tracking growth against expected milestones and deciding when intervention might be warranted. It is not a prediction of when labour will start. Understanding this in advance spares a great deal of anxiety in the final weeks, when a baby who has not arrived 'on time' is very often entirely normal and simply somewhere else in the distribution.

Why dating by ultrasound is more reliable

Naegele's rule assumes a textbook 28-day cycle with ovulation on day 14, and a great many people do not have one. If you ovulate on day 20, your dates are pushed by nearly a week and every subsequent milestone shifts with them. This is why clinicians increasingly rely on an early ultrasound for dating: in the first trimester, embryos grow at a remarkably consistent rate, so measuring the crown-rump length estimates gestational age within a few days regardless of cycle length. If your ultrasound dating differs materially from your last-period dating, the ultrasound is generally the one your care team will trust, and it is worth knowing that in advance rather than being surprised by it.

This is an estimate, not medical advice

A calculator works from a formula and a handful of numbers, and a formula cannot examine you. The results here are population-level estimates derived from studies of large groups, and any individual can sit far from the average for entirely healthy reasons. They are a useful starting point for a conversation and a reasonable way to track a trend over time, but they are not a diagnosis and they cannot account for your medical history, medication, body composition or anything else a clinician would consider. If a result concerns you, or if you are making a decision about your health, speak to a doctor rather than to a web page.