Sumar años a una fecha
Sume o reste años completos a una fecha: el 15 de marzo de 2024 más 2 años es el 15 de marzo de 2026. Un 29 de febrero pasa al 28 cuando el año de destino no es bisiesto. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Fecha
- 2024-03-15
- Años
- 2
- Resultado
- 2026-03-15
- Año
- 2 026
- Mes
- 3
- Día
- 15
Desplazar una fecha civil un número entero de años es una operación habitual que aún tropieza con los días bisiestos cuando la base es el veintinueve de febrero. Los sistemas de RR. HH. renuevan contratos en aniversarios, los servicios de garantía calculan caducidades tras la compra, los equipos financieros proyectan hitos fiscales y los autores de material didáctico necesitan un oráculo fiable que rechace bases imposibles como el veintinueve de febrero en un año común. Esta herramienta acepta una fecha base ISO estricta en forma año-mes-día más un desplazamiento entero de años (positivo, negativo o cero), valida que el día base exista bajo las reglas gregorianas de bisiesto, avanza o retrocede el año y, si la base es el veintinueve de febrero y el año destino no es bisiesto, ajusta el día al veintiocho de febrero para que el resultado siga siendo una fecha civil real.
Cómo funciona la suma de años de calendario sin reloj
Parta de una fecha de calendario escrita como año, mes y día en la forma ISO internacional con guiones y anchos fijos para que todo cliente acuerde los mismos tres enteros.
Confirme que el año está en un rango gregoriano práctico del año uno al nueve mil novecientos noventa y nueve, que el mes está entre uno y doce, y que el día existe para ese mes bajo las reglas de bisiesto: un año es bisiesto si es divisible por cuatro, salvo que los años seculares solo lo son cuando también son divisibles por cuatrocientos. Esa regla hace legal el veintinueve de febrero en años como dos mil veinticuatro y dos mil, e ilegal en dos mil veintitrés y mil novecientos.
Cuando la terna es válida, sume el desplazamiento entero al componente de año manteniendo el mes fijo. Si el día base es el veintinueve de febrero y el año resultante no es bisiesto, ajuste el día a veintiocho para que la salida sea una fecha civil real; en caso contrario conserve el día de mes original. Formatee el resultado como cadena ISO de cuatro-dos-dos.
Dónde aparecen las calculadoras de sumar años en el trabajo real
Las plataformas de recursos humanos calculan renovaciones de contrato y fin de prueba como fecha de alta más uno o dos años de calendario sin arrastrar una biblioteca completa de planificación. Los servicios de garantía y soporte fijan caducidades plurianuales a partir de una cadena ISO de compra. Los sistemas de educación y membresía proyectan ventanas de aniversario para matrículas y cuotas.
Los ingenieros de datos materializan columnas derivadas para políticas de retención plurianual, licencias plurianuales y años de fin de campaña desde una sola base ISO más un desplazamiento entero en configuración.
Si más adelante necesita desplazamientos en días en lugar de años, recuentos de días laborables que omiten fines de semana, la diferencia en días entre dos fechas, la edad desde una fecha de nacimiento o solo ordinales del día del año, trátelos como intenciones de búsqueda y páginas de aterrizaje distintas en lugar de sobrecargar esta página de sumar años a una fecha.
Qué puede hacer con ella
Aniversarios de contrato y garantía
Sume uno, dos o cinco años de calendario a una fecha ISO de alta o compra para obtener aniversarios y caducidades estables entre anfitriones.
Renovaciones de licencia y membresía
Proyecte fechas de fin de licencia plurianual y renovaciones de membresía desde una cadena ISO de inicio más un desplazamiento entero de años configurado.
Tratamiento de aniversarios en día bisiesto
Calcule aniversarios civiles de nacimientos o eventos del 29 de febrero con un ajuste explícito al 28 de febrero en años de resultado no bisiestos.
Preguntas frecuentes
¿Qué significa sumar años a una fecha?
Significa tomar un día válido del calendario gregoriano y avanzar o retroceder un número entero de años de calendario, conservando mes y día cuando sea posible y ajustando el 29 de febrero al 28 cuando el año de resultado no sea bisiesto.
¿Cómo se trata el 29 de febrero?
Si la fecha base es el 29 de febrero y el año de resultado es bisiesto, el resultado permanece el 29 de febrero.
¿Qué formato de fecha se exige?
ISO estricto YYYY-MM-DD con año de cuatro dígitos y mes y día de dos dígitos. Valores como 2024-3-15 o 2024/03/15 se rechazan para que todo cliente acuerde la misma cadena.
¿Qué ocurre con una fecha base no válida como 2023-02-29?
El mensaje de error explica que el día no es válido para ese año y mes.
¿Cuánto cuesta?
La herramienta del navegador es gratuita y se ejecuta en local.
Herramientas relacionadas
Para desarrolladores — acceso por API
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.
Endpoint de API
¿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.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/date/add-years \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"date":"2024-03-15","years":2}'const res = await fetch("https://api.kit.forhosting.com/date/add-years", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"date": "2024-03-15",
"years": 2
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/add-years",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"date": "2024-03-15",
"years": 2
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/add-years", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"date":"2024-03-15","years":2}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"date":"2024-03-15","years":2}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/add-years", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"date": "2024-03-15",
"years": 2
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.add_years",
"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.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Qué envía y qué recibe a cambio
Envíe dos campos obligatorios: date como día de calendario ISO estricto, por ejemplo dos mil veinticuatro guion cero tres guion uno cinco, y years como recuento entero finito de años, por ejemplo dos, cero o menos uno. Comprobaciones clásicas: sumar dos años al quince de marzo de dos mil veinticuatro para llegar al quince de marzo de dos mil veintiséis; sumar un año al veintinueve de febrero de dos mil veinticuatro para llegar al veintiocho de febrero de dos mil veinticinco con clamp verdadero; sumar cuatro años al mismo día bisiesto para conservar el veintinueve de febrero en dos mil veintiocho; y restar un año a una fecha de mitad de año para aterrizar en el aniversario anterior. Campos ausentes, fechas que no son cadena, cadenas que no coinciden con el patrón de dígitos cuatro-dos-dos, desplazamientos no enteros y bases que coinciden con el patrón pero no son fechas de calendario reales fallan con invalid_input y no se cobran. En caso de éxito la respuesta repite la fecha base normalizada, el desplazamiento entero de years aplicado, la cadena ISO del resultado tras la suma, el año, mes y día numéricos del resultado, un booleano is_leap_year para el año del resultado, un booleano clamped_leap_day que es verdadero solo cuando el veintinueve de febrero se redujo al veintiocho, y una cadena formula breve que documenta la regla de ajuste bisiesto. El precio de las llamadas API correctas es la base publicada de $0.002 por ítem; los fallos de validación no consumen saldo prepago.
Dónde aparecen las calculadoras de sumar años en el trabajo real
Como esta capacidad es un motor de parse puro, el precio de la API es la base publicada de $0.002 por ítem correcto y la validación fallida no consume saldo.