Calcolatore della data presunta del parto
Stimi la data presunta del parto dal primo giorno dell'ultima mestruazione: un ciclo iniziato il 1° gennaio 2026, lungo 28 giorni, porta all'8 ottobre 2026, 280 giorni dopo, con la fine di ogni trimestre. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Primo giorno dell'ultima mestruazione
- 2026-01-01
- Durata del ciclo (giorni)
- 28
- Data presunta del parto
- 2026-10-08
- Fine del primo trimestre
- 2026-04-08
- Fine del secondo trimestre
- 2026-07-15
gratis online
Come viene stimata la data del parto
Il calcolatore applica la regola di Naegele al primo giorno dell'ultima mestruazione. Una gravidanza standard si conta come 280 giorni da quella data, il che presuppone un ciclo di 28 giorni. Poiché i cicli variano, lei può indicare la durata del suo e il conteggio si adatta della differenza: la gestazione diventa 280 giorni più la durata del ciclo meno 28. Per questo un ciclo di 30 giorni sposta la data due giorni più avanti e uno di 26 la anticipa di due giorni. Con un'ultima mestruazione iniziata il 1° gennaio 2026 e il ciclo predefinito, la data presunta del parto è l'8 ottobre 2026. Sono accettati cicli da 20 a 45 giorni.
Le tappe dei trimestri e dove si usano
Oltre alla data del parto, il risultato riporta il totale dei giorni di gestazione e due tappe: la fine del primo trimestre, 97 giorni dopo il primo giorno dell'ultima mestruazione, e la fine del secondo, a 195 giorni. Per una mestruazione iniziata il 1° gennaio 2026 cadono l'8 aprile e il 15 luglio 2026. Le date avanzano correttamente tra mesi e anni e tengono conto degli anni bisestili, quindi una mestruazione iniziata il 15 febbraio 2024 include il 29 febbraio. Le app per la gravidanza lo usano per mostrare data e tappe partendo da una sola data, e i moduli di accettazione clinica per precompilare l'età gestazionale adattata al ciclo di ogni paziente.
Casi d'uso
App per la gravidanza
Mostri a un futuro genitore la data presunta del parto e le tappe dei trimestri a partire da un unico inserimento dell'ultima mestruazione.
Moduli di anamnesi clinica
Precompili l'età gestazionale e la data presunta in una cartella clinica elettronica o in un flusso di prenotazione, aggiustate per ciclo per ogni paziente.
Domande frequenti
Il fuso orario influisce sul risultato?
No. Tutti i calcoli sono di date civili in UTC senza Date.now(), quindi i risultati sono pienamente deterministici.
Come si calcola la data presunta del parto?
Con la regola di Naegele: si aggiungono 280 giorni al primo giorno dell'ultima mestruazione. Per una mestruazione iniziata il 1° gennaio 2026 e un ciclo di 28 giorni, la data stimata è l'8 ottobre 2026.
E se il mio ciclo dura più o meno di 28 giorni?
Indichi la durata del suo ciclo e la data si sposta della differenza: un ciclo di 30 giorni posticipa il parto di due giorni e uno di 26 lo anticipa di due giorni. È accettato qualsiasi numero intero di giorni da 20 a 45.
Quando finisce ogni trimestre?
La fine del primo trimestre cade 97 giorni dopo il primo giorno dell'ultima mestruazione, quella del secondo a 195 giorni. Con una mestruazione iniziata il 1° gennaio 2026, le date sono l'8 aprile e il 15 luglio 2026.
Il calcolatore tiene conto degli anni bisestili?
Sì. Le date passano correttamente da un mese e da un anno all'altro e includono il 29 febbraio quando cade durante la gravidanza, quindi un'ultima mestruazione iniziata il 15 febbraio 2024 conta automaticamente quel giorno in più.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/dev/due-date \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"lmp":"2026-01-01"}'const res = await fetch("https://api.kit.forhosting.com/dev/due-date", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"lmp": "2026-01-01"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/due-date",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"lmp": "2026-01-01"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/due-date", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"lmp":"2026-01-01"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"lmp":"2026-01-01"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/due-date", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"lmp": "2026-01-01"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.due_date",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Stima la data presunta del parto a partire dal primo giorno dell'ultima mestruazione (lmp) e da un valore facoltativo cycle_days, restituendo la data presunta, entrambe le date di fine trimestre e i giorni totali di gestazione.
Il calcolo di Naegele, aggiustato per il suo ciclo
Lo strumento applica la regola di Naegele al campo lmp, la data ISO (YYYY-MM-DD) del primo giorno della sua ultima mestruazione. Una gravidanza standard viene conteggiata come 280 giorni da quella data, ma il calcolatore si adatta al suo ciclo personale con la formula offset = 280 + (cycle_days - 28), quindi un ciclo di 30 giorni sposta la data presunta di due giorni in avanti e un ciclo di 26 giorni la anticipa di due giorni. cycle_days vale 28 per impostazione predefinita e deve essere un intero tra 20 e 45. La risposta restituisce due_date (lmp più l'offset), gestation_days (l'offset stesso) e due tappe: trimester1_end a lmp + 97 giorni e trimester2_end a lmp + 195 giorni. Con lmp 2026-01-01 e il ciclo predefinito, due_date è 2026-10-08 e gestation_days è 280.
Aritmetica pura di date civili in UTC
Internamente addDays analizza la stringa con una regex rigorosa, costruisce la data tramite Date.UTC, aggiunge l'offset in giorni e la riserializza con toISOString().slice(0,10), il che scavalca correttamente i confini di mese e anno e rispetta gli anni bisestili — un lmp del 2024-02-15 conteggia automaticamente il 29 febbraio. Tutti i calcoli sulle date sono pura aritmetica di date civili in UTC senza orologio di sistema: il codice non chiama mai Date.now(), quindi lo stesso lmp produce sempre la stessa due_date indipendentemente dal fuso orario del server o dal momento della richiesta.
Validazione ed errori tipizzati
L'input di livello superiore deve essere esso stesso un semplice oggetto — array e null vengono rifiutati. Ogni campo viene controllato prima che venga eseguito qualsiasi calcolo, e qualsiasi errore solleva un errore tipizzato invalid_input che nomina il problema anziché un'eccezione non tipizzata. lmp deve essere una stringa che corrisponde a YYYY-MM-DD con un mese da 1 a 12 e un giorno di calendario reale; un valore come 2026-02-30 viene respinto perché la data UTC costruita non torna alle stesse componenti nell'andata e ritorno. cycle_days deve essere un intero entro 20-45, quindi 19, 46 o un valore frazionario falliscono tutti.
Casi di integrazione
Programmazione in blocco
Elabori in blocco migliaia di record di ultima mestruazione tramite l'API per pianificare le finestre di appuntamento in modo deterministico.
Domande tecniche
Quale regola usa?
La regola di Naegele: 280 giorni dall'ultima mestruazione, aggiustati di (cycle_days - 28).
Posso impostare un ciclo diverso da 28 giorni?
Sì. Passi cycle_days come intero da 20 a 45; il valore predefinito è 28.
Quale formato di data serve per lmp?
Una stringa rigorosa YYYY-MM-DD; le date impossibili come 2026-02-30 restituiscono invalid_input.
È gratuito?
Sì nel widget del browser. L'API esegue lo stesso motore a partire da $0.002 per chiamata.