Conversor de timestamp Unix a fecha
Convierte marcas de tiempo Unix (epoch) en segundos o milisegundos a una fecha legible en tu hora local, en UTC y en ISO 8601, o una fecha cualquiera a timestamp. Arriba tienes el timestamp actual en vivo.
- —Timestamp actual (s)
- —Timestamp actual (ms)
Timestamp → fecha
Fecha → timestamp
Cómo usar el conversor
- Timestamp → fecha: pega el número. Con «Detectar automáticamente», hasta 11 dígitos se leen como segundos, de 12 a 14 como milisegundos y más como microsegundos (las fechas actuales tienen 10, 13 y 16 dígitos respectivamente). Verás la fecha en tu zona horaria, en UTC, en ISO 8601 y el tiempo relativo («hace 3 días»).
- Fecha → timestamp: elige fecha y hora e indica si es tu hora local o UTC. Obtienes el valor en segundos y milisegundos listo para copiar.
- El reloj superior muestra el timestamp actual, actualizado cada segundo. Usar ahora lo copia al conversor.
Todo funciona en tu navegador con la zona horaria configurada en tu dispositivo; si necesitas comparar varias zonas, usa el conversor de zonas horarias.
Cómo se calcula
El timestamp cuenta segundos desde la época Unix, 1970-01-01T00:00:00Z. Cada día suma exactamente 86 400 segundos (los segundos intercalares se ignoran), así que la conversión es aritmética pura:
timestamp = días desde 1970 × 86 400 + horas × 3600 + minutos × 60 + segundos
Por ejemplo, el 1 de enero de 2026 a las 00:00 UTC está 20 454 días después de la época: 20 454 × 86 400 = 1 767 225 600. En España peninsular (UTC+1 en invierno) ese instante se ve como la 01:00 del 1 de enero; en Ciudad de México (UTC−6), como las 18:00 del 31 de diciembre de 2025.
Timestamps de referencia
| Timestamp (s) | Fecha UTC | Nota |
|---|---|---|
| 0 | 1970-01-01 00:00:00 | Época Unix |
| 1000000000 | 2001-09-09 01:46:40 | Mil millones de segundos |
| 1767225600 | 2026-01-01 00:00:00 | Año nuevo 2026 |
| 2000000000 | 2033-05-18 03:33:20 | Dos mil millones |
| 2147483647 | 2038-01-19 03:14:07 | Máximo en entero de 32 bits con signo |
| −86400 | 1969-12-31 00:00:00 | Los negativos son fechas anteriores a 1970 |
| Duración | Segundos |
|---|---|
| 1 hora | 3600 |
| 1 día | 86400 |
| 1 semana | 604800 |
| 30 días | 2592000 |
| 1 año (365 días) | 31536000 |
Para restar fechas de calendario (con meses de distinta longitud) es más cómodo el cálculo de días entre fechas.
Obtener el timestamp en código
| Entorno | Timestamp actual | Timestamp → fecha |
|---|---|---|
| JavaScript | Math.floor(Date.now() / 1000) | new Date(ts * 1000) |
| Python | int(time.time()) | datetime.fromtimestamp(ts, timezone.utc) |
| PHP | time() | date('c', $ts) |
| MySQL | UNIX_TIMESTAMP() | FROM_UNIXTIME(ts) |
| PostgreSQL | extract(epoch from now()) | to_timestamp(ts) |
| Bash | date +%s | date -d @ts (Linux) · date -r ts (macOS) |
Errores comunes
- Mezclar segundos y milisegundos: si una fecha sale en el año 57 000, estás leyendo milisegundos como segundos; si sale en enero de 1970, al revés.
- Olvidar la zona horaria:
FROM_UNIXTIMEen MySQL ydatetime.fromtimestampsin zona devuelven hora local del servidor, que puede no ser la tuya. - Guardar fechas locales sin zona: dos registros a las «02:30» el día del cambio de hora pueden ser instantes distintos o no existir. Guarda timestamps o ISO 8601 con
Zo desfase.
Los tokens JWT usan segundos en exp e iat, y los UUID v7 llevan dentro el timestamp en milisegundos.
Preguntas frecuentes
¿Qué es el timestamp Unix?
Es el número de segundos transcurridos desde el 1 de enero de 1970 a las 00:00:00 UTC (la «época Unix»), sin contar segundos intercalares. Es el mismo número en todo el mundo, independientemente de la zona horaria.
¿Cómo sé si un timestamp está en segundos o en milisegundos?
Por el número de dígitos: las fechas actuales tienen 10 dígitos en segundos (1 7xx xxx xxx) y 13 en milisegundos. JavaScript y Java usan milisegundos; PHP, Python (time.time) y la mayoría de bases de datos, segundos.
¿Qué es el problema del año 2038?
Los sistemas que guardan el timestamp en un entero con signo de 32 bits se desbordan el 19 de enero de 2038 a las 03:14:07 UTC (2 147 483 647 s) y saltan a 1901. Los sistemas de 64 bits no tienen ese límite práctico.
¿El timestamp cambia con el horario de verano?
No. El timestamp es siempre UTC; el horario de verano solo afecta a cómo se muestra en hora local. Por eso es la forma más segura de guardar instantes en una base de datos.