Conversor de Marca de Tiempo Unix

Convierte marcas de tiempo Unix a fechas y fechas a marcas de tiempo Unix

Unix Timestamp Converter

Convert between Unix timestamps and dates

Unix Timestamp Converter

Enter a Unix timestamp (seconds)

Formula
Date = new Date(timestamp x 1000)

¿Qué es una marca de tiempo Unix?

Una marca de tiempo Unix (también llamada tiempo de época o tiempo POSIX) es la cantidad de segundos transcurridos desde el 1 de enero de 1970 00:00:00 UTC — la época Unix. Es el estándar universal para representar fechas y horas en programación, bases de datos, APIs y registros del sistema. Al ser simplemente un número, es independiente de la zona horaria y fácil de almacenar, ordenar y comparar en cualquier lenguaje o sistema operativo.

Este conversor traduce al instante cualquier marca de tiempo Unix a una fecha y hora legible (en tu zona horaria local), y convierte cualquier fecha/hora de vuelta a una marca de tiempo Unix. También admite marcas de tiempo en milisegundos usadas en Date.now() de JavaScript — los valores de más de 10 dígitos se detectan automáticamente como marcas de tiempo de precisión en milisegundos.

Cómo usar el conversor de marca de tiempo Unix

  1. Ingresa una marca de tiempo Unix (por ejemplo, 1700000000) para convertirla a una fecha y hora legible.
  2. O ingresa una fecha y hora para convertirla a una marca de tiempo Unix.
  3. Haz clic en Convertir para ver el resultado.
  4. Las marcas de tiempo en milisegundos se detectan automáticamente: si el valor tiene más de 10 dígitos, la herramienta lo trata como milisegundos (como los que usa Date.now() de JavaScript).

Fórmulas y referencia

Marca de tiempo Unix = segundos desde 1970-01-01 00:00:00 UTC Marca de tiempo actual (aprox.): ~1.700.000.000 (noviembre de 2023) ~1.745.000.000 (abril de 2025) JavaScript: Date.now() // milisegundos Date.now() / 1000 // segundos (decimal) Math.floor(Date.now() / 1000) // segundos (entero) Convertir marca de tiempo a fecha (JavaScript): new Date(timestamp * 1000).toISOString() Problema del año 2038: Máximo entero de 32 bits con signo = 2.147.483.647 = 19 de enero de 2038 03:14:07 UTC

Las marcas de tiempo Unix siempre están en UTC. Al mostrarlas a los usuarios, conviértelas a la hora local. El objeto Date de JavaScript usa milisegundos internamente, por lo que debes multiplicar por 1000 al pasar una marca de tiempo Unix (en segundos) a new Date(), y dividir por 1000 al convertir Date.now() de vuelta a segundos.

Ejemplos de marcas de tiempo

Marca de tiempo 0 — La época

El valor 0 corresponde al 1 de enero de 1970 00:00:00 UTC — el punto de partida del tiempo Unix, conocido como la época Unix. Cada marca de tiempo se mide en relación a este momento.

Marca de tiempo 1.000.000.000 — El hito del mil millones

9 de septiembre de 2001 01:46:40 UTC. Este fue un hito celebrado en la comunidad de desarrollo: el momento en que el tiempo Unix alcanzó los mil millones de segundos. Algunos sistemas de todo el mundo realizaron cuentas regresivas para conmemorarlo.

Marca de tiempo 1.700.000.000 — Noviembre de 2023

Aproximadamente el 14 de noviembre de 2023 22:13:20 UTC. Un punto de referencia útil: las marcas de tiempo en el rango de 1700 millones corresponden a finales de 2023. A partir de abril de 2025, las marcas de tiempo actuales rondan los 1745 millones.

Preguntas frecuentes

¿Por qué el tiempo Unix comienza el 1 de enero de 1970?
Cuando Unix se desarrolló a principios de los años 70, los ingenieros necesitaban un punto de referencia fijo. El 1 de enero de 1970 00:00:00 UTC fue elegido como una fecha de inicio práctica y redondeada. Es ligeramente anterior al propio Unix, lo que la convierte en una época limpia para calcular el tiempo transcurrido en toda la historia de Unix.
¿Qué es el problema del año 2038?
Muchos sistemas antiguos almacenan marcas de tiempo Unix como enteros de 32 bits con signo, cuyo valor máximo es 2.147.483.647. Ese valor corresponde al 19 de enero de 2038 03:14:07 UTC. Después de ese momento, un contador de 32 bits se desbordará y volverá a un número negativo muy grande, lo que podría causar errores o fechas incorrectas. Los sistemas modernos usan enteros de 64 bits y no enfrentarán este problema durante cientos de miles de millones de años.
¿Cuál es la diferencia entre una marca de tiempo en segundos y una en milisegundos?
Una marca de tiempo Unix estándar cuenta segundos desde la época (por ejemplo, 1700000000). Date.now() de JavaScript devuelve milisegundos en cambio (por ejemplo, 1700000000000 — tres ceros más). Para convertir de milisegundos a segundos, divide entre 1000. Para usar una marca de tiempo en segundos en new Date() de JavaScript, multiplícala por 1000. Este conversor detecta automáticamente los valores de más de 10 dígitos como marcas de tiempo en milisegundos.
¿Una marca de tiempo Unix se ve afectada por la zona horaria?
No. Las marcas de tiempo Unix representan un momento absoluto en el tiempo en UTC. Son completamente independientes de la zona horaria. El mismo valor de marca de tiempo significa el mismo instante en cualquier lugar del mundo. La conversión de zona horaria solo ocurre cuando se muestra la marca de tiempo a un usuario humano — el número en sí nunca cambia.
¿Qué significa una marca de tiempo Unix negativa?
Una marca de tiempo Unix negativa representa una fecha anterior a la época Unix — antes del 1 de enero de 1970 00:00:00 UTC. Por ejemplo, -86400 corresponde al 31 de diciembre de 1969 00:00:00 UTC (un día antes de la época). Las marcas de tiempo negativas son válidas y están soportadas por la mayoría de los sistemas y lenguajes de programación modernos.