# Pregnancy Due Date Calculator

> Estimates the due date, conception date and current gestational age from the first day of the last menstrual period, adjusting for cycle length (Naegele's rule).

- Calculator id: `pregnancy-due-date` · Category: Health (`health`) · Tool name: `calculate_pregnancy_due_date`
- Canonical page: https://tttkmbb.com/health/pregnancy-due-date · This document: https://tttkmbb.com/health/pregnancy-due-date.md · JSON definition: https://tttkmbb.com/health/pregnancy-due-date.json

## Purpose

Estimates the due date, conception date and current gestational age from the first day of the last menstrual period, adjusting for cycle length (Naegele's rule).

**Use when:** You know the first day of the last period and want the estimated due date, trimester dates or gestational age on a given date.

**Do not use when:** Cycles are very irregular, the LMP is unknown, or an ultrasound dating is available (ultrasound dating in the first trimester is more accurate and takes precedence).

## Input

| Parameter | Type | Unit | Required | Description |
| --- | --- | --- | --- | --- |
| `last_period_date` | date |  | required | First day of the last menstrual period (ISO date YYYY-MM-DD). |
| `cycle_length_days` | integer | days | optional, default 28 | Average menstrual cycle length; the due date shifts by (cycle − 28) days. (min 20, max 45) |
| `as_of_date` | date |  | optional | Optional date on which to report gestational age (weeks + days). Omit to skip. |

## Output

| Field | Type | Unit | Description |
| --- | --- | --- | --- |
| `due_date` | date |  | LMP + 280 days + (cycle − 28). |
| `conception_date_estimate` | date |  | Approximately LMP + 14 days + (cycle − 28). |
| `second_trimester_start` | date |  | Week 14 (day 91 of pregnancy). |
| `third_trimester_start` | date |  | Week 28 (day 189). |
| `gestational_age` | string |  | Weeks and days as of as_of_date (only when as_of_date is given). |
| `gestational_days` | integer | days | Days since LMP as of as_of_date (only when given). |

## Formula

`due_date = LMP + 280 days + (cycle_length − 28); conception ≈ LMP + 14 + (cycle_length − 28); gestational_age = as_of_date − LMP`

## Data Sources

- ACOG Committee Opinion 700 (2017) Methods for Estimating the Due Date — https://www.acog.org/clinical/clinical-guidance/committee-opinion/articles/2017/05/methods-for-estimating-the-due-date (standard, retrieved 2026-09-23)

Data freshness: `static`. Deterministic formula with fixed constants; results never go stale. Inputs supplied by the caller determine the output.

## API

- `GET https://tttkmbb.com/api/v1/calculate/pregnancy-due-date?last_period_date=…`
- `POST https://tttkmbb.com/api/v1/calculate/pregnancy-due-date` with JSON body `{"inputs": {…}}`
- Response: unified envelope (`success`, `request`, `result.values`, `result.units`, `sources`, `freshness`, `timestamp`, `next_actions`, `links`); see https://tttkmbb.com/docs/response-format.md
- Schema: https://tttkmbb.com/api/v1/calculators/pregnancy-due-date · OpenAPI operationId `calculate_pregnancy_due_date` in https://tttkmbb.com/openapi.json
- Authentication: none. Rate limit: fair use, see https://tttkmbb.com/docs/rate-limits.md.

## MCP

- Server: `https://tttkmbb.com/mcp` (Streamable HTTP, JSON-RPC 2.0, no auth)
- Tool:  `run_calculator` with `{"calculator_id": "pregnancy-due-date", "inputs": {…}}`

## Example

- LMP 2026-01-01, 28-day cycle, as of 2026-04-15: inputs `{"last_period_date":"2026-01-01","cycle_length_days":28,"as_of_date":"2026-04-15"}` → `{"due_date":"2026-10-08","conception_date_estimate":"2026-01-15","second_trimester_start":"2026-04-02","third_trimester_start":"2026-07-09","gestational_age":"14 weeks 6 days","gestational_days":104}`
- LMP 2026-03-10, 32-day cycle: inputs `{"last_period_date":"2026-03-10","cycle_length_days":32}` → `{"due_date":"2026-12-19"}`

```
GET https://tttkmbb.com/api/v1/calculate/pregnancy-due-date?last_period_date=2026-01-01&cycle_length_days=28&as_of_date=2026-04-15
```

## Limitations

Cycles are very irregular, the LMP is unknown, or an ultrasound dating is available (ultrasound dating in the first trimester is more accurate and takes precedence). All values are computed from the formula above; no measurement or live data is involved.

## FAQ

**How accurate is the due date?**

Only about 4% of babies arrive on the estimated date; most are born within two weeks either side. First-trimester ultrasound refines the estimate.

**How are trimesters defined?**

Following ACOG: first trimester through 13 weeks 6 days, second from 14 weeks 0 days, third from 28 weeks 0 days.

## Related

- [Ovulation Calculator](https://tttkmbb.com/health/ovulation.md) — Estimate fertile window and ovulation for a cycle.
- [Date Difference Calculator](https://tttkmbb.com/everyday/date-difference.md) — General date arithmetic.
