Qué es
Un timestamp Unix es el número de segundos transcurridos desde las 00:00:00 UTC del 1 de enero de 1970, la llamada época Unix. Es el mismo número en todo el mundo en el mismo momento, por eso lo usan las API, los registros y las bases de datos. Por ejemplo, 1700000000 es el 14 de noviembre de 2023 a las 22:13:20 UTC.
¿Segundos o milisegundos?
Un timestamp en segundos tiene hoy 10 dígitos. JavaScript, Java y muchas API usan milisegundos, que tienen 13. Si una fecha sale en 1970 o miles de años en el futuro, la unidad probablemente está mal.
Conviértelo online
Pégalo en el Conversor de timestamp Unix. Detecta segundos o milisegundos y muestra la fecha en UTC y en tu zona horaria.
En código y hojas de cálculo
- JavaScript:
new Date(1700000000 * 1000) - Python:
datetime.fromtimestamp(1700000000, tz=timezone.utc) - Excel en español:
=A1/86400+FECHA(1970;1;1)y da formato de fecha a la celda. El resultado está en UTC. - Terminal de Mac o Linux, hora actual:
date +%s
El problema del año 2038
Los sistemas que guardan el timestamp como un número de 32 bits con signo se quedan sin margen el 19 de enero de 2038 a las 03:14:07 UTC. Los sistemas modernos usan 64 bits, que duran miles de millones de años.
Ejemplos prácticos
0es el 1 de enero de 1970, 00:00:00 UTC.86400es exactamente un día después, el 2 de enero de 1970.-86400es un día antes, el 31 de diciembre de 1969. Las marcas negativas son fechas anteriores a 1970.2000000000es el 18 de mayo de 2033, 03:33:20 UTC.
Errores frecuentes
- Pensar que la marca de tiempo tiene zona horaria. No la tiene. 1700000000 es el mismo instante en todas partes; solo cambia cómo se muestra según la zona horaria.
- Crear una marca de tiempo a partir de la hora local como si fuera UTC. El resultado se desvía en tu diferencia con UTC, a menudo justo unas horas. Comprueba una fecha conocida después de convertir.
- Los meses en JavaScript.
new Date(2026, 0, 15)es el 15 de enero: los meses se cuentan desde 0. - Los segundos intercalares. El tiempo Unix trata cada día como exactamente 86.400 segundos e ignora los segundos intercalares, así que no cuenta cada segundo transcurrido.