Conversor de duraciones ISO 8601

Convierte notación de duración ISO 8601 (p. ej. PT1H30M) a segundos totales y viceversa. Útil para interpretar formatos usados por la API de YouTube, tiempos de espera en AWS y feeds RSS de podcasts.

Ejemplos habituales de duración ISO 8601

Una duración ISO 8601 empieza con "P", seguido de años/meses/días, y luego "T" seguido de horas/minutos/segundos. A continuación se muestran ejemplos habituales y los segundos que representan.

Notación Segundos totales Nota
PT30S 30 Un valor típico de tiempo de espera corto, como 30 segundos
PT1H30M 5,400 1 hora y 30 minutos: una forma habitual de expresar la duración de una película o de un vídeo de YouTube
P1D 86,400 1 día (24 horas): se usa a menudo para periodos de retención de logs o caducidad de caché
P3Y6M4DT12H30M5S 110,842,205 Un ejemplo combinado equivalente a 3 años, 6 meses, 4 días, 12 horas, 30 minutos y 5 segundos (los años/meses usan la aproximación de 365,25 días)

Qué es la notación de duración ISO 8601

La notación de duración ISO 8601 es un estándar internacional que expresa la "longitud" entre dos puntos en el tiempo mediante una única cadena, como "P3Y6M4DT12H30M5S". Mientras que una fecha-hora indica un instante concreto ("cuándo"), una duración expresa una diferencia ("cuánto tiempo"), por lo que existe una notación específica que empieza por "P", independiente de los formatos de marca temporal.

Los desarrolladores se encuentran con esta notación constantemente: la API de datos de YouTube indica así la duración de los vídeos, las API de AWS y Google Cloud la usan en la configuración de tiempos de espera y caducidad, y los feeds RSS de podcasts la emplean para la duración de los episodios. Esta herramienta convierte al instante entre cadenas de duración y segundos totales, para que puedas comprobar exactamente cuánto tiempo representa un valor.

Cómo convertir duraciones ISO 8601 y segundos

  1. Pega una cadena de duración para convertirla en segundos Introduce una cadena de duración ISO 8601 como "PT1H30M" en el cuadro de texto superior, y aparecerán automáticamente el total en segundos y un desglose por unidad.
  2. Prueba el valor de ejemplo Haz clic en "Insertar ejemplo" para cargar un caso que combina años, meses, días, horas, minutos y segundos, y ver la conversión en acción de inmediato.
  3. Introduce segundos para convertirlos en una cadena de duración Escribe el número total de segundos que quieras convertir en el cuadro de texto inferior, y se generará la cadena de duración ISO 8601 correspondiente.
  4. Elige un modo de conversión Selecciona "años/meses/días" para una notación compacta y legible, o "solo días/horas/minutos/segundos" para un resultado exacto sin aproximación de calendario.
  5. Copia el resultado Copia el total de segundos, minutos, horas o días mostrado, o la cadena de duración generada, directamente en tu solicitud de API o archivo de configuración.

Consejos para aprovecharla mejor

  • Las duraciones que incluyen años o meses no tienen un número fijo de segundos en la realidad, así que esta herramienta usa una aproximación fija: 1 año = 365,25 días y 1 mes = 30,44 días.
  • Al generar una cadena de duración a partir de segundos, elige "solo días/horas/minutos/segundos" para evitar por completo la aproximación de años/meses y obtener un resultado exacto e independiente del calendario.
  • La API de datos de YouTube devuelve la duración del vídeo en el campo contentDetails.duration usando notación ISO 8601, así que puedes pegarla directamente aquí para obtener el total en segundos.
  • Servicios en la nube como AWS Lambda o API Gateway a veces usan notación de duración ISO 8601 para configurar tiempos de espera, lo que hace útil esta herramienta para verificar esos valores.
  • Los feeds RSS de podcasts a veces usan el formato de duración ISO 8601 en la etiqueta itunes:duration, además del formato hh:mm:ss más habitual.

Dónde resulta útil la conversión de duraciones ISO 8601

Analizar respuestas de la API de datos de YouTube

Pega un valor como "PT4M13S" de contentDetails.duration para ver al instante cuántos minutos y segundos dura un vídeo.

Depurar configuraciones de AWS y servicios en la nube

Comprueba a cuántos segundos u horas equivale realmente una notación de duración en un tiempo de espera de Step Functions o CloudFormation.

Verificar la duración de episodios en feeds RSS de podcasts

Cuando la etiqueta itunes:duration usa formato ISO 8601, compárala con la notación hh:mm:ss más habitual para confirmar la duración.

Integración con APIs de calendario y programación

Parte de un número de segundos para construir el intervalo de recurrencia o la duración del recordatorio que exigen APIs como la de Google Calendar.

Crear casos de prueba para un analizador propio

