ForHosting KIT · Fechas y tiempo

Calculadora de tiempo superpuesto entre dos intervalos

Un tramo de 09:00 a 12:30 UTC y otro de 13:15 a 16:00 en UTC+02:00 comparten 75 minutos, es decir, 1,25 horas. Escriba el inicio y el fin de dos intervalos y obtenga el tiempo exacto en común, o cero si no se tocan. Gratis en su navegador.

  • Gratis
  • Funciona en su navegador
  • Sin registro
  • Sus datos no salen de su equipo
Úselo desde WebAPIEmailTelegramApp pronto
Si escribe
Inicio del primero
2026-07-25T09:00:00Z
Fin del primero
2026-07-25T12:30:00Z
Inicio del segundo
2026-07-25T13:15:00+02:00
Fin del segundo
2026-07-25T16:00:00+02:00
Obtiene
Solapamiento (milisegundos)
4 500 000
Solapamiento (segundos)
4 500
Minutos de solapamiento
75
Horas de solapamiento
1,25

Esta calculadora mide exactamente cuánto tiempo comparten dos intervalos de fecha y hora explícitos. Introduzca el inicio y el final de cada intervalo en formato ISO 8601, con Z o un desplazamiento UTC numérico. El cálculo sitúa todos los límites en una misma línea temporal UTC, selecciona el inicio posterior y el final anterior, y devuelve la duración común en milisegundos, segundos, minutos y horas. Los intervalos separados o que solo se tocan producen cero, lo que facilita su uso en horarios, facturación, supervisión e informes.

Defina ambos intervalos con límites inequívocos

Introduzca cuatro valores: el inicio y el final del primer intervalo, seguidos del inicio y el final del segundo. Cada valor debe ser una fecha y hora ISO 8601 completa, con fecha de calendario, hora con segundos y Z o un desplazamiento explícito como +02:00 o -05:30. Exigir el desplazamiento impide que otro equipo interprete de forma distinta una hora local.

Cada inicio debe ser anterior a su final. La calculadora trata los intervalos como rangos semiabiertos: incluye el inicio y usa el final como límite excluido. Así no se cuenta dos veces el mismo instante cuando se unen reservas, turnos o ventanas consecutivas.

Admite de una a tres cifras decimales para los segundos y las normaliza a milisegundos. Valida directamente fechas y horas, por lo que valores imposibles generan un error de entrada. Use siempre los mismos cuatro campos, tanto si espera una coincidencia como si no.

Comprenda el cálculo determinista en UTC

Antes de comparar, el cálculo coloca los cuatro límites en una única línea temporal UTC. Un valor terminado en Z ya está en UTC. A uno con desplazamiento positivo se le resta dicho desplazamiento, mientras que a uno negativo se le suma.

Por eso dos fechas escritas de forma diferente pueden representar el mismo instante. La superposición comienza en el más tardío de los dos inicios y termina en el más temprano de los dos finales. Si ese final es posterior al inicio calculado, la diferencia es la duración común; en caso contrario, el resultado es exactamente cero.

La implementación usa aritmética del calendario gregoriano y milisegundos enteros, sin consultar reloj, configuración regional, base de zonas horarias, red, datos aleatorios ni Date de JavaScript. Las mismas entradas siempre producen el mismo resultado. La salida expresa una sola duración en milisegundos, segundos, minutos y horas para que usted elija la unidad adecuada.

Aplique el resultado con seguridad

Use esta duración cuando necesite comparar dos ventanas conocidas: un turno con una ausencia aprobada, el funcionamiento de un equipo con una franja tarifaria, una incidencia con el horario de servicio o una reserva con un bloque disponible. Un valor positivo indica cuánto tiempo comparten, no solo que existe una intersección. Cero significa que están separados o que uno termina justo cuando empieza el otro; en ambos casos no hay tiempo transcurrido común según la convención semiabierta.

No redondee antes los límites salvo que su política lo exija. El servicio solo procesa desplazamientos explícitos, no nombres como America/New_York ni reglas de horario estacional. Convierta previamente las horas locales.

Medir la cobertura de turnos

Calcule qué parte de un turno coincide con una ventana operativa atendida, remunerada o autorizada.

Asignar tiempo de incidencias

Mida la parte de una interrupción ocurrida dentro de un periodo contractual de soporte o servicio.

Comprobar conflictos de reservas

Cuantifique el tiempo común entre dos reservas en lugar de obtener únicamente una respuesta afirmativa o negativa.

¿Qué ocurre si los intervalos no se superponen?

Los cuatro campos de duración devuelven cero. También sucede cuando uno termina exactamente al comenzar el otro.

¿Admite desplazamientos UTC distintos?

Sí. Cada límite puede usar Z o su propio desplazamiento numérico, y todos se comparan en una línea temporal UTC común.

¿Se incluyen los extremos del intervalo?

Se usan intervalos semiabiertos: el inicio está incluido y el final excluido. Por ello, intervalos adyacentes comparten cero tiempo.

¿El cálculo utiliza la zona horaria del servidor?

No. Emplea aritmética gregoriana y de desplazamientos sin Date, base de zonas, reloj del equipo ni configuración regional.

¿Qué unidad conviene usar para facturar o controlar cuotas?

Parta de los segundos o los milisegundos. Las cuatro unidades son la misma cantidad convertida, no estimaciones redondeadas por separado, así que aplique su propia regla de redondeo solo después de tener el resultado.

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.

POSThttps://api.kit.forhosting.com/date/overlap-duration

¿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.

curl -X POST https://api.kit.forhosting.com/date/overlap-duration \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"first_start":"2026-07-25T09:00:00Z","first_end":"2026-07-25T12:30:00Z","second_start":"2026-07-25T11:15:00+00:00","second_end":"2026-07-25T14:00:00+00:00"}'
{
  "first_start": "2026-07-25T09:00:00Z",
  "first_end": "2026-07-25T12:30:00Z",
  "second_start": "2026-07-25T11:15:00+00:00",
  "second_end": "2026-07-25T14:00:00+00:00"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "date.overlap_duration",
  "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.

Por solicitud$0.002

Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.

HTTPCódigoSignificado
401unauthorizedAPI key ausente o inválida.
402insufficient_balanceEl saldo no cubre el precio de la tarea.
404unknown_typeEl tipo de tarea no existe.
429rate_limitedDemasiadas peticiones. Use el webhook en vez de sondear.

Aplique el resultado con seguridad

Para importes o cuotas, tome overlap_milliseconds u overlap_seconds como valor fuente y aplique después su propia regla de redondeo documentada. Cada solicitud API cuesta $0.002; la versión del navegador permite comprobaciones interactivas locales.

¿Cuánto cuesta una solicitud API?

El precio es $0.002 por solicitud. La ejecución interactiva en el navegador no genera un cargo API.

Ver la documentación completa del KIT →