Shiftaru ブログ

ダブルブッキングは注意力では防げない — 重複が生まれる3つの瞬間

2026年7月28日 · Shiftaru 開発チーム

木曜の夜、シフト表を確定して全員に送った。
金曜の朝、追加の依頼が1件だけ入る。表を開いて、空いていそうなところに入れる。

事故はここで起きています。

気づくのは当日の朝でした。本人からの「すみません、今そっちに行けません」という電話で。そこから謝って、組み直して、別の人に頼み直す。

ダブルブッキングは、注意力の問題ではありません。起きる瞬間が決まっているタイプのミスです。この記事では、重複が生まれる3つの瞬間を分解して、それぞれを仕組みでどう塞げるかを整理します。

🎉 正式リリース済み
Shiftaru の正式版を公開中です。無料の練習モード(サンプルデータ)は登録なしで試せます。
👉 https://shiftaru.com

重複は「見落とし」ではなく「見えていない」

ダブルブッキングを起こした人が、確認をサボったわけではありません。むしろ逆です。

確認はしている。ただし、見ている表が重複を映していない。

午前のシフト表を見ながら午後の予約を埋める。先週の確定表とは別のシートで今週を組む。店舗ごとにファイルが分かれている。このとき同じスタッフの1日は複数の場所に散らばっていて、どの表にも「その人の1日ぜんぶ」が載っていません。

重複は、表と表のすきまで生まれます。

だから対策も「もっと気をつける」ではなく、すきまを作らない方向にしか効きません。

重複が生まれる3つの瞬間

重複が生まれる3つの瞬間:表が分かれている・あとから1件足す・移動時間を数えていない

① 表が分かれているとき

午前と午後。店舗Aと店舗B。担当者ごとのシート。

表が割れた瞬間に、同じスタッフが2枚に別々に載ります。片方だけを見て埋めれば、当然ぶつかる。分けた表は、分けた数だけ突き合わせが必要になるということです。

② あとから1件だけ足したとき

いちばん多いのがこれです。

表は完成している。そこに「1件だけ」追加が来る。全体を組み直すほどではないので、目視で空きを探す。ところが確定済みの予約は頭の中から抜けていて、埋まっているところに入れてしまう。

冒頭の金曜の朝が、まさにこれです。

③ 時間は空いているのに、間に合わないとき

10:00〜11:00 と、11:00〜12:00。表の上ではきれいに並んでいます。重複はしていません。

でも、現場が別の場所だったら。

移動する時間がありません。訪問・出張・多店舗では、表が正しくても実行できない組み合わせが普通に起きます。これは見た目の重複ではないぶん、当日まで気づけないのが厄介なところです。

3つとも同じ1枚の表で塞ぐ

この3つは、別々の対策が要るように見えます。

でも Shiftaru(シフタル)が自動でシフトを組むときは、同じ1つの持ち方で3つとも塞いでいます。スタッフごとに「その日ぜんぶ」を1本の帯として持ち、そこに入るかどうかだけを見る。それだけです。

スタッフごとに1日を1本の帯として持ち、既存予約・移動時間を確保したうえで空きにだけ配置する

① 表が分かれていても、1人の1日として見る
シフト希望が午前・午後で別々の行に出ていても、重なりの判定は「スタッフ × 日付」でまとめて行います。行をまたいでぶつかる組み合わせは、そもそも候補になりません。

② 確定済みの予約を、先に置いてから組む
前回確定した予約や、CSV で取り込んだ既存の予約は、占有された時間として先に盤面に置かれます。その上から新しい予約を探すので、あとから足した1件が既存の予約を踏むことがありません。追加でマッチングを回しても、確定済みは守られます。

③ 予約と予約のあいだに、必ず時間をはさむ
予約どうしを隙間なく詰めません。休憩(移動)時間を確保したうえで置ける場所を探します。既定は15分で、シフト作成画面の休憩時間の設定から現場に合わせて変えられます。研修などの日時ブロックも占有時間として扱われます(こちらは移動が要らないので、はさむ時間はゼロ)。

そして、同じ日にすでに別エリアの予約が入っているスタッフは、そもそも候補から外れます。地理的に無理な1日が、組み上がる前に消えます。

入らないときは、入れない

仕組みで防ぐうえで、いちばん大事なのはここです。

無理やり詰めれば、表は埋まります。でも埋まった表は現場で破綻します。

Shiftaru は置ける場所が見つからなければ、そのお客様を未割当のまま残します。そして理由を残します。「空き時間が確保できない(予約で埋まっている)」「同日の既存予約とエリアが異なる」——なぜ入らなかったのかが結果画面から読めます

埋まらなかった1件は、失敗ではありません。

人が判断すべき1件が、浮き上がった状態です。そこだけ手で調整するか、条件をゆるめるかを決めればよく、全体を見直す必要はありません。
(未割当の原因の読み方はシフト0件のチェックリストの回で詳しく)

まとめ

木曜の夜に送った表が、金曜の朝に崩れない。

重複ゼロは、頑張って達成するものではありません。組み方の副産物として、あとから付いてくるものです。