Saltar al contenido
Quaestio

Marca de tiempo Unix

Escribe una marca de tiempo y aparece el momento, o escribe una fecha y aparece el número.

Marca de tiempo actual

–

Segundos, milisegundos o microsegundos. Los números negativos van a antes de 1970.

  • UTCjueves, 4 de septiembre de 2025, 15:33:20
  • Tu hora–
  • ISO 86012025-09-04T15:33:20Z
  • En segundos1757000000
  • En milisegundos1757000000000

Escribe 2026-09-12 o 2026-09-12T14:30. Sin huso horario se lee como UTC.

1789214400

Hitos

NúmeroMomento
El inicio de la época1970-01-01T00:00:00Z
Mil millones de segundos2001-09-09T01:46:40Z
Donde se agotan los 32 bits2038-01-19T03:14:07Z
Dos mil millones de segundos2033-05-18T03:33:20Z

El tiempo Unix no cuenta los segundos intercalares. Un día Unix tiene siempre exactamente 86 400 segundos.

Insertar

Inserta esta herramienta en tu web

Copia el código y pégalo donde quieras que aparezca la herramienta, por ejemplo en una entrada de blog o en la página de un colegio. Es gratis, el recuadro no tiene anuncios y la herramienta calcula en el navegador de quien la usa.

Cómo funciona

El tiempo Unix es el número de segundos desde el 1 de enero de 1970 en UTC. El punto cero se eligió porque quedaba cerca de cuando se introdujo la medida, no porque signifique algo en sí.

La medida no cuenta los segundos intercalares. Un día Unix tiene siempre exactamente 86 400 segundos, incluso los días en que UTC ganó un segundo extra. Eso simplifica los cálculos, y el tiempo Unix sigue igualmente la fecha y la hora de UTC. Pero la diferencia entre dos marcas de tiempo no siempre es el tiempo que pasó de verdad. Desde 1972 se han añadido 27 segundos intercalares, que el tiempo Unix no cuenta. Salvo para la navegación por satélite, no tiene importancia.

La unidad se deduce del tamaño del número. Todo lo que está por debajo de diez mil millones se lee como segundos, lo que alcanza hasta el año 2286, y los números mayores como milisegundos o microsegundos. El límite está ahí para que un año cercano al presente se lea correctamente.

Los números negativos van hacia atrás, antes de 1970, y funcionan igual.

Un contador de 32 bits con signo se agota el 19 de enero de 2038 a las 03:14:07 UTC, y después vuelve a 1901. Es el problema del año 2038, el mismo tipo de fallo que el efecto 2000, pero en binario. Los sistemas que cuentan con 64 bits no se ven afectados.

Una fecha sin huso horario en el texto se lee como UTC, así que el mismo texto da siempre el mismo número, se lea donde se lea.

Cómo se lee el número

Se quitan los espacios y los guiones bajos del número. Sin una unidad elegida, decide el tamaño: por debajo de diez mil millones el número se lee como segundos, desde diez mil millones como milisegundos y desde cien billones como microsegundos. Esos límites hacen que un valor en milisegundos anterior al 26 de abril de 1970, y uno en microsegundos anterior al 3 de marzo de 1973, se lean en la unidad equivocada. Los nanosegundos no están entre las unidades: 1 757 000 000 000 000 000 nanosegundos, que es el 4 de septiembre de 2025, se leen como microsegundos y caen en el año 57647. Quita entonces las tres últimas cifras. Según la norma ECMAScript, el calendario del navegador abarca 100 millones de días a cada lado de 1970, hasta el 13 de septiembre de 275760, y los números mayores dan un mensaje de error.

Ejemplo: donde se agotan los 32 bits

2³¹ − 1 = 2 147 483 647 es el mayor número que cabe en un contador de 32 bits con signo. Un segundo más y vale −2 147 483 648, que la herramienta muestra como el 13 de diciembre de 1901 a las 20:45:52 UTC. Los momentos fuera de esos límites reciben un aviso: 2 147 483 648 lo activa y 2 147 483 647 no.

Fechas escritas como texto

Según la norma ECMAScript, JavaScript lee 2026-09-12T14:30 como hora local y 2026-09-12 como UTC. La herramienta lee las dos como UTC, así que 2026-09-12T14:30 da siempre 1 789 223 400.

Las fechas que no existen se rechazan: 2026-02-30 da un mensaje de error, mientras que Date en V8, el motor de Chrome y Edge, lo convierte sin avisar en el 2 de marzo.

Segundos intercalares y el tiempo antes de 1970

POSIX define los segundos desde la época con una fórmula y deja sin especificar su relación con el UTC real, y ECMAScript no tiene valor de tiempo para un instante dentro de un segundo intercalar. Por eso 2016-12-31T23:59:60Z, el último segundo intercalar, da el mensaje de que la hora no existe, mientras que el segundo anterior da 1 483 228 799 y la medianoche siguiente, 1 483 228 800. Según el IERS, la diferencia entre el tiempo atómico, TAI, y el UTC era de 10 segundos en 1972 y es de 37 desde el 1 de enero de 2017.

Para los valores negativos, POSIX deja la relación sin definir; la herramienta sigue a ECMAScript, que cuenta hacia atrás con el calendario gregoriano.

Fuentes

Cómo se comprueban las herramientas