Unixタイムスタンプ変換ツール|Unix時間と日時(JST・UTC)を相互変換

Unixタイムスタンプ(エポック秒)と日時を相互に変換します。10桁の秒・13桁のミリ秒・マイクロ秒・ナノ秒を桁数から自動判別し、日本時間(JST)/協定世界時(UTC)/お使いの端末のタイムゾーンで表示。ISO 8601形式の出力やワンクリックコピーにも対応し、ログ調査やAPIレスポンスの確認にそのまま使えます。

このツールは 回 使われています。
1

いまのUnixタイムスタンプ

現在時刻のUnixタイムスタンプを250ミリ秒ごとに更新して表示します。値をコピーして、そのまま検証やテストデータに使えます。

Unix秒(10桁)
Unixミリ秒(13桁)
日本時間(JST)
2

Unixタイムスタンプから日時に変換する

数値を貼り付けるだけで、桁数から単位(秒・ミリ秒・マイクロ秒・ナノ秒)を自動で見分けて日時に変換します。単位は手動で固定することもできます。

よく使う値を入れる
3

日時からUnixタイムスタンプに変換する

日付と時刻を選ぶと、Unix秒・Unixミリ秒・ISO 8601形式を計算します。入力した日時をどのタイムゾーンとして扱うかも切り替えられます。

使い方

  1. ログやAPIレスポンスからコピーした数値を「Unixタイムスタンプ」欄に貼り付けます。単位は桁数から自動判別されるため、10桁でも13桁でもそのまま貼り付けて構いません。created_at: 1769490245, のように前後へ文字が混ざったまま貼り付けても、8桁以上の数値を自動で取り出します。
  2. 日本時間・UTC・端末のタイムゾーンを切り替えて、日時表示やISO 8601形式を確認します。各行の「コピー」で値をそのまま取り出せます。
  3. 逆方向に調べたいときは「日時からUnixタイムスタンプに変換する」に日付と時刻を入力します。入力内容は自動保存され、次回開いたときも復元されます。

Unixタイムスタンプ早見表

桁数から単位を見分ける

桁数単位値の例主な生成元
10桁1769490245PHP の time()/シェルの date +%s/Python の time.time()
13桁ミリ秒1769490245123JavaScript の Date.now()/Java の System.currentTimeMillis()
16桁マイクロ秒1769490245123456分散トレーシング基盤やアクセスログの高精度タイムスタンプ
19桁ナノ秒1769490245123456789Go の time.Now().UnixNano()/Python の time.time_ns()

13桁の値を秒として読むと5万年以上先の日付になるため、桁数での判別が有効です。上の表の値をカンマ付きのままコピーして貼り付けても、区切り記号は自動で取り除かれます。

期間ごとの秒数

期間秒数用途の例
1分60トークンの有効期限などの最小単位
1時間3,600時差の計算(日本時間は UTC+9 = 32,400秒)
1日86,400日次バッチ、24時間前のログ抽出
1週間604,800週次集計、7日前との比較
30日2,592,000キャッシュの保持期間、月次のおおよその区切り
365日(平年の1年)31,536,000年単位の保持期間
366日(うるう年)31,622,400うるう年をまたぐ1年

Unix時間は1日を必ず86,400秒として数えるため、うるう秒による増減はありません。うるう「年」による1日の差だけが上の表のように効いてきます。

各年1月1日 00:00:00 のUnix秒

日本時間(JST)の年始協定世界時(UTC)の年始
2020年1,577,804,4001,577,836,800
2021年1,609,426,8001,609,459,200
2022年1,640,962,8001,640,995,200
2023年1,672,498,8001,672,531,200
2024年1,704,034,8001,704,067,200
2025年1,735,657,2001,735,689,600
2026年1,767,193,2001,767,225,600
2027年1,798,729,2001,798,761,600
2028年1,830,265,2001,830,297,600
2029年1,861,887,6001,861,920,000
2030年1,893,423,6001,893,456,000

2列の差はどの年も 32,400秒(9時間)です。ログを「今年のぶんだけ」で絞り込むときの下限値として使えます。

キリのよい値と対応する日時

Unix秒日本時間(JST)協定世界時(UTC)意味
01970-01-01 09:00:001970-01-01 00:00:00基準時刻(エポック)。これより前は負の値
1,000,000,0002001-09-09 10:46:402001-09-09 01:46:4010桁に到達した瞬間
1,500,000,0002017-07-14 11:40:002017-07-14 02:40:00テストデータでよく見かける区切り
2,000,000,0002033-05-18 12:33:202033-05-18 03:33:20次に桁が繰り上がる区切り
2,147,483,6472038-01-19 12:14:072038-01-19 03:14:07符号付き32ビット整数の上限(2038年問題)

