Calculadora de marca de tiempo Unix
Resultado
Fecha (UTC)
- Hora (UTC)
- 12:00:00
- Día de la semana (UTC)
- jueves
- ISO 8601
- 2026-01-15T12:00:00Z
- Marca de tiempo
- 1.768.478.400 segundos
- Marca de tiempo (milisegundos)
- 1.768.478.400.000
La calculadora de marca de tiempo Unix lee una cuenta de segundos o de milisegundos y la convierte en una fecha y una hora, o toma una fecha y una hora y devuelve el número. Las dos direcciones conviven en una sola página porque son inversas la una de la otra: elijas el modo que elijas, la respuesta aparece junto a los datos con los que la has obtenido, así que un valor se puede comprobar en lugar de darse por bueno. Todo el resultado está en UTC y escrito de tres maneras —la fecha del calendario, la hora y la cadena ISO 8601 completa terminada en Z—, porque una marca de tiempo Unix no tiene zona horaria propia: 1768478400 es el mismo instante en Shanghái y en Nueva York, y lo único que cambia es cómo se lee en cada reloj local. En el mundo del software se le dice directamente «timestamp», y de ahí viene la mitad de las búsquedas que traen a esta página. La calculadora convierte además entre segundos y milisegundos, que es de donde sale la mayor parte de la confusión práctica, y lleva una pequeña tabla de referencia con los valores de la época que conviene conocer, incluido el que está detrás del problema del año 2038.
Cuatro valores de la época que conviene conocer, en segundos, milisegundos y UTC
| Segundos | Milisegundos | UTC |
|---|---|---|
| 0 | 0 | 1970-01-01T00:00:00Z |
| 1000000000 | 1000000000000 | 2001-09-09T01:46:40Z |
| 2147483647 | 2147483647000 | 2038-01-19T03:14:07Z |
| 4133980799 | 4133980799000 | 2100-12-31T23:59:59Z |
Cada fila es el mismo instante escrito de tres maneras, y ahí está el interés: las dos cuentas se diferencian exactamente en tres dígitos, así que un valor que parece de la magnitud equivocada se identifica solo por su longitud. 0 es la propia época. 1000000000 es la primera cuenta que llega a diez dígitos: el 9 de septiembre de 2001, celebrado en su momento como el billennium. 2147483647 es 2³¹ − 1, el último segundo que admite un contador con signo de 32 bits, que es el problema del año 2038: un límite de ese tipo de almacenamiento, no de la marca de tiempo. 4133980799 es el último segundo que acepta esta página, y va abajo porque la columna va en orden —el borde del intervalo se cree más cuando se ve como valor que cuando solo se enuncia en el texto.
Fórmula
segundos de época = días transcurridos desde el 1970-01-01 × 86400 + segundos desde la medianoche UTC; fecha y hora = la misma aritmética recorrida al revés
- mode
- En qué dirección ir: se escribe una marca de tiempo y se devuelve una fecha, o se escriben una fecha y una hora y se devuelve una marca de tiempo
- timestamp
- La cuenta misma, en segundos o en milisegundos según el campo de unidad. Solo se usa en la dirección de marca de tiempo a fecha
- unit
- Si el número que escribiste cuenta segundos (10 dígitos para fechas de este siglo) o milisegundos (13 dígitos). Solo se usa en la dirección de marca de tiempo a fecha
- date
- El día del calendario en UTC, escrito como AAAA-MM-DD. Solo se usa en la dirección de fecha a marca de tiempo
- time
- La hora local en UTC, como HH:MM o HH:MM:SS. Solo se usa en la dirección de fecha a marca de tiempo
- utcDate
- La fecha en la que cae la marca de tiempo, en UTC. Es el resultado principal
- utcTime
- La hora en UTC, siempre con segundos. Cualquier fracción de segundo que traiga la entrada se descarta en lugar de redondearse
- utcWeekday
- El día de la semana en el que cae esa fecha, como número de 0 (domingo) a 6 (sábado)
- isoDateTime
- La forma completa ISO 8601, del tipo 2026-01-15T12:00:00Z, lista para copiar en un programa o en un registro
- timestampSeconds
- El mismo instante como segundos enteros desde el 1970-01-01T00:00:00Z, truncado en lugar de redondeado, para que nunca discrepe de la hora que tiene justo encima
- timestampMilliseconds
- El mismo instante en milisegundos: el valor en segundos por 1000, conservando la parte por debajo del segundo que trajera la entrada
Úsala cuando haya que emparejar un número con una fecha: leer una marca de tiempo de un registro de servidor, de la respuesta de una API o de una fila de base de datos; comprobar si un valor que te han enviado está en segundos o en milisegundos; o generar una marca de tiempo para guardarla. La página se detiene a propósito en UTC. No convierte a tu hora local y no pregunta en qué zona horaria estás: una marca de tiempo Unix no tiene zona, así que la respuesta honesta es una respuesta en UTC, y traducirla a un reloj local es el trabajo de la calculadora de zona horaria. Tampoco hace aritmética con las marcas de tiempo: para «cuánto es esto más treinta días», convierte primero y usa una calculadora de fechas.
Ejemplos resueltos
1768478400: el instante de referencia
- El número está en segundos, así que ya es el valor de la época: no hay que convertir nada antes de leerlo
- Dividirlo entre 86400 da el número de días enteros desde el 1 de enero de 1970, y el resto es la hora del día: el resultado cae en el 15 de enero de 2026 a las 12:00:00 UTC
- El 15 de enero de 2026 es jueves, así que el número del día de la semana es 4
- Escrito del todo es 2026-01-15T12:00:00Z, la forma que espera un registro o una API
- La fila de milisegundos es el mismo instante por 1000, que es como se ve ese mismo valor cuando un sistema lo informa en milisegundos
Es el valor con el que se abre la página y merece la pena memorizarlo como ancla: 1768478400 es el mediodía UTC del 15 de enero de 2026. Cualquier otra conversión de esta página se comprueba mejor una vez que una marca de tiempo te resulta familiar, porque una respuesta equivocada suele estarlo por días enteros o por un factor de 1000, y las dos cosas saltan de inmediato contra un ancla que conoces.
2147483647: el último segundo de la era de 32 bits
- 2147483647 es 2 elevado a 31 menos 1: el número más grande que cabe en un entero con signo de 32 bits
- Leído como cuenta de época es el 19 de enero de 2038 a las 03:14:07 UTC, que es de lo que va el problema del año 2038: los sistemas que guardan marcas de tiempo en ese tipo se quedan sin sitio un segundo después y dan la vuelta a una fecha de 1901
- El 19 de enero de 2038 es martes, día de la semana 2
- La fila de segundos devuelve el número sin tocarlo, que es la comprobación de que el valor entró y salió por la misma aritmética
Es la fila de la tabla de referencia de abajo, pasada por la calculadora. El problema del año 2038 no es que la fecha sea inalcanzable —esta página la maneja sin protestar—, sino que un programa que use un contador con signo de 32 bits no puede representar el segundo siguiente. Los contadores de 64 bits no tienen ese borde en ningún horizonte que importe, y por eso el mismo valor en milisegundos es 2147483647000.
Un valor en milisegundos con fracción: 1768478400500
- El número tiene 13 dígitos y la unidad dice milisegundos, así que es el mismo instante del primer ejemplo más medio segundo
- La hora descarta la fracción en lugar de redondearla, así que marca 12:00:00 y no 12:00:01
- La fila de segundos se trunca para que coincida: 1768478400, no 1768478401
- La fila de milisegundos conserva la fracción, porque es el único sitio del resultado donde existe
Es el único caso en el que redondear y truncar no coinciden, y la razón de que la fila de segundos trunque. Redondear medio segundo hacia arriba imprimiría un valor en segundos una unidad mayor que la hora que tiene justo encima, y quien comparase las dos filas concluiría que una de las dos está rota. Que cada fila sea coherente con la hora mostrada importa más que dar el entero más próximo.
La otra dirección: 15 de enero de 2026, 12:00:30 UTC
- La fecha se convierte en un número de días desde el 1 de enero de 1970 y se multiplica por 86400 para obtener los segundos hasta la medianoche
- Se le suman los treinta segundos que pasan de la medianoche: el total es 1768478430, que es el valor del primer ejemplo más 30
- El campo de hora acepta segundos, así que 12:00:30 se lee tal cual en lugar de redondearse hacia abajo al minuto
- Las filas de fecha y de día de la semana vuelven sin cambios, porque convertir hacia fuera y de vuelta es la operación identidad
Recorrer la dirección inversa sobre un valor que ya has convertido es la forma más barata de comprobar una marca de tiempo: si el viaje de ida y vuelta no devuelve el número con el que empezaste, lo más probable es que la unidad estuviera mal. Escribir un número de 10 dígitos mientras la unidad dice milisegundos se va por un factor de mil, y eso aparece aquí como una fecha de enero de 1970 en lugar de como un error.
Limitaciones
Todo lo que informa la página está en UTC y nunca convierte a una zona horaria local: una marca de tiempo Unix está definida sin zona, así que la página que la traduce a un reloj local es la calculadora de zona horaria. El intervalo va del 1970-01-01T00:00:00Z al 2100-12-31T23:59:59Z, y los valores que quedan fuera se rechazan en lugar de calcularse en silencio: las marcas de tiempo negativas son marcas Unix legales para fechas anteriores a la época, pero la página lo dice y se detiene en vez de devolver una respuesta de 1969 que contradice su propio intervalo declarado. Las fracciones de segundo se truncan y no se redondean, así que un valor en milisegundos no pierde precisión, pero tampoco influye en los segundos mostrados. La página no interpreta cadenas de fecha en otros formatos, no lee la marca de tiempo de la máquina en la que estás y no hace aritmética: para la fecha que cae treinta días después de un valor convertido, usa una calculadora de fechas.
Preguntas frecuentes
- ¿Qué es el tiempo de época?
- El tiempo de época es el número de segundos transcurridos desde el 1970-01-01T00:00:00 UTC, que es el punto cero desde el que cuentan los sistemas Unix. También se le llama tiempo Unix o tiempo POSIX. Nada de él depende de dónde estés: el tiempo de época está definido en UTC, así que un mismo instante tiene el mismo valor en todo el mundo, y dos máquinas en zonas horarias distintas que no coinciden en el reloj local sí coinciden en la marca de tiempo.
- ¿Cómo convierto una marca de tiempo a fecha?
- Escribe el valor, di si cuenta segundos o milisegundos y lee la fecha y la hora que salen. Para convertir un timestamp a fecha, lo primero que hay que mirar es el número de dígitos: una cuenta en segundos para una fecha de este siglo tiene 10 dígitos, y una cuenta en milisegundos tiene 13. Un valor de 13 dígitos leído como segundos cae decenas de miles de años en el futuro y se rechaza; un valor de 10 dígitos leído como milisegundos cae en enero de 1970, que es el error que no se anuncia solo. Convertir de vuelta con la otra dirección es la confirmación más rápida.
- ¿Qué es el problema del año 2038?
- El problema del año 2038 es lo que ocurre cuando un sistema guarda una marca de tiempo en un entero con signo de 32 bits: el valor más grande que admite ese tipo es 2147483647, que es el 2038-01-19T03:14:07 UTC, y un segundo después el contador se desborda hacia una fecha de 1901. Es un límite del almacenamiento y no de la marca de tiempo, y los contadores de 64 bits no lo tienen. Esta página convierte ese valor y los que vienen detrás sin problema, porque trabaja en doble precisión y no en enteros de 32 bits.
- ¿Conviene guardar segundos o milisegundos?
- Los dos están muy extendidos y ninguno está mal, pero un valor por sí solo no dice cuál de los dos es, así que la unidad tiene que viajar con el número o estar acordada de antemano. Los milisegundos conservan fracciones de segundo y son lo que usan el objeto Date de JavaScript y muchos sistemas de registro; los segundos son lo que define POSIX y lo que devuelven la mayoría de las API y de las bases de datos. Convertir de uno a otro es multiplicar por 1000, y esta página imprime las dos filas para que el par se vea de un vistazo.
- ¿El formato ISO 8601 es lo mismo que una marca de tiempo?
- No, y se confunden con facilidad porque los dos describen el mismo instante. ISO 8601 es la forma escrita —2026-01-15T12:00:00Z— y es legible por personas, ordenable y sin ambigüedad sobre el desfase UTC gracias a la Z final. Una marca de tiempo Unix es una sola cuenta sin ningún formato. La cadena ISO 8601 es lo que pegas en un documento o en una URL; la cuenta es lo que guardas o comparas. Esta página imprime las dos desde la misma conversión, así que se pueden comprobar la una contra la otra.
Referencias
- The Open Group Base Specifications — Seconds Since the Epoch — The Open Group — la definición normativa de la época y del tratamiento de los segundos intercalares
- RFC 3339 — Date and Time on the Internet: Timestamps — IETF — el formato de la cadena terminada en Z que imprime esta página
- MDN — Date — MDN Web Docs — la cuenta en milisegundos y su intervalo en JavaScript