ForHosting KIT · Utilidades de desarrollo

Diferencia entre fechas en años, meses y días

Esta calculadora desglosa la distancia entre dos fechas ISO explícitas en años completos, meses completos y días restantes.

● BetaGratis · en su navegador
Úselo desde WebAPIEmailTelegramApp pronto

También indica la dirección y el total de días con signo. Como usted proporciona ambas fechas, el resultado nunca depende de la hora actual. La validación estricta AAAA-MM-DD, el calendario gregoriano proléptico y una aritmética independiente de la zona horaria permiten reproducir la misma solicitud en el navegador, el API o una prueba automática.

Cómo se calcula el desglose en años, meses y días

La calculadora interpreta el intervalo como duración de calendario, no como conversión decimal de días. Desde la fecha anterior busca el mayor número de meses completos que puede sumar sin rebasar la posterior. Separa ese número en años y meses, y calcula los días exactos desde el aniversario intermedio. Por eso, treinta días no siempre constituyen un mes: debe haberse alcanzado el siguiente aniversario mensual. Este método conserva el significado habitual de años y meses aunque su longitud varíe. total_days ofrece por separado la diferencia ordinal con signo. Use ese campo si necesita un único recuento y el desglose cuando necesite una duración legible. Los componentes permanecen no negativos al invertir las fechas; direction y total_days conservan el orden de entrada.

Finales de mes, años bisiestos, orden inverso y UTC

No todos los días existen en todos los meses, por lo que se aplican reglas explícitas. Si un paso mensual llega a un mes más corto, el día se ajusta al último válido: desde el 31 de enero se llega al 28 o 29 de febrero. Después se comprueba que el resultado no rebase la fecha final. Los bisiestos siguen la regla gregoriana: divisibilidad por 4, salvo siglos no divisibles por 400. Si la segunda fecha es anterior, el desglose mantiene la misma magnitud, direction indica retroceso y total_days es negativo. Fechas iguales producen ceros. La operación usa enteros de fecha, sin Date de JavaScript, husos horarios, horario de verano, red, reloj ni análisis dependiente de la configuración regional.

Cómo introducir fechas y usar correctamente el resultado

Indique from y to como cadenas AAAA-MM-DD, con ceros iniciales. Se admiten años de 0001 a 9999. Se rechazan fechas imposibles, campos ausentes, marcas de tiempo, formatos regionales y expresiones en lenguaje natural, sin intentar adivinarlas. years, months y days forman una duración secuencial desde la fecha cronológicamente anterior. Léalos juntos y no convierta los meses a una cantidad fija de días. total_days sirve para ordenar, controlar plazos o almacenar un valor escalar; direction señala avance, retroceso o igualdad. Puede usar el cálculo para antigüedad, hitos de proyectos, fechas históricas y reglas contractuales reproducibles. Cada solicitud del API cuesta $0.002. Si necesita una edad a una fecha concreta, proporcione y conserve esa fecha de referencia: la herramienta nunca sustituye por hoy.

Describir la duración de un proyecto

Convierta dos hitos registrados en una duración legible y conserve además el recuento exacto de días con signo.

Calcular antigüedad en una fecha fija

Mida afiliación, empleo o vida de una cuenta contra una referencia guardada, no contra el día actual cambiante.

Crear pruebas de fechas reproducibles

Compruebe finales de mes y años bisiestos con resultados que no varían por zona horaria ni momento de ejecución.

¿La calculadora utiliza la fecha de hoy?

No. Ambas fechas ISO son obligatorias y el cálculo nunca consulta el reloj actual.

¿Se permiten fechas en orden inverso?

Sí. El desglose sigue siendo no negativo, direction indica retroceso y total_days pasa a ser negativo.

¿Cómo se tratan los finales de mes?

Cada paso mensual se ajusta al último día válido de un mes más corto y después se comprueba que no haya rebasamiento.

¿Qué formato de fecha se acepta?

Use cadenas estrictas AAAA-MM-DD con fechas gregorianas válidas y años entre 0001 y 9999.

¿Influyen los husos horarios o el horario de verano?

No. Se usa aritmética entera de fechas, sin Date de JavaScript, zona local ni reglas de horario de verano.

Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.

POSThttps://api.kit.forhosting.com/date/diff-breakdown-ymd

¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.

curl -X POST https://api.kit.forhosting.com/date/diff-breakdown-ymd \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"from":"2019-01-31","to":"2024-03-02"}'
{
  "from": "2019-01-31",
  "to": "2024-03-02"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "date.diff_breakdown_ymd",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.

Por solicitud$0.002

Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.

HTTPCódigoSignificado
401unauthorizedAPI key ausente o inválida.
402insufficient_balanceEl saldo no cubre el precio de la tarea.
404unknown_typeEl tipo de tarea no existe.
429rate_limitedDemasiadas peticiones. Use el webhook en vez de sondear.

Ver la documentación completa del KIT →