Menu

Konverter Unix Timestamp

Konversi antara timestamp Unix, ISO 8601, UTC, dan waktu lokal.

Oleh Nethanel Bar, Co-founder & CEO

Terakhir diperbarui

Siap benar-benar belajar coding?

Coddy mengajarimu dengan menulis kode sungguhan di browser: pelajaran interaktif, umpan balik instan, dan bantuan AI saat kamu buntu.

Apa itu konverter Unix timestamp?

Konverter Unix timestamp mengubah *epoch time*, yaitu satu angka yang mewakili satu momen dalam sejarah, menjadi tanggal yang bisa dibaca manusia, dan mengubah tanggal kembali menjadi timestamp. Developer melihat timestamp di mana-mana: kolom database, baris log, respons API, event analitik, klaim exp di JWT, pemicu scheduler, dan header kedaluwarsa cache.

Gagasan intinya sederhana: komputer menyimpan waktu sebagai angka (detik atau milidetik sejak 1970-01-01 00:00:00 UTC), sedangkan manusia butuh kalender, zona waktu, dan format yang mudah dibaca. Mengonversi di antara keduanya adalah salah satu tugas debug paling umum di aplikasi web maupun mobile.

Bagian yang paling membingungkan adalah *satuannya*. POSIX dan sebagian besar bahasa backend memakai detik. JavaScript, Java, dan banyak message broker memakai milidetik. Sebagian sistem metrik memakai mikrodetik atau nanodetik. Angka 10 digit hampir selalu berarti detik; angka 13 digit hampir selalu berarti milidetik.

Yang kamu pelajari saat mengonversi timestamp

  • Unix timestamp mengukur waktu sebagai *detik* atau *milidetik* sejak Unix epoch (1970-01-01 00:00:00 UTC).
  • UTC adalah acuan yang tetap. Waktu lokal bergantung pada zona waktu pengguna, aturan daylight saving, dan pengaturan jam perangkat.
  • ISO 8601 (2026-04-25T12:00:00Z) adalah format teks yang portabel. Huruf Z di akhir (atau +00:00) berarti UTC; offset seperti +02:00 berarti waktu lokal yang 2 jam lebih cepat dari UTC.
  • Timestamp adalah format yang paling aman untuk dibandingkan. Dua string ISO bisa menggambarkan momen yang sama tapi terlihat berbeda (2026-04-25T12:00:00Z dan 2026-04-25T14:00:00+02:00).

Cara mengonversi Unix timestamp langkah demi langkah

  1. Tempel nilainya

    Tempel angka (detik atau milidetik) atau string tanggal. Konverter mendeteksi formatnya secara otomatis berdasarkan panjang dan bentuknya.

  2. Pastikan satuannya

    Ganti antara detik dan milidetik kalau deteksi otomatisnya salah tebak. Angka 10 digit adalah detik, angka 13 digit adalah milidetik.

  3. Baca kedua tampilannya

    Output-nya menampilkan ISO 8601 dalam UTC, waktu lokalmu, dan frasa relatif yang mudah dibaca (3 hours ago, in 2 days).

  4. Salin yang kamu butuhkan

    Salin timestamp, string ISO, atau waktu lokalnya secara langsung. Berguna saat mengisi exp di JWT, baris database, atau query log.

Referensi cepat format timestamp

Format yang paling sering kamu temui saat bekerja dengan tanggal dan waktu di kode. ISO 8601 juga dibakukan oleh IETF sebagai RFC 3339 untuk dipakai di protokol.

FormatContohTempat kamu menemukannya
Unix dalam detik1777118400Log backend, exp di JWT, time() di POSIX, Redis
Unix dalam milidetik1777118400000Date.now() di JavaScript, System.currentTimeMillis() di Java
ISO 8601 UTC2026-04-25T12:00:00ZREST API, JSON, GraphQL, file log
ISO 8601 dengan offset2026-04-25T14:00:00+02:00Penjadwalan untuk pengguna, undangan kalender
RFC 2822Sat, 25 Apr 2026 12:00:00 GMTHeader email, Date dan Last-Modified di HTTP
Tanggal saja2026-04-25Ulang tahun, hari libur, tanpa makna zona waktu

