Fin del horario de verano en la UE: último domingo de octubre
La calculadora del fin del horario de verano de la UE determina el último domingo de octubre del año que usted indique y devuelve el instante correspondiente a las 01:00 UTC.
Ejecutar — gratis
Emplea aritmética del calendario gregoriano, no el reloj ni la zona horaria del equipo, por lo que una misma entrada siempre genera la misma respuesta. Resulta útil para crear calendarios, validar datos, preparar información de viajes o documentar el cambio de hora europeo. Introduzca un año desde 1996 para obtener una fecha ISO y una marca temporal UTC inequívoca.
Qué devuelve la calculadora
Indique un año del calendario gregoriano y la calculadora devolverá la fecha del último domingo de octubre. El resultado contiene el año introducido, una fecha ISO con formato YYYY-MM-DD, el nombre del día de la semana y una marca temporal de transición UTC terminada en Z. Esta marca se fija a las 01:00 UTC, el instante de referencia común para el cambio coordinado del horario de verano europeo. Usar UTC es importante porque la hora local varía entre las zonas horarias de Europa: en el mismo instante, un país puede describir el cambio a las 02:00 y otro a las 03:00. UTC proporciona a programas, flujos de datos y documentación un punto estable. La capacidad admite desde 1996 hasta 9999. No consulta la zona horaria del dispositivo, no deduce un país ni convierte el resultado a hora civil local. El día numérico siempre queda entre el 25 y el 31 de octubre. El precio de la API es $0.002 por solicitud y el navegador usa la misma lógica determinista.
Cómo se calcula el último domingo
El cálculo comienza en el 31 de octubre del año solicitado. Mediante aritmética entera del calendario gregoriano obtiene el día de la semana, representando el domingo con cero y el sábado con seis. Después resta ese número a 31. Si el 31 ya es domingo, no resta nada; si es lunes, resta un día, y así sucesivamente. El resultado es el domingo más cercano que no supera el último día de octubre y, por tanto, el último domingo del mes. El método incorpora las reglas gregorianas de los años bisiestos, incluidos los años de siglo, que solo son bisiestos si son divisibles entre 400. No utiliza ningún objeto de fecha del sistema, de modo que la configuración del horario de verano, el idioma, la zona horaria o el reloj del equipo no pueden alterar la respuesta. Tampoco intervienen consultas de red ni bases de datos horarias modificables. La validación rechaza valores ausentes, decimales, textos usados como años y cifras fuera del intervalo admitido, en lugar de convertirlos silenciosamente.
Cómo utilizar correctamente el resultado
Use el campo de fecha cuando necesite expresar la regla anual de la UE como valor de calendario y utc_transition cuando un sistema requiera un instante preciso. Por ejemplo, un servicio de planificación puede guardar la marca terminada en Z y convertirla para cada usuario únicamente al mostrarla. Un proceso de informes puede comparar su propia tabla de transiciones con la fecha devuelta, mientras que una publicación de viajes puede emplearla como aviso para revisar horarios estacionales. No interprete la salida como una conversión completa de zona horaria. Cada lugar tiene compensaciones UTC, abreviaturas y prácticas históricas distintas, y algunos territorios europeos no aplican la regla. La calculadora tampoco predice posibles cambios legislativos: aplica de forma determinista la regla indicada del último domingo de octubre. Si su aplicación necesita una hora local como 02:00 o 03:00, combine el instante UTC con una implementación de zonas horarias y la zona IANA correspondiente. Separar el cálculo de la presentación local evita marcas ambiguas y facilita las auditorías.
Qué puede hacer con ella
Crear calendarios anuales
Genere una transición UTC estable para un calendario, un planificador o un manual operativo.
Validar tablas horarias
Compare una fecha importada o generada con un resultado aritmético independiente para la UE.
Preparar avisos de viajes y eventos
Identifique qué fecha de octubre requiere una nota sobre el cambio antes de convertirla para un lugar concreto.
Preguntas frecuentes
¿Cuándo termina el horario de verano de la UE?
Según la regla calculada aquí, termina el último domingo de octubre a las 01:00 UTC. La fecha exacta cambia cada año.
¿Por qué se informa la transición en UTC?
UTC identifica un instante inequívoco. Las horas locales difieren entre zonas europeas aunque la transición esté coordinada.
¿La calculadora usa la zona horaria de mi equipo?
No. Utiliza aritmética entera del calendario gregoriano, por lo que la configuración local no afecta al resultado.
¿Puedo usar el resultado como hora local?
Tome la marca UTC como instante de origen y conviértala después con las reglas de la ubicación concreta.
¿Cuánto cuesta una solicitud de API?
Cada solicitud de API cuesta $0.002. El mismo cálculo determinista también está disponible en el navegador.
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/daylight-saving-end-eu \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"year":2026}'const res = await fetch("https://api.kit.forhosting.com/date/daylight-saving-end-eu", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"year": 2026
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/daylight-saving-end-eu",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"year": 2026
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/daylight-saving-end-eu", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"year":2026}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"year":2026}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/daylight-saving-end-eu", 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
{
"year": 2026
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.daylight_saving_end_eu",
"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. |