Convierte una marca de tiempo Unix en fecha, y al revés

Última revisión del contenido:

¿Un número de diez cifras en un registro o en un JWT y nadie sabe a qué momento corresponde? Pégalo aquí: la fecha legible aparece al instante, en UTC, sin instalar nada y sin registrarte.

s
a

¿Qué es una marca de tiempo Unix?

La marca de tiempo Unix, también llamada tiempo epoch, cuenta los segundos transcurridos desde el 1 de enero de 1970 a las 00:00:00 UTC. Así guardan las máquinas una fecha como un solo número entero.

El valor 1 700 000 000 corresponde al 14 de noviembre de 2023 a las 22:13:20 UTC. La marca de hoy ronda los 1790 millones y crece en una unidad cada segundo.

Aparece en bases de datos, API, registros de servidor y tokens JWT. No depende de ninguna zona horaria: el mismo número señala el mismo instante en todo el mundo.

De ahí viene el problema del año 2038: una marca guardada en 32 bits con signo alcanza su valor máximo el 19 de enero de 2038. Los sistemas actuales la guardan en 64 bits.

¿Cómo funciona la conversión?

Convertir consiste en contar cuántos días, horas, minutos y segundos caben en el número de segundos transcurridos desde la época. El resultado se da en UTC, la misma base que la propia marca de tiempo.

Para la hora peninsular española suma una hora en invierno y dos en verano, ya que España está en UTC+1 y UTC+2; Canarias va una hora por detrás. En JavaScript, Intl.DateTimeFormat con timeZone: "Europe/Madrid" aplica el desfase por ti.

Cuidado con la unidad: JavaScript cuenta milisegundos, no segundos. Date.now() devuelve por tanto un número mil veces mayor que una marca Unix y hay que dividirlo entre 1000.

Marca de tiempo Unix y fecha legible: qué las separa

Marca de tiempo UnixFecha y hora
FormatoNúmero enteroAAAA-MM-DD HH:MM:SS
Zona horariaSiempre UTCDepende del lugar
Rango en 32 bits0 – 2 147 483 6471970–2038
Rango en 64 bitsPrácticamente ilimitadoMiles de millones de años
OrdenaciónNatural, son númerosExige analizar el texto

¿Cómo usar el convertidor?

  1. 1. Introduce un valor

    Escribe una marca de tiempo en segundos. El conversor descarta la parte decimal, así que divide antes los milisegundos entre 1000.
  2. 2. Lee el resultado

    La fecha aparece al instante en el campo contiguo, en UTC y con el formato 2023-11-14 22:13:20, sin pulsar ningún botón.
  3. 3. Copia o cambia el sentido

    Pulsa Copiar resultado o el botón Cambiar orden para escribir una fecha y obtener su marca de tiempo.

¿Para qué sirve este convertidor?

  1. Bases de datos y columnas de fecha

    Las columnas created_at, updated_at y deleted_at guardan a menudo una marca de tiempo en lugar de una fecha legible, ya sea en PostgreSQL, MySQL o SQLite. Al depurar una migración de Symfony o Laravel, el conversor devuelve el sentido a la fila sin lanzar ninguna consulta.
  2. API y tokens JWT

    Un token JWT lleva los campos exp e iat, la fecha de caducidad y la de emisión, ambas como marca de tiempo Unix. El conversor dice en un segundo si el token sigue siendo válido y cuándo exactamente se emitió.
  3. Registros de servidor y tareas cron

    Apache, Nginx y syslog fechan cada línea. Una tarea cron en un servidor suele correr en UTC: el conversor da la hora UTC del incidente, a la que hay que sumar el desfase español para compararla con el horario de oficina.
  4. Depuración y objetos Date en JavaScript

    Date.now() devuelve milisegundos, unos 1 788 000 000 000 en septiembre de 2026. Dividir entre 1000 y redondear hacia abajo da la marca Unix. El conversor sirve entonces para comparar valores de varias fuentes y rastrear desajustes de reloj.

Valores que conviene tener a mano

  • La época Unix empieza el 1 de enero de 1970 a las 00:00:00 UTC: esa es la marca 0.
  • El límite de 32 bits, 2 147 483 647, cae el 19 de enero de 2038 a las 03:14:07 UTC.
  • En JavaScript, Date.now() devuelve milisegundos, no segundos.
  • Una marca negativa señala una fecha anterior a 1970: -1 es el 31 de diciembre de 1969 a las 23:59:59 UTC.

Última revisión del contenido: · redactado y verificado por el equipo de Arteon

Preguntas frecuentes

¿Qué es la época Unix?

1 de enero de 1970, 00:00:00 UTC. Todas las marcas de tiempo se miden desde este punto.

¿Por qué se usa el 1 de enero de 1970?

Los creadores de Unix eligieron esta fecha como referencia al diseñar el sistema en 1969–1970.

¿Qué es el problema del año 2038?

Los timestamps de 32 bits con signo se desbordan el 19 de enero de 2038 a las 03:14:07 UTC. Los sistemas modernos usan 64 bits.

¿Los cálculos se realizan localmente?

Sí. Todos los cálculos se ejecutan en tu navegador.

¿Cuál es la marca de tiempo Unix actual?

En septiembre de 2026 ronda los 1 788 000 000 y crece en una unidad cada segundo. Para el valor exacto, escribe la fecha de hoy en el conversor o ejecuta Math.floor(Date.now() / 1000) en la consola del navegador.

¿Cómo paso del resultado a la hora española?

El conversor muestra UTC. La España peninsular está en UTC+1 en invierno y UTC+2 en verano, así que hay que sumar una o dos horas; Canarias va una hora por detrás. En JavaScript, Intl.DateTimeFormat con timeZone: "Europe/Madrid" aplica el desfase automáticamente.

¿En qué se diferencian la marca Unix y la de JavaScript?

La marca Unix cuenta segundos y JavaScript cuenta milisegundos. Por eso 1700000000 se escribe 1700000000000 en JavaScript. Dividir entre 1000 y aplicar Math.floor devuelve una a la otra.

¿Cómo obtengo una marca de tiempo en JavaScript, PHP o SQL?

En JavaScript, Math.floor(Date.now() / 1000). En PHP, time(). En Python, int(time.time()). En SQL, UNIX_TIMESTAMP() en MySQL y EXTRACT(EPOCH FROM NOW()) en PostgreSQL.

¿Puede ser negativa una marca de tiempo?

Sí. Los valores negativos señalan fechas anteriores al 1 de enero de 1970: -86400 es el 31 de diciembre de 1969 a las 00:00:00 UTC. La mayoría de lenguajes y bases de datos los aceptan sin problema.

Captura de pantalla de la herramienta gratuita de Arteon: Convierte una marca de tiempo Unix en fecha, y al revés

Ayúdanos a mejorar nuestras herramientas

¿Tienes una idea, encontraste un error o quieres sugerir una función? Escríbenos – respondemos en 24 horas.