Conversor de Timestamp

Convierte timestamps Unix a fechas legibles y viceversa; ambas direcciones se mantienen sincronizadas mientras editas cualquiera de las dos.

Timestamp Unix

Fecha y hora

¿Qué es un timestamp Unix?

Segundos (o ms) desde el 1 de enero de 1970.

La época Unix es la medianoche UTC del 1 de enero de 1970. Un timestamp es simplemente el número de segundos (o milisegundos) transcurridos desde entonces, por eso se ordena y compara como un número simple, a diferencia de una cadena de fecha con formato.

Segundos vs. milisegundos

Unix, Linux y la mayoría de las APIs de backend usan segundos. El propio Date.now() de JavaScript y la mayoría del código frontend usan milisegundos. Confundir ambos es uno de los errores de timestamp más comunes: un valor en "segundos" pegado en un campo de "milisegundos" cae en algún punto de 1970.

Cómo funciona

Todo pasa por el objeto Date del navegador, que almacena internamente un solo número: milisegundos desde la época Unix, medianoche UTC del 1 de enero de 1970. Al convertir un timestamp, la herramienta multiplica por 1000 si indicaste segundos, construye un Date, y lo muestra de cuatro formas: tu hora local vía toLocaleString (el formateador Intl del navegador, usando tu propia zona horaria e idioma), UTC, ISO 8601, y una etiqueta relativa "en 3 días / hace 2 horas" calculada agrupando la diferencia con el ahora en años, meses, días, horas, minutos o segundos.

En la dirección contraria, el valor del selector de fecha se interpreta como hora local y se convierte de nuevo a segundos y milisegundos. El campo datetime-local se alimenta desplazando primero el timestamp por tu desfase horario, que es la parte delicada que la mayoría de los conversores hacen mal sutilmente: toISOString() siempre habla en UTC, así que sin ese desplazamiento el selector mostraría una hora desviada varias horas de la hora de reloj que esperas.

El error clásico contra el que esta herramienta protege haciendo la unidad explícita: segundos vs milisegundos. Los timestamps Unix actuales tienen 10 dígitos en segundos y 13 en milisegundos. Interpreta un valor en milisegundos como segundos y aterrizas más de 50.000 años en el futuro; haz lo contrario y obtienes enero de 1970. Si una conversión se ve absurda, cambia el desplegable de unidad, eso casi siempre es todo el error. Los valores fuera de rango (las fechas de JavaScript tienen un tope de 100 millones de días a cada lado de la época, aproximadamente el año 275760) producen un error claro en lugar de basura.

Todo el análisis y formateo son trabajo de la API local del navegador. Abre la pestaña Red de las DevTools mientras conviertes: no se dispara ninguna petición, y los timestamps de tus logs nunca salen de tu máquina.