自家焙煎カフェの焙煎ログをZapierで自動記録・在庫連動するレシピ — 生豆の使用量をスプレッドシートに自動反映し、仕入れ時期を予測通知
自家焙煎カフェでは、焙煎ログの記入や生豆の棚卸しに時間がかかります。Zapierを使えば、Googleフォームへの入力を起点に、焙煎ログの記録、在庫の更新、仕入れ時期の通知までを連動できます。この記事では、小規模店舗が約90分で始める構成と、費用を抑える運用方法を紹介します。
この記事のポイント
- 焙煎ログをGoogleフォームから自動記録する構成
- 焙煎前重量を使って生豆在庫を正しく減算する方法
- 直近7日間の平均使用量から仕入れ時期を予測する数式
- Zapierの無料プランと有料プランの使い分け
- Google Apps Script(GAS)を使った在庫更新の方法
- 小規模カフェが約90分で導入する手順
編集長の見解: 焙煎ログと在庫管理を別々に行うと、記録漏れや更新忘れが起きやすくなります。まずは1台の焙煎機と1店舗で始め、実在庫との照合を続けながら運用を整えるのが現実的です。自動化は判断を置き換えるものではなく、店主が確認しやすい記録を作る仕組みとして活用しましょう。
なぜ自家焙煎カフェの焙煎ログ管理にZapierを使うのか
自家焙煎カフェでは、焙煎日時、豆種、焙煎度、重量などを記録します。手書きや表計算ソフトへの転記では、入力の抜けや検索の手間が生じます。
主な課題は次のとおりです。
- 記録漏れや誤記が起きる
- 過去の焙煎データを探しにくい
- 生豆在庫と焙煎記録が連動しない
- スタッフごとに記録方法が変わる
Googleフォームから入力すれば、Zapierを介してGoogleスプレッドシートへ記録できます。在庫の減算や仕入れ通知まで連動させることで、毎日の確認作業を整理できます。
Zapierと他の自動化ツールを比較する
Zapierのほかにも、Make、n8n、IFTTTなどの選択肢があります。料金と設定のしやすさを比べると、次のようになります。
| ツール | 無料プランの目安 | 有料化の判断 | 難易度 | 編集部の評価 |
|---|---|---|---|---|
| Zapier | 月100タスクまで | 月額 $19.99(約 ¥3,000)から。処理数が増えたとき | 低い | 初心者向け |
| Make | 月1,000オペレーションまで | 複雑な処理を組むとき | 中程度 | コスト重視向け |
| n8n | セルフホストなら無料 | 運用環境をサービス提供企業に任せたいとき | 高い | 技術者向け |
| IFTTT | 月3アプレットまで | 単純な連携を増やすとき | 低い | 今回の用途では制約あり |
Zapierは、画面上で「きっかけ」と「実行内容」を選ぶ方式です。専門的な開発知識が少ない経営者でも、GoogleフォームやGoogleスプレッドシートを使った連携を始めやすい点が特徴です。
編集部メモ: 月50回未満の焙煎で、1回の焙煎につき1タスクに抑えられるなら、Zapierの無料プランを検討できます。Zapを分けると消費タスクが増えるため、導入前に処理数を試算しましょう。
次のセクションでは、フォーム入力から在庫通知までの全体像を確認します。
焙煎ログ自動記録の全体像
この仕組みは、次の3つで構成します。
- 入力: Googleフォームに焙煎内容を入力
- 処理: Zapierで記録や通知を実行
- 管理: Googleスプレッドシートでログと在庫を管理
スマートフォンやタブレットから、焙煎日、豆種、焙煎前重量、焙煎後重量などを入力します。
Googleフォームの新しい回答をきっかけに、Zapierが回答内容を取得します。
回答内容をGoogleスプレッドシートの焙煎ログへ追加します。
豆種に対応する在庫から、焙煎前重量を差し引きます。
在庫が設定した閾値を下回ったら、メールやSlackで通知します。
フォーム入力から在庫通知までを連動
フォームへの入力は、1回あたり1〜2分を目安にします。1日に5回焙煎する店舗なら、入力時間は合計5〜10分程度です。実際の短縮幅は、項目数や店舗の運用によって変わります。
生豆使用量の計算方法
在庫から差し引くのは、焙煎前の生豆重量です。焙煎後の重量を使うと、水分蒸発などによる重量減少が混ざるため、実際に使った生豆量と一致しません。
たとえば、生豆1,000gを焙煎した場合は、在庫から1,000gを差し引きます。焙煎後重量850gは、歩留まりの確認に使います。
| 管理項目 | 使う数値 | 目的 |
|---|---|---|
| 在庫の減算 | 焙煎前重量 | 使用した生豆量を反映 |
| 焙煎ログ | 焙煎前・焙煎後重量 | 焙煎結果を記録 |
| 歩留まり | 焙煎後重量 ÷ 焙煎前重量 × 100 | 焙煎結果を比較 |
注意: 在庫減算に焙煎後重量を使うと、豆種や焙煎度による重量減少の違いで在庫がずれる可能性があります。在庫更新には焙煎前重量を使いましょう。
この計算ルールを決めたら、次はZapierで実際の連携を組み立てます。
Zapierで作る具体的なレシピ
このレシピでは、次の3つの処理を設定します。
| Zap | きっかけ | 実行内容 | 役割 |
|---|---|---|---|
| Zap 1 | Googleフォームの新しい回答 | スプレッドシートに行を追加 | 焙煎ログを記録 |
| Zap 2 | Googleフォームの新しい回答 | 在庫の行を更新 | 生豆在庫を減算 |
| Zap 3 | 毎朝のスケジュール | メールやSlackを送信 | 仕入れ対象を通知 |
Zap 1とZap 2を1つにまとめると、1回の焙煎で消費するタスクを抑えやすくなります。Zapierのプラン上限を確認し、店舗の処理量に合う構成を選んでください。
Zap 1: 焙煎ログを記録する
きっかけ: Googleフォームの新しい回答
- Zapierで「Create Zap」を選択
- きっかけとなるアプリに「Google Forms」を指定
- 「New Response」を選択
- 焙煎記録用のGoogleフォームを接続
実行内容: Googleスプレッドシートに行を追加
- 「Google Sheets」を選択
- 「Create Spreadsheet Row」を選択
- 焙煎ログ用のスプレッドシートを接続
- フォームの回答を各列に割り当てる
| 列 | フォームの項目 | 内容 |
|---|---|---|
| A列 | 記録日時 | フォームの回答日時 |
| B列 | 焙煎日 | 焙煎を行った日 |
| C列 | 豆種 | ブラジル、エチオピアなど |
| D列 | 焙煎度 | 浅煎り、中煎り、深煎りなど |
| E列 | 焙煎前重量(g) | 生豆の重量 |
| F列 | 焙煎後重量(g) | 焙煎豆の重量 |
| G列 | 使用量(g) | 焙煎前重量を記録 |
| H列 | 歩留まり(%) | 焙煎後重量 ÷ 焙煎前重量 × 100 |
| I列 | メモ | 任意の備考 |
G列とH列は、スプレッドシートの数式で計算できます。使用量を在庫減算用の値として扱う場合は、G列に焙煎前重量を記録します。
Zap 2: 在庫を自動で減算する
Zap 2では、フォーム回答に含まれる豆種と焙煎前重量を使います。
- 「Google Sheets」の「Update Spreadsheet Row」または「Update Cell」を選択
- 在庫管理用のスプレッドシートを接続
- フォームの豆種と焙煎前重量を割り当てる
- テスト回答で対象の在庫が更新されるか確認
豆種が少ない店舗は、豆種ごとに行を固定して運用できます。豆種が多い場合は、次のGAS構成の方が管理しやすい場合があります。
Zap 3: 仕入れ通知を設定する
Zap 3は、毎朝決まった時刻に在庫を確認します。
- 「Schedule by Zapier」で「Every Day」を選択
- 毎朝の起動時刻を設定
- Googleスプレッドシートから在庫データを取得
- 「要仕入れ」フラグがある行だけを絞り込む
- GmailやSlackで通知する
在庫管理シート側で判定する場合は、在庫が閾値を下回ったときに「要仕入れ」と表示する列を作ります。Zapier側の条件を単純にできるため、運用変更にも対応しやすくなります。
在庫管理シートの予測数式
直近7日間の平均使用量は、次の数式で計算できます。
=AVERAGEIFS(焙煎ログ!G:G, 焙煎ログ!B:B, ">="&TODAY()-7, 焙煎ログ!C:C, A2)
この数式は、焙煎ログのB列が直近7日間に該当し、C列の豆種がA2と一致する行から、G列の使用量を平均します。
仕入れ予測日は、次の数式で計算します。
=IF(E2=0, "", TODAY() + (C2 - D2) / E2)
- C2: 現在庫
- D2: 仕入れ閾値
- E2: 直近7日間の平均使用量
要仕入れフラグは、次の数式で表示します。
=IF(C2 < D2, "要仕入れ", "")
編集長の見解: 焙煎量は季節やイベントで変わります。固定の仕入れ周期より、直近7日間の実績を使う方が、現在の運用に合わせて見直しやすくなります。ただし、急な注文増には対応しきれないため、安全在庫は別に確保してください。
数式で予測を作ったら、GASを使う場合との役割分担を決めます。
GASで在庫管理シートを更新する方法
豆種が多い場合や、複数の在庫処理をまとめたい場合は、Google Apps Script(GAS)を使えます。GASは、Googleサービスを自動操作するための仕組みです。
GASの基本構成
Googleフォームの回答から、豆種と焙煎前重量を取得して在庫を減算します。
function updateInventory(e) {
// フォームの回答を取得
var formResponse = e.response;
var itemResponses = formResponse.getItemResponses();
// itemResponses[1]が豆種、itemResponses[3]が焙煎前重量
var beanType = itemResponses[1].getResponse();
var beforeWeight = Number(itemResponses[3].getResponse());
// 在庫管理シートを開く
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName('在庫管理');
// 豆種に対応する行を検索
var data = sheet.getDataRange().getValues();
for (var i = 1; i < data.length; i++) {
if (data[i][0] === beanType) {
var currentStock = Number(data[i][2]);
var newStock = currentStock - beforeWeight;
sheet.getRange(i + 1, 3).setValue(newStock);
break;
}
}
}
フォームの質問順を変更すると、itemResponses[1]やitemResponses[3]の位置も変わります。フォームの構成を変えたときは、必ずテスト回答で取得項目を確認してください。
このスクリプトをフォーム送信時のトリガーに設定すると、回答の送信をきっかけに在庫を更新できます。
ZapierとGASの使い分け
| 観点 | Zapier | GAS |
|---|---|---|
| 設定 | 画面操作中心 | JavaScriptの記述が必要 |
| 月額費用 | 無料プランあり | 無料 |
| 柔軟性 | 標準連携の範囲で設定 | 細かな条件を設定しやすい |
| 在庫更新 | 行追加・行更新が中心 | 豆種検索などを実装可能 |
| 通知 | GmailやSlackと連携しやすい | 追加設定が必要 |
小規模店舗で豆種が少ない場合はZapier中心、豆種が多い場合はGAS中心という分け方が考えられます。両方で在庫を更新すると二重減算になるため、在庫更新の担当は一方に統一してください。
注意: ZapierとGASを同時に在庫更新へ使うと、同じ焙煎を二重に差し引く可能性があります。たとえば、Zapierは焙煎ログの記録、GASは在庫の更新というように役割を分けます。
次は、フォームやシートを準備してテストする導入手順です。
導入ステップ
全体の所要時間は約90分です。最初は1台の焙煎機と少数の豆種に絞ると、確認しやすくなります。
日付、豆種、焙煎度、焙煎前重量、焙煎後重量、メモを基本項目にします。
焙煎ログ用と在庫管理用のシートを作り、項目と列を対応させます。
焙煎ログの記録と在庫更新を設定し、テスト回答で動作を確認します。
平均使用量、仕入れ予測日、要仕入れフラグを設定します。
閾値を一時的に変更し、通知が届くことを確認します。
準備からテスト運用まで約90分
ステップ1: 焙煎ログの項目を整理する
| 項目 | 入力方法 | 説明 |
|---|---|---|
| 焙煎日 | 日付選択 | 焙煎を行った日 |
| 豆種 | プルダウン | 使用した生豆の種類 |
| 焙煎度 | プルダウン | 浅煎り、中煎り、深煎りなど |
| 焙煎前重量(g) | 数値入力 | 在庫から差し引く生豆重量 |
| 焙煎後重量(g) | 数値入力 | 焙煎後の焙煎豆重量 |
| メモ | 自由記述 | 1ハゼ・2ハゼなどの記録 |
入力項目を絞ると、1回あたり1〜2分を目安にできます。焙煎機のそばにタブレットを置くと、入力を忘れにくくなります。
ステップ2: Googleフォームとシートを準備する
Googleフォームでは、次の質問を作成します。
- Googleドライブから「新規 → Googleフォーム」を選択
- フォーム名を「焙煎記録」に設定
- 6つの基本項目を追加
- 回答先に焙煎ログ用のGoogleスプレッドシートを指定
在庫管理用のシートには、豆種ごとの初期在庫、現在庫、仕入れ閾値を記録します。たとえば、ブラジルの現在庫を8,500g、仕入れ予測日を2026-08-15として初期入力し、実際の在庫と日付に合わせて更新します。
ステップ3: Zapierを設定する
Zapierでは、フォームの項目をスプレッドシートの列へ割り当てます。
- 重量は数値として扱う
- 豆種名を在庫管理シートとそろえる
- 日付の形式を統一する
- テスト回答で記録と在庫更新を確認する
特に、豆種名の表記が少しでも異なると、在庫の対象行を見つけられないことがあります。プルダウンの選択肢を在庫管理シートの表記に合わせてください。
ステップ4: 在庫管理シートに数式を設定する
| 列 | 数式 | 説明 |
|---|---|---|
| E列 | =AVERAGEIFS(焙煎ログ!G:G, 焙煎ログ!B:B, ">="&TODAY()-7, 焙煎ログ!C:C, A2) | 直近7日間の平均使用量 |
| F列 | =IF(E2=0, "", (C2-D2)/E2) | 閾値に達するまでの日数 |
| G列 | =IF(F2="", "", TODAY()+F2) | 仕入れ予測日 |
| H列 | =IF(C2<D2, "要仕入れ", "") | 閾値を下回ったときの表示 |
焙煎ログの列位置を変更した場合は、数式内の列も合わせて変更します。
ステップ5: 仕入れ通知をテストする
在庫管理シートの仕入れ閾値を一時的に現在庫より高く設定します。「要仕入れ」が表示され、翌朝の通知が届くか確認してください。テスト後は、実際の発注条件に合わせて閾値を戻します。
導入後は、1週間ほど実データを確認し、入力漏れや在庫のずれを調整します。
編集部の警告: 失敗しがちな3つのパターン
失敗パターン1: 入力項目を増やしすぎる
項目が多いと入力が続きません。最初は、焙煎日、豆種、焙煎度、焙煎前重量、焙煎後重量、メモに絞ります。
| 優先度 | 項目 | 理由 |
|---|---|---|
| 必須 | 焙煎日 | 時系列で確認するため |
| 必須 | 豆種 | 在庫管理に必要 |
| 必須 | 焙煎度 | 品質を比較するため |
| 必須 | 焙煎前重量 | 在庫を減算するため |
| 必須 | 焙煎後重量 | 歩留まりを確認するため |
| 任意 | メモ | 気づきを残すため |
編集部の警告: 入力に時間がかかる場合は、項目を増やす前に不要な項目を減らしてください。自動化の目的は、記録を続けやすくすることです。
失敗パターン2: 実在庫とシートがずれる
納品、廃棄、サンプル提供などをシートに反映し忘れると、実在庫との差が広がります。
対策は次のとおりです。
- 焙煎による減算と納品による加算の入力経路を決める
- 週1回の棚卸しで、実在庫とシートを照合する
- 廃棄やサンプル用の在庫調整フォームを作る
| 調整項目 | 内容 |
|---|---|
| 豆種 | 調整する生豆 |
| 調整量(g) | 増減する数量 |
| 調整理由 | 納品、廃棄、サンプルなど |
| メモ | 任意の補足 |
失敗パターン3: 無料プランのタスク上限を超える
Zapierの無料プランは月100タスクまでです。Zap 1とZap 2を分け、1回の焙煎で2タスクを消費すると、月60回の焙煎で120タスクになります。
Zapierの有料プランは月額 $19.99(約 ¥3,000)からで、為替により変動します。実際の請求額は、契約時の料金と為替を確認してください。
| 方法 | 効果 |
|---|---|
| Zapを統合する | 1回の入力に対する処理数を抑えやすい |
| GASで在庫更新を行う | Zapierの処理をログ記録に絞りやすい |
| 有料プランを検討する | 月100タスクを超える運用に対応しやすい |
編集部メモ: 料金プランは、焙煎回数だけでなく、1回の入力で実行する処理数でも変わります。導入前に、月間の焙煎回数と1回あたりの処理数を掛けて見積もりましょう。
次は、焙煎機や店舗が増えた場合の管理方法です。
複数の焙煎機・複数店舗への拡張方法
複数の焙煎機がある場合
Googleフォームに「焙煎機」の項目を追加します。焙煎機ごとの歩留まりや使用量を、焙煎ログから確認できます。
複数店舗がある場合
フォームに「店舗」の項目を追加し、店舗ごとの在庫を分けて管理します。最初は店舗ごとにシートを分けると、設定を確認しやすくなります。
| 方法 | メリット | 注意点 |
|---|---|---|
| 店舗ごとにシートを分ける | 管理がシンプル | シート数が増える |
| 1つのシートで管理する | 全店舗を比較しやすい | 数式が複雑になりやすい |
焙煎ログを分析する
| 分析内容 | 方法 |
|---|---|
| 豆種ごとの歩留まり | 豆種別の平均を集計 |
| 焙煎度ごとの使用量 | 焙煎度別に使用量を集計 |
| 季節ごとの使用量 | 月別に使用量を集計 |
| 焙煎機ごとの違い | 焙煎機別に歩留まりを比較 |
複数台・複数店舗への拡張では、入力項目を増やしすぎないことが重要です。まずは店舗単位で在庫の精度を確認してから、集計項目を追加してください。
よくある質問
Q1: Zapierの無料プランで足りるか?
Zapierの無料プランは月100タスクまでです。月50回未満の焙煎で、1回あたり1タスクに抑えられるなら、無料プランを検討できます。Zapを分ける場合は、月50回の焙煎でも100タスクに達します。
有料プランは月額 $19.99(約 ¥3,000)からです。請求額は契約時の料金と為替を確認してください。
Q2: 複数の焙煎機に対応できるか?
フォームに「焙煎機」の項目を追加します。ログに焙煎機名が残るため、機械ごとの使用量や歩留まりを比較できます。
Q3: 別の在庫管理ツールと連携できるか?
Zapierは、Googleスプレッドシート以外の表計算・データベースサービスとも連携できます。利用中のサービスが対応しているか、公式の連携一覧を確認してください。未対応の場合は、WebhooksやAPIを使う方法もあります。
Q4: スタッフ全員で共有できるか?
GoogleフォームとGoogleスプレッドシートの共有設定を行えば、スタッフが同じフォームへ入力できます。入力者を記録したい場合は、フォームに氏名の項目を追加します。
Q5: 仕入れ通知の閾値はどう決めるか?
閾値は、納品までの日数に1日あたりの平均使用量を掛け、さらに安全在庫を加えて決めます。たとえば、納品まで5日、平均使用量が1日300g、安全在庫を3日分の900gとする場合、2,400g程度が目安です。
Q6: データをバックアップする方法は?
GoogleスプレッドシートはGoogleドライブに保存されます。誤削除に備えるなら、定期的にExcel形式で書き出し、Googleドライブのバージョン履歴も確認してください。
月額費用の試算
次の条件で試算します。
- 焙煎回数: 月60回
- 豆種: 5種類
- スタッフ: 2名
| 項目 | 無料プラン | 有料プラン |
|---|---|---|
| Zapier | ¥0 / 月 | 約 ¥3,000 / 月 |
| Googleフォーム | ¥0 / 月 | ¥0 / 月 |
| Googleスプレッドシート | ¥0 / 月 | ¥0 / 月 |
| Gmail | ¥0 / 月 | ¥0 / 月 |
| 合計 | ¥0 / 月 | 約 ¥3,000 / 月 |
Zapを2つに分けると、月60回で120タスクです。無料プランの月100タスクを超えるため、Zapの統合やGASの利用を検討します。
有料プランの表示価格は月額 $19.99(約 ¥3,000)です。円換算額は為替で変わるため、契約前にZapier公式の料金表示を確認してください。
編集長の見解: 月額費用だけでなく、記録と棚卸しにかかる時間も含めて判断しましょう。まず無料構成で入力と在庫更新の流れを試し、処理数が増えた段階で有料プランやGASを比較すると、店舗の規模に合う選択をしやすくなります。
次のまとめで、導入前に確認する項目を整理します。
まとめ
Zapier、Googleフォーム、Googleスプレッドシートを組み合わせると、焙煎ログの記録と生豆在庫の管理を連動できます。
| 確認項目 | 導入前の状態 | 導入後の目安 |
|---|---|---|
| 焙煎ログの記録時間 | 1日30分程度かかる | 1日5分程度を目安にする |
| 在庫管理 | 週1回の棚卸しが必要 | 毎日の記録と週1回の照合を併用 |
| 仕入れ時期 | 経験と記憶に頼る | 平均使用量から予測 |
| 記録の抜け漏れ | 起きる可能性がある | 入力ルールで減らす |
導入手順は次の5段階です。
- 焙煎ログの項目を整理する
- Googleフォームとスプレッドシートを準備する
- ZapierまたはGASで連携する
- 在庫の予測数式を設定する
- 通知をテストし、週1回は実在庫と照合する
まずは1台の焙煎機と少数の豆種で試し、入力漏れや在庫のずれを確認してください。店舗の運用に合うことを確かめてから、複数台・複数店舗へ広げます。
豆種、焙煎度、焙煎前重量、焙煎後重量を入力します。
ZapierまたはGASで、焙煎ログを記録し、在庫を減算します。
在庫管理シートの平均使用量と要仕入れフラグを確認します。
通知内容と実在庫を照合し、必要に応じて発注します。
毎日の入力から仕入れ確認まで
自動化は、記録の手間を減らし、経営者が在庫と品質を確認しやすくするための手段です。実在庫との照合を続けながら、無理なく運用してください。
関連記事
- ZapierでJiraからSlackへ自動通知するレシピ — タスク管理の属人化を防ぐ方法
- ZapierでCalendlyとNotionを連携するレシピ — 予約情報を自動で台帳化する方法
- GASでGoogleドライブのファイルを自動バックアップする方法
出典・参考情報
- Zapier公式サイト: 料金プランと機能の詳細(https://zapier.com/pricing)
- Googleフォームのヘルプ: フォームの作成と管理(https://support.google.com/docs/answer/6281888)
- Googleスプレッドシートの関数リスト: AVERAGEIFS関数、IF関数などのリファレンス(https://support.google.com/docs/table/25273)
- Google Apps Scriptのドキュメント: スプレッドシートサービスのリファレンス(https://developers.google.com/apps-script/reference/spreadsheet)
- Make公式サイト: 料金プラン(https://www.make.com/en/pricing)
- n8n公式サイト: 料金プラン(https://n8n.io/pricing/)
- IFTTT公式サイト: 料金プラン(https://ifttt.com/plans)
Mira / AI経営ラボ 編集長