Unixタイムスタンプの基礎知識

Unixタイムスタンプ1970年1月1日 00:00:00 UTC からの経過秒数で時刻を表す方式。エポック秒・POSIX時間とも呼ばれ、単なる整数なので言語やDBをまたいでも扱いやすい
基準時刻(エポック)1970-01-01 00:00:00 UTC。この瞬間が 0 で、それより前は負の値になる。日本時間ではこの瞬間は 1970-01-01 09:00:00 にあたる
秒とミリ秒の見分け方10桁なら秒、13桁ならミリ秒が基本。JavaScriptの Date.now() や Java はミリ秒、PHPのtime()やUNIX系コマンドは秒を返すことが多い
マイクロ秒・ナノ秒16桁ならマイクロ秒、19桁ならナノ秒。分散トレーシングやログ基盤(Goのtime.UnixNano等)で使われる
タイムゾーンは含まれないUnixタイムスタンプは常にUTC基準の一意な値で、地域情報を持たない。日本時間で見るか、UTCで見るかは表示側の解釈の問題
ISO 86012026-07-27T15:04:05+09:00 のように、日時とUTCからのずれ(オフセット)を併記する国際規格。末尾の Z は UTC を意味する
2038年問題符号付き32ビット整数で秒を扱うと 2147483647(2038-01-19 03:14:07 UTC)で桁があふれる問題。64ビット化で解消される
うるう秒は数えないUnix時間は1日を必ず86400秒として数えるため、うるう秒は加算されない。ミリ秒未満の厳密な時刻管理には別の仕組みが必要

よくある質問

10桁と13桁のタイムスタンプは何が違いますか?
単位が違うだけで、表している時刻の考え方は同じです。10桁は秒単位(例: 1769490245)、13桁はミリ秒単位(例: 1769490245123)です。13桁の値を秒として解釈すると、5万年以上先の日付になってしまうため、桁数での判別が有効です。このツールは桁数から自動で単位を判定し、判定結果を入力欄の下に表示します。
Unixタイムスタンプにタイムゾーンの情報は含まれますか?
含まれません。Unixタイムスタンプは常にUTC基準の1つの数値で、世界中どこで生成しても同じ瞬間なら同じ値になります。「日本時間のタイムスタンプ」という概念は存在せず、日本時間で見るかUTCで見るかは表示するときの解釈です。日本時間に9時間分(32400秒)を足したり引いたりして保存すると、後で必ず不整合が起きるので避けてください。
2038年問題とは何ですか?
Unixタイムスタンプを符号付き32ビット整数で扱うシステムでは、最大値が 2147483647 = 2038年1月19日 03:14:07 UTC となり、それ以降の時刻を表せなくなる問題です。値があふれると1901年などの過去日付に化けます。現在の64ビット環境では実質的に問題になりませんが、古い組み込み機器やデータベースの列定義が32ビットのままだと影響を受けます。プリセットボタンで実際の変換結果を確認できます。
1970年より前の日付も変換できますか?
できます。基準時刻より前は負の値になり、例えば -86400 は 1969年12月31日 00:00:00 UTC です。このツールは先頭にマイナスを付けた入力にも対応しています。ただし、システムによっては負のタイムスタンプを想定していない実装もあるため、実運用のデータで使う際は保存先の仕様を確認してください。
ログやAPIレスポンスから、前後の文字ごと貼り付けても変換できますか?
できます。created_at: 1769490245, のように前後に文字が混ざっている場合は、8桁以上の数値のうち最も桁数の多いものを自動で取り出して変換します。取り出した値は入力欄の下に「貼り付けた文字列から 1769490245 を取り出しました。」と表示されるため、意図した数値が選ばれたかをその場で確認できます。カンマ・空白・アンダースコアの区切りも自動で取り除かれるので、1,769,490,245 のような表記のままでも構いません。
ミリ秒の値を秒に直すにはどうすればよいですか?
1000で割り、小数点以下を切り捨てます。このツールでは13桁のミリ秒を貼り付けると、変換結果の中に「Unix秒に換算」「Unixミリ秒に換算」の両方を表示するため、割り算をせずにそのままコピーできます。単位をまたいだ比較をするときに便利です。

ご利用にあたっては、本Webアプリの 利用規約 も合わせてご確認ください。

バグや表示の乱れ、追加してほしい機能などがあれば、こちらよりお知らせください。

バグや表示の乱れ、使いにくかった点、追加してほしい機能などがあればお知らせください。
同意事項
・本フォームは不具合報告専用です。個別の返信は原則行っておりません。
・誹謗中傷、脅迫、公序良俗に反する内容が含まれる場合、IPアドレス等のログに基づきしかるべき対処を行います。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次