Pregnancy weeks to months converter
Pregnancy is usually tracked in completed weeks, while everyday conversations often use months.
Run — free
This converter makes that change explicit by treating every month as exactly four weeks. Enter a non-negative whole number of completed pregnancy weeks and receive the number of complete four-week months plus the weeks left over. The calculation is quick, consistent, and useful for simple schedules, labels, notes, and educational examples. It does not estimate calendar months or replace pregnancy dating from a qualified healthcare professional.
Understand the four-week-month convention
This pregnancy weeks to months converter uses a deliberately simple rule: one month equals four completed weeks. It divides the supplied week count by four, keeps the whole-number quotient as months, and reports the remainder as additional weeks. For example, ten completed weeks become two months and two remaining weeks. This convention is useful when a worksheet, application, or conversation specifically asks for standard four-week months because its results never depend on which calendar months are involved. However, four-week months are not the same as calendar months. Most calendar months contain more than twenty-eight days, and pregnancy dating in clinical settings is generally expressed in weeks and days. The output should therefore be read as an arithmetic conversion, not as a claim about a particular calendar date or trimester. Keeping that distinction visible prevents a convenient shorthand from being mistaken for medical dating. If you need an appointment date, estimated due date, or interpretation of gestational age, use the dates and guidance supplied by a qualified healthcare professional instead.
Enter completed weeks and read the result
Provide the number of completed pregnancy weeks as a non-negative whole number. A value such as twenty-seven means that twenty-seven full weeks have elapsed; it does not include a partially completed week. The converter returns the original completed week count, complete four-week months, and remaining weeks. At twenty-seven weeks, six groups of four weeks are complete and three weeks remain, so the result is six months and three weeks. At twenty-eight weeks, the remainder returns to zero and the result becomes seven months. Zero is valid and produces zero months and zero remaining weeks. Missing values, words, infinite values, negative numbers, and fractional week counts are rejected rather than rounded or guessed. This strict behavior makes repeated API calls predictable and avoids silently changing what the user supplied. If your source records pregnancy age in weeks and days, keep the days separate or first decide, under the rules of your own workflow, whether only fully completed weeks should be sent. The converter itself never rounds partial weeks upward or downward.
Use the conversion responsibly
The result works well anywhere a deterministic four-week grouping is required. A pregnancy journal can display a compact month-and-week label beside the authoritative week count. An educational exercise can demonstrate integer division and remainders with a familiar timeline. A form migration can turn a legacy completed-weeks field into separate month and remainder fields without relying on dates, time zones, locale settings, or external services. The same input always produces the same output, whether it runs in the browser or through the API. That consistency is especially helpful in tests and data pipelines. Still, the conversion is intentionally narrow. It does not calculate conception, gestational age from a last menstrual period, fetal development milestones, trimesters, appointment timing, or an estimated due date. It also does not account for the unequal length of calendar months. Preserve the original completed week value whenever clinical or administrative accuracy matters, label the derived values as four-week months, and avoid using this arithmetic result to make health decisions. Questions about pregnancy timing, symptoms, or care should be directed to an appropriate healthcare professional.
What you can do with it
Label a pregnancy journal entry
Show a simple four-week month and remaining-week label while retaining the original completed pregnancy week count.
Normalize a form field
Split stored completed weeks into deterministic month and remainder fields for a non-clinical form or report.
Teach division with remainders
Use a familiar week count to demonstrate how whole groups of four and leftover values are calculated.
FAQ
How is a month defined?
A month is defined as exactly four completed weeks. This is a mathematical convention, not a calendar-month calculation.
Can I enter a fractional number of weeks?
No. The input must be a non-negative whole number because the capability converts completed weeks and does not round partial weeks.
Does this calculate gestational age or a due date?
No. It only groups a supplied completed-week count into four-week months and a remainder. It does not perform medical dating.
Why do four-week months differ from calendar months?
Four weeks always equal twenty-eight days, while most calendar months contain thirty or thirty-one days. The two systems therefore do not align exactly.
What does the API request cost?
Each API request costs $0.002. The browser version can run the same deterministic calculation locally.
For developers — API access
Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.
API endpoint
Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.
Call it from your stack
curl -X POST https://api.kit.forhosting.com/health/weeks-to-months-preg \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"weeks":27}'const res = await fetch("https://api.kit.forhosting.com/health/weeks-to-months-preg", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"weeks": 27
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/health/weeks-to-months-preg",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"weeks": 27
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/health/weeks-to-months-preg", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"weeks":27}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"weeks":27}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/health/weeks-to-months-preg", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"weeks": 27
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "health.weeks_to_months_preg",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.
Pricing
Published price — no tokens, no invented credits. A failed task is never charged.
Errors
| HTTP | Code | Meaning |
|---|---|---|
401 | unauthorized | Missing or invalid API key. |
402 | insufficient_balance | Your balance doesn't cover the task price. |
404 | unknown_type | That task type doesn't exist. |
429 | rate_limited | Too many requests. Use the webhook instead of polling. |