Desarrollador

Convertidor de Marca de Tiempo Unix

Salva la brecha entre el tiempo epoch y las fechas legibles. Convierte cualquier marca de tiempo Unix a una fecha legible, o viceversa — además de una lectura en vivo de la marca de tiempo actual con un solo clic.

¿Te ha ayudado esta calculadora?

¿Qué es Convertidor de Marca de Tiempo Unix?

Un Convertidor de Timestamp Unix es una herramienta esencial para desarrolladores que conecta el tiempo epoch legible por máquina con fechas legibles por humanos. El tiempo Unix (también llamado tiempo epoch) mide el número de segundos que han transcurrido desde el 1 de enero de 1970 a las 00:00:00 UTC — el momento en que el sistema operativo Unix arrancó por primera vez en una computadora PDP-11 en Bell Labs. Esta fecha se conoce como la Época Unix y sirve como el punto cero universal para la medición del tiempo en informática. El convertidor funciona en dos direcciones: ingrese un timestamp Unix (típicamente un número de 10 dígitos para segundos o 13 dígitos para milisegundos) para ver la fecha legible correspondiente, o ingrese una fecha y hora para obtener su timestamp Unix equivalente. Una visualización en vivo del timestamp actual se actualiza cada segundo para que pueda capturar el instante exacto con un clic. Date.now() de JavaScript y la mayoría de las APIs modernas devuelven timestamps en milisegundos (13 dígitos), mientras que las bases de datos y sistemas legacy a menudo usan segundos (10 dígitos) — mezclar estos es uno de los errores más comunes en el desarrollo web. El convertidor también maneja timestamps negativos, que representan fechas anteriores a la época (31 de diciembre de 1969 y anteriores). Alterne entre UTC y hora local para verificar valores sensibles a la zona horaria.

Cuándo Usar Esta Calculadora

  • Estás depurando una API que devuelve marcas de tiempo Unix y necesitas leerlas como fechas humanas
  • Estás escribiendo código que almacena o compara fechas y necesitas convertir entre marca de tiempo y formato de fecha
  • Necesitas la marca de tiempo Unix actual para una entrada de registro, llamada a API o registro de base de datos
  • Estás analizando registros del servidor donde las marcas de tiempo están en formato epoch
  • Quieres verificar que una marca de tiempo en tu código corresponde a la fecha y hora correctas
  • Estás trabajando con bases de datos o sistemas de archivos que usan marcas de tiempo Unix para metadatos de archivos

Pasos:

  1. Introduce una marca de tiempo Unix para convertirla a una fecha legible.
  2. O introduce una fecha/hora para convertirla a una marca de tiempo Unix.
  3. Haz clic en el botón de hora actual para obtener la marca de tiempo Unix actual.
  4. Copia los resultados con el botón de copiar.

Fórmula

Marca de tiempo → Fecha: new Date(timestamp × 1000) Fecha → Marca de tiempo: Math.floor(date.getTime() / 1000) Época Unix: 1 de enero de 1970 00:00:00 UTC Marca de tiempo máxima de 32 bits: 19 de enero de 2038 (03:14:07 UTC)

Casos de uso

  • Depurar respuestas de API con marcas de tiempo
  • Convertir valores de marca de tiempo de bases de datos
  • Establecer fechas de vencimiento en código
  • Análisis de registros e interpretación de datos de series temporales

Beneficios Clave

  • Conversión instantánea entre timestamps Unix y fechas legibles por humanos en ambas direcciones
  • Timestamp Unix actual en vivo que se actualiza cada segundo con botón de copiar con un clic
  • Alterne entre UTC y hora local para verificar valores sensibles a la zona horaria
  • Maneja tanto formatos de 10 dígitos (segundos) como de 13 dígitos (milisegundos)
  • Procesa timestamps negativos para fechas anteriores a la época Unix (antes de 1970)
  • Gratis, instantáneo y funciona en su navegador sin registro ni recopilación de datos

