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, 3:33:20 p. m.
  • 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 sitio

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 una escuela. 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 agregado 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

Si no eliges unidad, 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, o uno en microsegundos anterior al 3 de marzo de 1973, se lea en la unidad equivocada. Los nanosegundos no son una unidad: 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. En ese caso quita los tres últimos dígitos.

Ejemplo: donde se acaban los 32 bits

2³¹ − 1 = 2 147 483 647 es el número más grande que cabe en un contador de 32 bits con signo. Un segundo después vale −2 147 483 648, que la herramienta muestra como el 13 de diciembre de 1901 a las 20:45:52 UTC. Fuera de esos límites aparece una advertencia: 2 147 483 648 la activa y 2 147 483 647 no.

Fechas escritas como texto

En JavaScript, 2026-09-16T00:00 se lee como hora local, pero 2026-09-16 como UTC, según el estándar ECMAScript. La herramienta lee las dos como UTC, así que 2026-09-16T00:00 siempre da 1 789 516 800, que en la Ciudad de México son las 6:00 p. m. del 15 de septiembre. Las fracciones de segundo se redondean hacia abajo al segundo entero.

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, la convierte sin avisar en el 2 de marzo. 24:00 se acepta como el final del día, como permite ECMAScript.

Segundos intercalares y el tiempo antes de 1970

POSIX dice expresamente que la relación entre sus segundos desde la época y el UTC real no está especificada. ECMAScript dice que no hay valor de tiempo para un instante dentro de un segundo intercalar. Por eso 2016-12-31T23:59:60Z, el segundo intercalar más reciente, 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 segundos 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 incluso antes de que se adoptara.

Fuentes

Cómo se verifican las herramientas