Si desarrollas tu propio analizador de duraciones, usa esta herramienta para verificar el número correcto de segundos de cadenas conocidas y emplearlo como valor esperado en tus pruebas.

Glosario de la duración ISO 8601

ISO 8601
Un estándar internacional que define cómo representar fechas, horas y duraciones. Además de la notación de fechas como "2026-09-16", también define la notación de duración que maneja esta herramienta.
Duración
Un valor que representa la longitud de tiempo entre dos puntos. A diferencia de una fecha-hora, que señala un instante concreto, una duración transmite información sobre cuánto tiempo transcurre.
Notación PnYnMnDTnHnMnS
El formato básico de las cadenas de duración ISO 8601: años (A), meses (M) y días (D) tras la "P", seguidos de horas (H), minutos (M) y segundos (S) tras la "T", incluyendo solo las unidades necesarias.
Marca temporal
Un valor que representa un instante concreto. A diferencia de una duración (una diferencia), una marca temporal expresa una posición absoluta: "cuándo" ocurrió algo.
RFC 3339
Una especificación, basada en ISO 8601, para expresar fechas y horas en internet. Define la notación de marcas temporales, pero no la de duración, que sigue siendo exclusiva de ISO 8601.
Notación de semanas (PnW)
Una abreviatura como "P2W" que expresa una duración solo en semanas. Según ISO 8601, esta forma independiente no puede combinarse con componentes de año/mes/día ni con la parte horaria.

Preguntas frecuentes

PT1H30M es notación de duración ISO 8601 para "1 hora y 30 minutos". La "P" marca el inicio de un periodo y la "T" marca el inicio de la parte horaria (horas/minutos/segundos); esto importa porque sin "T", "1M" significa "1 mes", mientras que tras la "T" significa "1 minuto".

Ejemplos conocidos incluyen el campo de duración de vídeo de la API de datos de YouTube (contentDetails.duration), la configuración de tiempos de espera y caducidad en servicios en la nube como AWS y Google Cloud, y los feeds RSS de podcasts (itunes:duration). Muchos lenguajes de programación también admiten su análisis y generación, como las clases Duration/Period de Java o la librería isodate de Python.

Un año tiene 365 o 366 días según sea bisiesto, y un mes va de 28 a 31 días, por lo que ninguno de los dos tiene un número fijo de segundos. Esta herramienta usa 365,25 días como promedio práctico para un año (y su doceava parte, unos 30,44 días, para un mes). Si necesitas un resultado exacto, usa el modo "exacto", que expresa las duraciones solo con días, horas, minutos y segundos.

Sí, se admite notación como "P2W" (2 semanas). Ten en cuenta que, según la especificación ISO 8601, la notación de semanas es una abreviatura independiente que no puede combinarse con componentes de año/mes/día ni con la parte horaria.

Si la entrada no empieza por "P", las unidades no siguen el orden correcto (A→M→D y, tras la "T", H→M→S), o se omiten todas las unidades (una duración vacía), la herramienta determina que no se puede convertir y muestra un mensaje de error en lugar de un resultado.
Tool-kun

A propósito — ¿Por qué el mundo de la informática tiene un formato dedicado a las "duraciones"?

ISO 8601 es conocido sobre todo como el estándar internacional para representar fechas y horas, pero ese mismo estándar también define una notación independiente para las "duraciones": la longitud de tiempo entre dos puntos, en lugar de un único instante. Una fecha-hora responde a "cuándo", mientras que una duración responde a "cuánto tiempo", y aunque a primera vista se parecen, representan tipos de información fundamentalmente distintos. La notación dedicada que empieza por "P" existe precisamente para mantener clara esa distinción.

Una de las razones por las que la notación de duración resulta tan útil en la práctica es que evita errores de desajuste de unidades al intercambiar datos entre sistemas. Si una respuesta de API simplemente devolviera el número "30", quien la reciba tendría que consultar la documentación para saber si se trata de segundos o de minutos. Con "PT30S", el valor y su unidad viajan juntos en una sola cadena, de modo que un analizador correcto nunca puede interpretarlo mal.

Por eso mismo la API de datos de YouTube devuelve la duración del vídeo en formato ISO 8601: una cadena como "PT4M13S" significa sin ambigüedad un vídeo de 4 minutos y 13 segundos. Plataformas en la nube como AWS y Google Cloud a veces adoptan el mismo formato para configurar tiempos de espera y caducidad, así que si detectas esta notación en un archivo de configuración YAML o en una respuesta JSON, pasarla por esta herramienta para ver el número equivalente de segundos puede ayudarte a hacerte una idea más clara del valor.

Al mismo tiempo, el estándar tiene una particularidad interesante: las duraciones que incluyen años o meses no tienen una longitud absoluta fija. El mismo "P1Y" puede representar 365 o 366 días reales según si abarca un año bisiesto. En última instancia, esta es la razón por la que esta herramienta debe recurrir a una aproximación siempre que una conversión implique años o meses.