Consejos Profesionales

  • Almacene timestamps siempre en UTC en bases de datos — convierta a hora local solo en la capa de visualización.
  • Recuerde que Date.now() de JavaScript devuelve milisegundos. Para obtener segundos: Math.floor(Date.now() / 1000).
  • Use enteros de 64 bits para el almacenamiento de timestamps en nuevos sistemas para evitar el problema de desbordamiento de 2038.
  • Al depurar fechas inesperadas, verifique primero si el timestamp está en segundos o milisegundos — la diferencia es un factor de 1000.
  • Para tokens de autenticación de API o URLs firmadas, calcule la marca de tiempo de expiración en el servidor y compárela con la hora Unix actual para verificar la validez.

Errores Comunes que Debes Evitar

  • Olvidar que Date.now() de JavaScript devuelve milisegundos — siempre divida por 1000 al comparar con timestamps basados en segundos.
  • Asumir que todas las APIs usan el mismo formato — algunas devuelven segundos, otras milisegundos. Siempre consulte la documentación de la API.
  • No considerar las diferencias de zona horaria entre donde se generó el timestamp y donde se está viendo, lo que provoca que las fechas parezcan diferir por horas.
  • Usar enteros de 32 bits para el almacenamiento de timestamps en nuevos sistemas en lugar de 64 bits, lo que desbordará en 2038 y romperá la aplicación.

Términos Clave Explicados

Timestamp Unix: El recuento de segundos transcurridos desde el 1 de enero de 1970 00:00:00 UTC (la Época Unix)
Época: El punto de referencia para la medición del tiempo en informática; para Unix, es el 1 de enero de 1970 00:00:00 UTC
UTC (Tiempo Universal Coordinado): El estándar de tiempo primario utilizado en todo el mundo, independiente de cualquier zona horaria
Problema del año 2038: La fecha en que los timestamps Unix de 32 bits desbordarán, haciendo que los sistemas pasen a valores negativos y muestren fechas alrededor de 1901.
Timestamp en milisegundos: Un timestamp Unix de 13 dígitos donde el tiempo se mide en milisegundos en lugar de segundos, usado por Date.now() de JavaScript y la mayoría de las APIs modernas.

Conceptos relacionados

  • Época Unix: 1 de enero de 1970 00:00:00 UTC, el punto de referencia desde el cual se miden todas las marcas de tiempo Unix
  • Tiempo Epoch: Un sistema para representar el tiempo como el número de segundos transcurridos desde la época Unix
  • UTC (Tiempo Universal Coordinado): El estándar de tiempo principal por el cual el mundo regula los relojes y el tiempo, independiente de la zona horaria
  • Problema del año 2038: La fecha en que las marcas de tiempo Unix de 32 bits se desbordarán, potencialmente causando que los sistemas interpreten la fecha como 1901
  • ISO 8601: Un estándar internacional para representar fechas y horas (por ejemplo, 2024-06-29T12:00:00Z) como alternativa a las marcas de tiempo Unix

Ejemplo

Marca de tiempo actual: 1719676800 → Fecha: 29 de junio de 2024 12:00:00 PM UTC. Convirtiendo una fecha: "1 de enero de 2025 00:00:00 UTC" → Marca de tiempo: 1735689600.

Interpretación de sus resultados

El convertidor funciona en dos direcciones: introducir una marca de tiempo Unix te da la fecha legible por humanos, e introducir una fecha te da la marca de tiempo Unix. La hora Unix actual se muestra en la parte superior con un botón de actualización, para que siempre puedas ver la marca de tiempo en vivo sin escribir nada. Las marcas de tiempo Unix cuentan segundos desde el 1 de enero de 1970 UTC (la época Unix). Son independientes de la zona horaria — la misma marca de tiempo representa el mismo instante en todas partes de la Tierra. Cuando introduces una fecha, la calculadora usa tu desplazamiento de zona horaria local para calcular la marca de tiempo, pero puedes cambiar a UTC si necesitas resultados neutrales de zona horaria. El problema de 2038 vale la pena entenderlo: los enteros con signo de 32 bits se desbordan el 19 de enero de 2038, lo que significa que los sistemas heredados que usan marcas de tiempo de 32 bits se envolverán a valores negativos. Los sistemas modernos usan marcas de tiempo de 64 bits que no se desbordarán durante miles de millones de años. Si encuentras fechas inesperadas alrededor de 1901 o 2038, un desbordamiento de 32 bits es la causa probable.