Contoh timestamp untuk dicoba

Detik vs milidetik

Detik (10 digit)

1777118400

Milidetik (13 digit)

1777118400000

Kedua nilai menggambarkan momen yang sama kalau yang pertama dibaca sebagai detik dan yang kedua sebagai milidetik. Tertukar di antara keduanya adalah bug timestamp yang paling umum.

Membaca timestamp dari API

Respons
{  "id": 42,  "createdAt": 1777118400,  "expiresAt": 1777204800}

Konversi setiap nilai sebelum menyimpulkan apakah itu di masa lalu atau masa depan. Sebagian besar API JSON memakai Unix dalam detik, tapi selalu cek dokumentasinya, karena backend yang banyak memakai JavaScript sering mengirim milidetik.

Membandingkan UTC dan waktu lokal

UTC

2026-04-25T12:00:00Z

Momen yang sama, +02:00

2026-04-25T14:00:00+02:00

Kedua string ini mewakili *momen yang sama*. Selalu simpan momen dalam UTC; ubah ke waktu lokal hanya saat ditampilkan.

Kesalahan umum seputar timestamp

  • Mencampur detik dan milidetik. Selisih faktor 1000 bisa menggeser tanggal puluhan tahun: 1700000000 yang dibaca sebagai detik adalah November 2023, tapi kalau dibaca sebagai milidetik hasilnya Januari 1970.
  • Menyimpan string tanggal tanpa zona waktu. Sistem yang berbeda akan menafsirkannya secara berbeda, ada yang menganggapnya UTC, ada yang menganggapnya zona lokal server.
  • Membandingkan string tanggal yang sudah diformat ('2026-04-25'), bukan membandingkan timestamp. Dua string ISO yang valid bisa menggambarkan momen yang sama dalam format berbeda.
  • Lupa perpindahan daylight saving saat menjadwalkan acara berulang dalam waktu lokal. Selalu pakai UTC sebagai sumber kebenaran.
  • Memercayai jam perangkat sebagai acuan untuk tenggat waktu yang sensitif terhadap keamanan (kedaluwarsa token, OTP). Pakai jam server dengan toleransi selisih yang kecil.

FAQ Unix Timestamp

Apa itu Unix timestamp?
Unix timestamp (disebut juga epoch time) adalah jumlah detik (atau milidetik) yang sudah berlalu sejak 1970-01-01 00:00:00 UTC. Ini adalah satu angka yang mewakili satu momen tertentu, tanpa bergantung pada zona waktu apa pun.
Kenapa sebagian timestamp 10 digit dan yang lain 13 digit?
Unix timestamp 10 digit dalam satuan detik. Yang 13 digit dalam satuan milidetik. Date.now() di JavaScript mengembalikan milidetik; sebagian besar backend mengembalikan detik.
Apa arti UTC?

UTC adalah singkatan dari Coordinated Universal Time. Ini adalah acuan waktu standar global dan tidak mengenal daylight saving. Sebagian besar database, API, dan log sebaiknya menyimpan waktu dalam UTC.

Kenapa JavaScript memakai milidetik?
Objek Date di JavaScript menyimpan timestamp sebagai milidetik sejak Unix epoch, yaitu nilai yang dikembalikan Date.now() dan new Date().getTime(). Presisinya lebih tinggi daripada detik, tapi sering menjadi sumber bug selisih 1000 kali saat berinteraksi dengan bahasa lain.
Bagaimana cara mengubah Unix timestamp menjadi tanggal?
Kalikan dengan 1000 (kalau dalam detik) lalu berikan ke new Date(...) di JavaScript, atau pakai datetime.fromtimestamp(...) di Python. Atau tempel ke konverter Unix timestamp untuk hasil dengan satu klik.
Apakah Unix timestamp akan overflow?
Unix timestamp signed 32-bit akan overflow pada 2038-01-19, yang dikenal sebagai masalah Tahun 2038. Bahasa dan database modern menyimpan timestamp sebagai integer 64-bit, yang memperpanjang rentang amannya hingga ratusan miliar tahun.

Pelajari lebih lanjut

Alat developer lainnya

Ilustrasi bahasa pemrograman di Coddy

Belajar coding dengan Coddy

Mulai