Número de semana ISO 8601
Escriba una fecha y obtenga su número de semana ISO 8601 y su año-semana: el 25 de julio de 2026 cae en la semana 30, escrita 2026-W30. Las semanas van de lunes a domingo y la semana 1 contiene el primer jueves del año. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Fecha
- 2026-07-25
- Semana
- 30
- Año de la semana
- 2 026
- Semana ISO
- 2026-W30
- Día de la semana
- 6
A diferencia de las semanas al estilo estadounidense, que suelen empezar en domingo y no se desbordan a otro año, una semana ISO empieza siempre en lunes, y la semana 1 es la que contiene el primer jueves del año gregoriano. Esa regla implica que finales de diciembre y comienzos de enero pueden pertenecer a un año-semana ISO distinto del año civil impreso en la fecha. Esta capacidad recibe una cadena de fecha ISO, la interpreta como día civil UTC y devuelve el número de semana (1–53), el año-semana ISO, una etiqueta compacta YYYY-Www y el día de la semana — de forma determinista, sin adivinar la zona horaria.
Qué significa realmente un número de semana ISO
A menudo se dice «número de semana» para tres cosas distintas: la semana ordinal del año civil que empieza el 1 de enero, la semana del mes (primera a quinta dentro de un mes), o la semana ISO 8601 definida en la norma internacional. Solo la última es estable en los países que siguen calendarios ISO. Según ISO 8601, cada semana tiene siete días de lunes a domingo.
La semana 1 del año Y es la que incluye el primer jueves de Y — equivalente a la semana que contiene el 4 de enero. Por tanto, un año puede tener 52 o 53 semanas ISO. Cuando hay 53, el 29, 30 o 31 de diciembre puede seguir en la semana 53 de ese año ISO, y el 1–3 de enero del año civil siguiente puede pertenecer aún a la semana 52 o 53 del año-semana ISO anterior.
Confundir el año civil con el año-semana es el error más habitual en ayudantes de fechas caseros, paneles y reportes SQL.
Contrato de entrada y evaluación solo en UTC
Envíe un campo obligatorio, date, como cadena ISO-8601. La forma preferida es YYYY-MM-DD (por ejemplo 2026-07-25). Se acepta un datetime completo con hora y sufijo de zona opcional, pero solo se usa el día de calendario tras analizar la cadena; el cálculo se ejecuta siempre sobre ese día civil a medianoche UTC.
Valores ausentes o que no sean cadena también fallan la validación y no se facturan.
Dónde usan las canalizaciones el número de semana y cómo llamar
Los KPI semanales, tableros de sprint, reportes fiscales que siguen semanas ISO, huecos logísticos etiquetados por semana y trabajos de enriquecimiento CSV necesitan un índice de semana fiable. Esos tres solos detectan errores de uno en lunes/domingo, fallos de año-semana en el límite de año y el relleno de semanas de un dígito. Mantenga el contrato UTC: si necesita medianoches locales en otra zona, convierta primero a la fecha civil local y pase ese YYYY-MM-DD aquí para que el cálculo de semana siga puro y reproducible.
Qué puede hacer con ella
Analítica semanal y agregados de KPI
Agrupe eventos por semana ISO y año-semana para que el tráfico de diciembre y enero caiga en la semana de reporte correcta, no en el año civil equivocado.
Calendarios de nómina y fabricación
Etiquete partes de horas, turnos y lotes de producción con números de semana ISO alineados a sistemas europeos y de planificación ISO.
Preguntas frecuentes
¿Qué es el número de semana ISO 8601?
Es el índice de semana del 1 al 53 definido por ISO 8601: las semanas empiezan en lunes y la semana 1 es la que contiene el primer jueves del año (o, de forma equivalente, el 4 de enero).
¿El cálculo es en hora local o en UTC?
Solo UTC. La fecha se trata como día civil UTC (YYYY-MM-DD). Los sufijos de hora opcionales se ignoran en la aritmética de semana para que el resultado sea determinista entre zonas horarias.
¿Por qué los primeros días de enero pueden ser de la semana del año anterior?
Porque la semana ISO pertenece a un año-semana que puede no coincidir con el año del calendario. Del 1 al 3 de enero pueden caer aún en la semana 52 o 53 del año ISO anterior.
¿Cuántas semanas ISO tiene un año?
Tiene 52 o 53. La semana 1 es la que contiene el 4 de enero, así que en los años de 53 semanas el 29, 30 o 31 de diciembre pueden quedar todavía en la semana 53.
¿Puedo escribir una fecha con hora?
Sí. Se acepta una fecha con hora, incluso con zona horaria, pero solo se usa el día del calendario. La semana se calcula siempre sobre ese día a medianoche UTC.
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/week-number \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"date":"2026-07-25"}'const res = await fetch("https://api.kit.forhosting.com/date/week-number", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"date": "2026-07-25"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/week-number",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"date": "2026-07-25"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/week-number", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"date":"2026-07-25"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"date":"2026-07-25"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/week-number", 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": "2026-07-25"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.week_number",
"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
La numeración de semanas ISO 8601 es el estándar de informes europeos, calendarios de nómina, planificación industrial y muchas API.
Qué significa realmente un número de semana ISO
Este endpoint aisla esa regla para que quien llame obtenga una única respuesta auditada en lugar de resultados divergentes de bibliotecas dependientes del idioma.
Contrato de entrada y evaluación solo en UTC
Fechas imposibles como 2026-02-30 se rechazan con invalid_input en lugar de avanzarlas por la implementación host de Date. La respuesta incluye la fecha normalizada, week (1–53), week_year (el año-semana ISO, que puede diferir del año gregoriano cerca de los límites), iso_week en forma compacta 2026-W30, más weekday (lunes=1 … domingo=7) y weekday_name para legibilidad.
Dónde usan las canalizaciones el número de semana y cómo llamar
Use la herramienta gratuita del navegador para comprobaciones puntuales, o la API prepago al normalizar miles de filas: cada ítem exitoso se cobra al base publicado de $0.002, y la entrada inválida es gratuita. Combine esta capacidad con la normalización de fechas cuando los datos de origen estén desordenados; luego asigne cada día ISO limpio a week y week_year antes de agrupar.
Casos de integración
Enriquecimiento de CSV y almacén
Añada columnas week e iso_week a las exportaciones para que las herramientas de BI agrupen filas sin reimplementar las reglas ISO en dialectos SQL.
Preguntas técnicas
¿Por qué week_year puede diferir del año civil?
Cerca de Año Nuevo, días de finales de diciembre o comienzos de enero pueden pertenecer al año-semana ISO anterior o siguiente. El jueves de esa semana decide el año-semana, no el año gregoriano del día.
¿Qué formatos de fecha se aceptan?
Se prefiere YYYY-MM-DD. Se aceptan datetimes ISO completos si empiezan con una fecha de calendario válida; fechas imposibles y valores ausentes devuelven invalid_input.
¿Cuánto cuesta la API de número de semana ISO?
La herramienta del navegador es gratuita. Las llamadas API exitosas usan saldo prepago al precio base publicado de $0.002 por ítem; la entrada inválida no se cobra.