Preguntas frecuentes

¿Qué es una marca de tiempo Unix?
Una marca de tiempo Unix es el número de segundos que han transcurrido desde el 1 de enero de 1970 a las 00:00:00 UTC (la época Unix). Es una referencia de tiempo universal utilizada en programación e informática.
¿Por qué son útiles las marcas de tiempo?
Las marcas de tiempo proporcionan una forma independiente de la zona horaria de almacenar y comparar horas. Se utilizan en bases de datos, APIs, registro de eventos y cualquier sistema que necesite un seguimiento preciso del tiempo.
¿Qué es el problema del año 2038?
El 19 de enero de 2038, las marcas de tiempo Unix de 32 bits se desbordarán porque se excederá el entero con signo de 32 bits máximo (2.147.483.647). Los sistemas modernos utilizan marcas de tiempo de 64 bits para evitar esto.
¿Cuál es la diferencia entre segundos y milisegundos en las marcas de tiempo?
Las marcas de tiempo Unix estándar están en segundos. JavaScript y muchas APIs modernas usan milisegundos (multiplica los segundos por 1000). Si obtienes fechas inesperadas, verifica si la marca de tiempo está en segundos o milisegundos — una marca de tiempo en milisegundos interpretada como segundos mostrará una fecha muy lejana en el futuro, y viceversa.
¿Por qué mi marca de tiempo muestra una fecha diferente a la que esperaba?
Las causas más comunes son: la marca de tiempo está en milisegundos en lugar de segundos (o viceversa), una diferencia de zona horaria entre donde se generó la marca de tiempo y donde la estás viendo, o un desbordamiento de 32 bits para valores muy grandes o muy pequeños. Alterna entre UTC y hora local para descartar problemas de zona horaria.
¿Puedo convertir marcas de tiempo anteriores a 1970?
Sí. Las marcas de tiempo anteriores al 1 de enero de 1970 se representan como números negativos. Por ejemplo, -86400 representa el 31 de diciembre de 1969 a las 00:00:00 UTC. La calculadora maneja correctamente las marcas de tiempo negativas.
¿Qué formato suelen usar las bases de datos para las marcas de tiempo?
La mayoría de las bases de datos relacionales (PostgreSQL, MySQL) admiten tanto marcas de tiempo Unix (como columnas enteras) como tipos nativos datetime/timestamp. TIMESTAMPTZ de PostgreSQL almacena marcas de tiempo con conciencia de zona horaria internamente. La elección depende de las necesidades de tu aplicación — las marcas de tiempo Unix son más simples para comparaciones, mientras que los tipos datetime nativos son más legibles en consultas.
¿Cómo manejo las conversiones de zona horaria con marcas de tiempo Unix?
Las marcas de tiempo Unix siempre están en UTC internamente. Para mostrar en una zona horaria local, aplica el desplazamiento de zona horaria en el momento de la visualización. La mayoría de los lenguajes de programación tienen funciones integradas de conversión de zona horaria. En JavaScript: new Date(timestamp * 1000).toLocaleString('en-US', { timeZone: 'America/New_York' }).
¿Cuál es el valor máximo de marca de tiempo Unix?
Un entero con signo de 64 bits puede representar marcas de tiempo hasta aproximadamente 292 mil millones de años desde la época — mucho más allá de la edad del universo. En la práctica, las marcas de tiempo de 64 bits nunca se desbordarán. El límite de 32 bits (2.147.483.647 segundos) corresponde al 19 de enero de 2038 a las 03:14:07 UTC.
¿Por qué algunos sistemas se están alejando de las marcas de tiempo Unix?
Las marcas de tiempo Unix pierden legibilidad para los humanos y no manejan elegantemente los segundos intercalares, los cambios de zona horaria o las reformas del calendario. Las cadenas ISO 8601 (por ejemplo, 2024-06-29T12:00:00Z) son autodocumentadas y tienen conciencia de zona horaria. Sin embargo, las marcas de tiempo Unix siguen siendo populares por su simplicidad, compacidad e independencia de zona horaria en almacenamiento y cálculo.

Descubre Más Herramientas

Selección fresca de toda nuestra biblioteca de herramientas.