レシピ一括原価計算
4人分の仕込みで材料4つにそれぞれ数量と単価を入れると、合計は7.7、1人分は1.925(お使いの通貨)になります。同じ単価を使い回し、量だけ変えて仕込みを増やせます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 人前
- 4
- 材料の数
- 4
- 総費用
- 7.7
- 1食分あたりの費用
- 1.925
家庭の調理者、ミールプレップ事業者、ケータリング厨房、フードコストを学ぶ方は、同じ実務的な問いに素早く答えたいと考えます。このレシピ一括原価計算機は、各材料を数量と単価として受け取り、行原価を掛け合わせ、バッチ合計を求め、正の提供人数で割ります。メニュー価格の設定、レシピ比較、買い物前の予算確定に使えます。あらかじめ合計した行金額だけを受け取る一人前ツールとは異なり、数量と単価を分けて持つため、パントリー価格を複数レシピで再利用し、量だけを変えられます。
まとめて原価を出すと役立つ場面
独立ケータラーやゴーストキッチンは、付箋の合計ではなく実数量と仕入単価からトレイや配達メニューを価格付けします。調理学生とフードコスト講座には、ゼロ人数を拒否し、無限大やサイレントな NaN を成功と誤判定させない決定論的な正解が必要です。
calculate recipe batch total cost を狙うレシピブログやSEOランディングは、同じ純粋モジュール上で有料自動化とバイト一致する無料ブラウザ経路の恩恵を受けます。無効入力は課金されません。
活用例
ケータリングとトレイの価格設定
フルトレイの各材料について数量と仕入単価を入力し、servings を皿数に設定して、バッチ合計原価と一人分を見積もります。
ミールプレップとスケールしたレシピ
パントリー単価表を複数レシピで再利用し、数量と人数だけを変え、家庭サイズから大量仕込みへ移したときのフードコストを比較します。
よくある質問
通貨換算は含まれますか?
本機能は数量と単価の乗算と人数での除算のみを行い、通貨や単位系は変換しません。
1人分の原価はどう計算しますか?
材料ごとに数量と単価を掛け、その行を合計して仕込み全体の原価を出し、人数分で割ります。合計7.7を4人分で割ると1.925です。
同じ単価を複数のレシピで使えますか?
使えます。数量と単価を分けて入れるので、手持ちの単価表はそのままに、数量と人数だけを変えられます。たとえば4皿分から40皿分に増やすときに便利です。
材料ごとに名前を付ける必要はありますか?
必要ありません。名前は任意の見出しで計算には影響せず、買い物リストやメニューと並べたときに各行を読みやすくするためのものです。
数量はどの単位で入れますか?
材料を買ったり量ったりする単位で入れます。小麦粉ならキログラム、牛乳ならリットル、卵なら個数です。単価はその単位1つ分の価格にしてください。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/cook/batch-recipe-cost \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"ingredients":[{"name":"Flour","quantity":2,"unit_cost":1.25},{"name":"Eggs","quantity":6,"unit_cost":0.35},{"name":"Milk","quantity":1,"unit_cost":1.1},{"name":"Butter","quantity":0.25,"unit_cost":8}],"servings":4}'const res = await fetch("https://api.kit.forhosting.com/cook/batch-recipe-cost", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"ingredients": [
{
"name": "Flour",
"quantity": 2,
"unit_cost": 1.25
},
{
"name": "Eggs",
"quantity": 6,
"unit_cost": 0.35
},
{
"name": "Milk",
"quantity": 1,
"unit_cost": 1.1
},
{
"name": "Butter",
"quantity": 0.25,
"unit_cost": 8
}
],
"servings": 4
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/cook/batch-recipe-cost",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"ingredients": [
{
"name": "Flour",
"quantity": 2,
"unit_cost": 1.25
},
{
"name": "Eggs",
"quantity": 6,
"unit_cost": 0.35
},
{
"name": "Milk",
"quantity": 1,
"unit_cost": 1.1
},
{
"name": "Butter",
"quantity": 0.25,
"unit_cost": 8
}
],
"servings": 4
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/cook/batch-recipe-cost", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"ingredients":[{"name":"Flour","quantity":2,"unit_cost":1.25},{"name":"Eggs","quantity":6,"unit_cost":0.35},{"name":"Milk","quantity":1,"unit_cost":1.1},{"name":"Butter","quantity":0.25,"unit_cost":8}],"servings":4}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"ingredients":[{"name":"Flour","quantity":2,"unit_cost":1.25},{"name":"Eggs","quantity":6,"unit_cost":0.35},{"name":"Milk","quantity":1,"unit_cost":1.1},{"name":"Butter","quantity":0.25,"unit_cost":8}],"servings":4}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/cook/batch-recipe-cost", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"ingredients": [
{
"name": "Flour",
"quantity": 2,
"unit_cost": 1.25
},
{
"name": "Eggs",
"quantity": 6,
"unit_cost": 0.35
},
{
"name": "Milk",
"quantity": 1,
"unit_cost": 1.1
},
{
"name": "Butter",
"quantity": 0.25,
"unit_cost": 8
}
],
"servings": 4
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "cook.batch_recipe_cost",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
検証失敗(とくに提供人数がゼロ以下)は invalid_input を返し、課金されません。
数量と単価からバッチ原価を組み立てる方法
レシピ一括の合計は記憶から打ち込んだ単一の数字ではなく、調理全体で使う各材料行の和です。任意の name ラベルは計算に影響せず、買い物リストやメニューカードの横に結果を並べるときに行一覧を読みやすくするだけです。空の材料リストと200行超は拒否され、暴走した取り込みがワーカー予算を圧迫しないようにしています。成功時に返る formula 文字列は、行原価=数量×単価、合計=行原価の和、一人分=合計÷人数、という三段階の契約を再掲します。各行では、購入・計量する単位(小麦粉のキログラム、牛乳のリットル、卵の個数、油の本数など)で有限の非負の quantity と、同一通貨におけるその単位1つ分の有限の非負 unit_cost を指定します。本機能は quantity に unit_cost を掛けてその行の line_cost を求め、すべての line_cost を足してバッチ全体の total_cost を得ます。一人分の原価は total_cost を servings で割った値なので、同じ買い物リストをケータリングのトレイ原価としても皿単価としても、価格を再入力せずに表せます。quantity と unit_cost の積はハンドラ内で計算されるため、手計算で先に掛けたり、空セルをゼロ扱いしたまま人数で割る表計算式のリスクを避けられます。
入力契約、提供人数の規則、応答の形
servings は厳密にゼロより大きい有限数です。皿が出ないバッチでは一人分原価を定義できないためです。例:小麦粉2単位を1.25、卵6を0.35、牛乳1を1.1、バター0.25を8、人数4のとき、行原価は2.5、2.1、1.1、2、バッチ合計7.7、一人分1.925です。本計算機は通貨換算や単位系変換を行わず、送られた数の乗除のみを行います。必須フィールドが2つの JSON 本体を POST します。ingredients は空でないオブジェクト配列で、各オブジェクトは有限の非負数 quantity と unit_cost を含み、任意で name 文字列を付けられます。ゼロおよび負値は invalid_input で失敗します。配列の別名は items、list、lines、人数の別名は portions、people、yield、serves を受け付けるので、表計算やフォームビルダーは列名を保てます。成功時は ingredient_count と、各行の index、name、quantity、unit_cost、line_cost を持つ正規化済み ingredients 配列、安定した JSON のための丸めた servings、total_cost、cost_per_serving、formula 文字列、UI バナー向けの短い message、各乗算と最終除算をたどる steps 配列を返します。欠落フィールド、非有限値、絶対上限外の数量・単価は課金なしで検証失敗します。すべての unit_cost で通貨を1つに揃えてください。
レシピ一括原価APIが実務で効く場面
ミールプレップブランドや学校給食は、基本レシピを4皿から40皿へスケールするとき、同じ unit_cost 表を再利用しつつ数量だけを差し替え、バッチ原価と一人分を追跡します。買い物予算アプリはバーコードで単価を解決したあとAPIを呼び、予定人数の横に total_cost と cost_per_serving を保存できます。
連携の活用例
調理クラスとLMS採点
ゼロ人数を invalid_input として拒否し、無限大を返さない決定論的な合計と一人分でフードコスト課題を採点します。
技術的な質問
材料からレシピ一括の合計原価をどう計算しますか?
quantity と unit_cost(任意の name)を持つ ingredients オブジェクト配列と、正の servings を送ってください。API は各行を掛け、バッチを合計し、total_cost と cost_per_serving を返します。
servings がゼロまたは負の場合はどうなりますか?
タスクは invalid_input で失敗します。正でない提供人数では一人分原価を定義できず、課金されません。
先に合計した行原価を入れますか、数量と単価を入れますか?
quantity と unit_cost を別々に入れてください。計算機は各 line_cost を quantity × unit_cost として組み立て、手で先に掛けずに単価を複数レシピで再利用できます。
レシピ一括原価計算機の利用料金はいくらですか?
ブラウザ版は無料です。API は前払い KIT 残高で成功呼び出しごとに $0.002 です。無効入力は課金されません。