Calculadora de duración gratuita
Suma o resta duraciones de tiempo. Introduce horas, minutos y segundos para obtener un total acumulado.
Añadir duración
Entradas
Total
Cómo funciona
- Introduce las horas de inicio y fin: Introduce dos horas (horas, minutos, segundos) o selecciónalas desde los selectores de tiempo para definir el intervalo que quieres medir.
- Suma o resta duraciones: Opcionalmente, encadena varios intervalos de tiempo: añade pausas, resta descansos o combina varios segmentos.
- Lee el resultado: La duración total se muestra en horas, minutos y segundos. Copia el resultado o úsalo directamente.
¿Por qué usar la Calculadora de duración?
Calcular duraciones manualmente es tedioso y propenso a errores, especialmente al cruzar la medianoche o al tratar con varios segmentos. Ya sea que estés cronometrando un vídeo, calculando horas facturables, midiendo intervalos de entrenamiento o averiguando cuánto dura un evento, la Calculadora de duración resuelve los cálculos al instante, incluidos casos especiales como el cruce de la medianoche o la suma de decenas de intervalos.
Funciones
- Entrada de hora de inicio/fin: Introduce o elige dos horas cualesquiera para calcular el intervalo entre ellas.
- Soporte de varios segmentos: Añade varios bloques de tiempo y obtén la duración total combinada.
- Cruce de medianoche: Gestiona correctamente duraciones que cruzan la medianoche (por ejemplo, 23:30 a 02:00 = 2 h 30 min).
- Horas, minutos, segundos: Los resultados se muestran con precisión total hasta los segundos.
- Cálculo instantáneo: No hace falta botón de enviar: los resultados se actualizan a medida que cambias los valores.
Preguntas frecuentes
¿Cómo calculo el tiempo que cruza la medianoche?
Introduce la hora de inicio antes de la medianoche y la de fin después. La calculadora detecta automáticamente el intervalo nocturno y devuelve la duración correcta (por ejemplo, 22:00 a 06:00 = 8 horas).
¿Puedo sumar varios segmentos de tiempo?
Sí. Usa el modo de varios segmentos para añadir tantos bloques de tiempo como necesites. Esto es útil para calcular el total de horas trabajadas en varias sesiones o sumar la duración de clips de vídeo.
¿Qué formato debo usar para introducir la hora?
Usa el formato estándar HH:MM o HH:MM:SS. La herramienta acepta hora en formato de 24 horas y la convierte automáticamente en una duración legible.
El formato de duración ISO 8601
ISO 8601-1:2019 es el estándar internacional para representar fechas, horas y duraciones. Una duración en ISO 8601 se ve como P[n]Y[n]M[n]DT[n]H[n]M[n]S: una P literal («período»), seguida de cualquier combinación de años / meses / días, luego un separador T antes de la parte de tiempo de horas / minutos / segundos. PT1H30M es un descanso de café de 90 minutos; PT45S son 45 segundos; P3D son 3 días; P1Y2M10DT2H30M es 1 año, 2 meses, 10 días, 2 horas, 30 minutos. Las semanas tienen su propio designador P1W (mutuamente exclusivo con Y/M/D).
El estándar es el formato canónico en la línea para duraciones en sistemas modernos. PostgreSQL almacena duraciones como el tipo interval con entrada/salida ISO 8601. La próxima propuesta Temporal de JavaScript (Stage 3 en TC39, en camino para ES2025) hace ida y vuelta con duraciones ISO 8601 vía Temporal.Duration. El estándar datetime.timedelta de Python no serializa como ISO 8601 por defecto, el paquete de terceros isodate llena ese hueco. La forma time-interval 2026-05-12T09:00:00/PT1H30M dice «empieza a las 09:00 el 12 de mayo, dura 1h30m» y eso es lo que las API de calendario (Google Calendar, iCal, Outlook) envían en la línea.
Por qué la aritmética HH:MM:SS hace tropezar a la gente
Sumar 01:45:30 + 02:30:45 es fácil si conviertes primero a segundos totales: 6.330 s + 9.045 s = 15.375 s, que se convierte de vuelta a 04:16:15 (15375 ÷ 3600 = 4 horas; 1575 ÷ 60 = 26 minutos; resto 15 segundos). Donde la gente resbala:
- Olvidar que los minutos y segundos son módulo 60, no módulo 100.
00:45 + 00:20 = 01:05, no00:65. Este es el error aritmético más común en las matemáticas de hojas de tiempo a mano. - Cruzar la medianoche como si fuera aritmética modular.
23:30 + 02:00= la hora 01:30 si quieres decir «qué hora es 2 horas después de las 23:30», pero la duración de 23:30 a 02:00 de la mañana siguiente es 02:30. La misma entrada significa dos cosas diferentes dependiendo de si estás calculando una hora futura o midiendo un intervalo. - Saltos y caídas del horario de verano (DST). Sumar 24 horas a
2025-03-09T02:30en el Pacífico de EE. UU. te da2025-03-10T03:30porque el DST empieza ese día y 02:00–03:00 no existe. Las bibliotecas conscientes del calendario manejan esto; las ingenuas desvían una hora. - «Sumar 1 mes» no es un número fijo de segundos. Un mes puede ser 28, 29, 30 o 31 días. ISO 8601 deja explícitamente la resolución de
YyMal consumidor, es un puntero de calendario, no una duración fija. La mayoría de las bibliotecas (Luxon, Pythondateutil.relativedelta, Javajava.time.Period) recortan al último día válido del mes objetivo: 2025-01-31 + 1 mes = 2025-02-28.
Advertencias sobre DST y zonas horarias
Si una duración cruza un límite de zona horaria o una transición DST, tienes que decidir si quieres «tiempo de reloj de pared transcurrido» (lo que mostraría un cronómetro) o «diferencia de reloj» (cómo cambió la pantalla). Divergen durante el DST. Un vuelo que sale de Boston a las 22:00 hora local el 9 de marzo y aterriza en San Francisco a las 01:30 hora local el 10 de marzo ha estado en el aire 6h30m transcurridos (calculado vía UTC), pero la diferencia de la pantalla del reloj es solo 3h30m por el desplazamiento de zona horaria. La solución es anclar ambas marcas de tiempo en UTC y restarlas: endUTC.getTime() − startUTC.getTime(). La IANA Time Zone Database (tzdb) es la fuente canónica para las reglas DST y viene con cada navegador y SO. México abolió el DST a nivel nacional en octubre de 2022; Brasil lo abolió en 2019. EE. UU. tiene la Sunshine Protection Act en suspenso desde 2021 para abolir el cambio bianual, pero no ha pasado en la Cámara.
Horas facturables, la convención del 0,1 h
Los bufetes de abogados, consultorías y freelancers normalmente facturan en décimas de hora (incrementos de 6 minutos): una tarea de 7 minutos se redondea a 0,2 h facturado, una de 5 minutos a 0,1 h. La convención se remonta a finales de los 1950 en BigLaw de EE. UU., cuando las hojas de tiempo físicas usaban una «columna 0,1» para simplificar el cálculo a mano, y persistió en la era digital porque favorece la captura de ingresos del bufete en interacciones cortas. Algunos bufetes usan el modelo de cuarto de hora (redondear al cuarto de hora superior). El modelo afecta materialmente la facturación total: una llamada de 16 minutos facturada en décimas es 0,3 h ($90 a $300/h); en cuartos es 0,25 h ($75); en bloques de 30 minutos es 0,5 h ($150). El bloque de 30 minutos es la convención en psicoterapia clínica donde el código CPT 90832 («16-37 minutos») se factura como una línea de «psicoterapia de 30 minutos». Exponer tanto el HH:MM:SS bruto como horas decimales redondeadas a décimas cubre el 90 % de los casos de uso de horas facturables.
Video, audio y timecode preciso al fotograma
El cine y la radiodifusión cuentan el tiempo en fotogramas, no en segundos, porque eso es lo que la película física y los códecs digitales usan como unidad atómica. La televisión NTSC (EE. UU., Canadá, Japón, partes de Sudamérica) corre a 30000/1001 fps ≈ 29,97 fps; su timecode «drop-frame» HH;MM;SS;FF (punto y coma) compensa la ralentización del 0,1 % omitiendo 2 números de fotograma por minuto excepto cada 10º minuto. La televisión PAL (la mayor parte de Europa, Australia, gran parte de Asia) corre a 25 fps. El cine es 24 fps estándar. El Hobbit de Peter Jackson (2012) fue el primer lanzamiento importante a 48 fps; Billy Lynn's Long Halftime Walk de Ang Lee (2016) corría a 120 fps. Adobe Premiere, DaVinci Resolve y Final Cut Pro muestran el timecode en la velocidad de fotogramas elegida del proyecto, y los calculadores de duración profesionales aceptan entrada HH:MM:SS:FF. Los capítulos del reproductor de YouTube usan MM:SS; la exportación incorpora ISO 8601 (PT1M30S).
Duraciones famosas del deporte y la historia
- 24 Horas de Le Mans: exactamente 24h de carrera desde 1923. La distancia total varía con el clima y la estrategia de boxes pero culmina alrededor de 5.100 km, velocidad promedio ~213 km/h para el ganador.
- Maratón: 42,195 km; récord mundial 2h00m35s (Kelvin Kiptum, Chicago, 8 de octubre de 2023). Llegadas de élite 2h-2h10m; recreativo 4h-5h.
- Gran Premio de Fórmula 1: máximo de 2 horas de reloj de pared según el artículo 5.3 del Reglamento Deportivo FIA. El GP de Canadá de 2011 tiene el récord en 4h04m39s por una parada de bandera roja de 2h05m por lluvia.
- Partido de prueba de cricket: programado 5 días × 6 horas de juego = 30 horas a través de días calendario. El más largo de todos los tiempos (Inglaterra v Sudáfrica, marzo de 1939) duró 12 días y terminó en empate porque el barco del equipo de Inglaterra se iba.
- Récord de tiempo extra NHL: El primer partido de la semifinal NHL de 1936 (Detroit Red Wings v Montreal Maroons) duró 176 minutos en total con 116 minutos de tiempo extra, el partido más largo en la historia de la liga.
El problema de los dos relojes: Date.now() vs performance.now()
Si calculas duraciones usando dos fuentes de reloj diferentes, puedes obtener tonterías. JavaScript expone dos: Date.now() devuelve milisegundos UTC desde la época Unix (1970-01-01T00:00:00Z), pero sigue los cambios del reloj del sistema, así que si NTP ajusta el reloj del sistema durante tu medición, obtienes una duración incorrecta. performance.now() devuelve una marca de tiempo de alta resolución desde la navegación de la página, monotónica e inmune a los cambios de reloj. Para «tiempo real transcurrido» usa performance.now(); para «reloj de pared» usa Date.now(). La API Web Audio expone audioContext.currentTime para sincronización de audio precisa al sample, desacoplada de los relojes del sistema y de rendimiento. setTimeout(fn, 1000) es «no antes de 1000ms», no «exactamente 1000ms»; Chrome estrangula las pestañas en segundo plano a intervalo mínimo ≥1000ms, el bucle de eventos puede retrasar la ejecución y la suspensión del SO puede estirar el intervalo a varios segundos.
Casos de uso comunes
- Un editor de video suma longitudes de clips en varias tomas (47×3,2 s + 12×6,7 s + …).
- Un freelancer rastrea horas facturables de un registro de sesión (9:15-10:45, 11:00-12:30, 13:30-15:45 = 7h15m), convierte a horas decimales para la factura.
- Un gestor de proyecto estima la duración total encadenando duraciones de tareas (diseño 4d + revisión 1d + dev 7d + QA 3d = 15d).
- Un usuario de Pomodoro suma intervalos de trabajo para rastrear la producción de deep-work de un día (5 × 25 min sesiones = 2h05m de trabajo neto).
- Un productor musical mide el tiempo de ejecución de un álbum sumando las duraciones de las pistas individuales; total ≤80 min para caber en un solo CD.
- Un podcaster verifica la longitud del episodio contra los topes de plataforma (Spotify limita los episodios a 12 horas; la mayoría de los directorios prefieren menos de 3 horas).
- Un cocinero escala el tiempo de una receta a través de las etapas de prep, reposo, cocción y emplatado (35 min prep + 8h levado + 45 min horneado = 9h20m).
- Un atleta suma el tiempo de entrenamiento semanal de un registro de entrenamiento para confirmar los objetivos de volumen.
- Un operador de live-stream planifica un show multi-segmento con descansos y anuncios (intro 5min + segmento A 25min + anuncio 2min + segmento B 30min + outro 3min = 65min).
Errores comunes
- Tratar minutos o segundos como base 10. 45 + 20 en minutos es 65, que se acarrea a 1 hora y 5 minutos, no «0:65». Siempre convierte a segundos totales, suma, luego convierte de vuelta.
- Calcular duraciones a través de la medianoche por simple resta.
02:00 − 23:30como números es negativo; la respuesta correcta (la duración de 23:30 a 02:00 al día siguiente) es 2h30m. Suma 24h al tiempo final antes de restar. - Ignorar el DST en duraciones que abarcan fechas. «9 de marzo a las 23:00» + 4 horas en el Pacífico de EE. UU. =
10 de marzo a las 04:00, no 03:00, porque 02:00–03:00 no existe. Usa aritmética UTC o una biblioteca consciente del calendario. - Tratar «1 mes» como una duración fija. Son 28 a 31 días dependiendo del mes. Para aritmética de tiempo transcurrido siempre trabaja en segundos o días.
- Confiar en que
setTimeout(fn, 1000)se dispare después de exactamente 1000ms. Los navegadores estrangulan las pestañas inactivas (Chrome ≥1000ms), el bucle de eventos puede estar ocupado y el SO puede suspender. Para sincronización de alta resolución usa deltas deperformance.now()orequestAnimationFrame.
Más preguntas frecuentes
¿Cómo convierto HH:MM:SS a horas decimales para facturar?
Divide los segundos totales por 3.600. 02:45:00 son 9.900 segundos; 9.900 ÷ 3.600 = 2,75 horas. Para redondear a la décima más cercana (la convención BigLaw de 6 minutos), multiplica por 10, redondea, divide por 10: 2,75 → 27,5 → 28 → 2,8 horas. Para redondear al cuarto de hora, multiplica por 4, redondea hacia arriba, divide por 4.
¿Puede el resultado exceder 24 horas?
Sí. Una duración no es una hora de reloj; puede ser cualquier número no negativo de horas. La herramienta muestra los totales como HH:MM:SS con horas ≥ 24 (por ejemplo, 36:30:15 para un día y medio). Si quieres separar días/horas, divide horas por 24: 36 horas = 1 día 12 horas.
¿Y las duraciones negativas por restar más de lo que sumé?
La herramienta muestra el resultado con un signo menos al frente (por ejemplo, −00:30:00) cuando el total acumulado baja de cero. Las duraciones negativas tienen sentido en contextos como «esta carrera fue 1m12s por debajo del ritmo de la semana pasada» o «el proyecto terminó 2 días antes de lo previsto».
¿La herramienta maneja timecode de video preciso al fotograma?
La versión actual usa HH:MM:SS con precisión de segundo. El timecode preciso al fotograma (HH:MM:SS:FF a 24, 25 o 29,97 fps) aún no es compatible. Para trabajo a nivel de fotograma, las herramientas canónicas son el panel de timecode de Adobe Premiere, DaVinci Resolve y Avid Media Composer, todas las cuales suman el timecode drop-frame correctamente.
¿Mis entradas se envían a algún lado?
No. El calculador funciona completamente en tu navegador. Las horas, minutos y segundos que escribes se suman en JavaScript y el resultado se muestra en el DOM. Sin llamadas fetch, sin analytics, sin logging. Seguro para entrar duraciones personalmente sensibles como duraciones de citas médicas, tiempo facturable de cliente o registros de actividad privada.