2つのレシピの1人分の費用を比較
合計費用が安くても、1人分の費用まで安いとは限りません。この計算ツールは、各レシピの合計費用をできあがる人数で割り、規模が異なる2つのレシピを同じ条件で比較します。符号付きの差額、差額の絶対値、どちらが安いかも表示します。日々の献立、ケータリングの見積もり、メニュー選定など、仕込み量が異なる比較にお使いいただけます。有意義な結果を得るため、費用は同じ通貨で入力し、1人分の定義もそろえてください。
無料で実行
比較できる合計費用と人数をご入力ください
最初に、レシピAとレシピBについて、1回の仕込み全体にかかる費用をご入力ください。両方の合計には、同じ種類の支出を含める必要があります。たとえば、一方には容器代を含め、もう一方には材料費しか含めないという入力は避けてください。次に、それぞれの仕込みから実際に何人分ができるかをご入力ください。1人分は、一皿、一容器、一切れなどでも構いませんが、2つのレシピで同じ基準をお使いください。人数は必ず0より大きい値にしてください。0では割り算ができず、有効な単価を算出できません。寄付された材料やテストのために合計費用を0にすることはできますが、負の費用は入力できません。2つの金額には同じ通貨をお使いください。本ツールは通貨換算を行わず、通貨単位も自動判定しません。計画上必要であれば、小数の費用や人数もご利用いただけます。
1人分の費用と差額をご確認ください
本ツールは、レシピAの合計費用を人数で割り、同じ計算をレシピBにも行います。このように単位をそろえることで、仕込み量が違っても公平に比べられます。符号付き差額は、レシピAの1人分の費用からレシピBの値を引いて求めます。負の値ならAが安く、正の値ならBが安く、0なら表示精度の範囲で同額です。絶対差額は、符号を除いた価格差の大きさを示します。安いレシピの項目にはA、B、または同額が明示されるため、自動処理側で符号を解釈する必要がありません。結果は浮動小数点の不要な誤差を抑えつつ実用的な精度を保つため、12桁の小数で一貫して丸められます。確認や記録がしやすいように、入力した合計費用と人数も正規化した値と一緒に返されます。
単価の比較を実際の判断にお役立てください
1人分の費用は重要な基準ですが、実際の事情とあわせてご判断ください。わずかに安いレシピでも、調理時間が長い、専用機器が必要、保管費用が高い、材料の日持ちが短いといった場合があります。また、人数は表示上の理想的な分量ではなく、実際に提供する量を基準にしてください。ケータリングでは、予定している一皿の量で比較し、見積もりに必要な費用項目を両方に含めてください。ご家庭では、異なる店舗の材料、異なる仕込み量、手作り品と調理済み品などを比較できます。メニュー開発では、絶対差額に予想販売数を掛けると選択による影響を概算できますが、その際には廃棄も別途考慮してください。後から条件を確認できるよう、結果とともに入力値を保存することをおすすめします。計算は決定的でネットワークを使わず、同じ入力には常に同じ結果を返します。
活用例
ケータリング用レシピの比較
仕込み量が異なる2案を1人分に換算し、見積もりに適した経済的な方をお選びいただけます。
ご家庭の食費計画
できあがる人数が異なる手作り品、調理済み品、代替レシピを同じ基準で比較できます。
メニュー候補の評価
作業時間、廃棄、利益率を検討する前に、1人分の価格差を把握できます。
よくある質問
比較の利用料金はいくらですか?
APIは1回あたり$0.002です。ブラウザー版の計算ツールはこのページでご利用いただけます。
差額はどのように計算されますか?
レシピAの1人分の費用から、レシピBの1人分の費用を引いて符号付き差額を求めます。
2つのレシピの仕込み量が違ってもよいですか?
はい。仕込み量が異なる場合こそ、合計費用ではなく1人分の費用で比べることが重要です。
人数が0または負の場合はどうなりますか?
1人分の費用には正の人数が必要なため、無効な入力としてエラーを返します。
通貨換算はできますか?
いいえ。正しく比較するため、2つの合計費用は同じ通貨でご入力ください。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/math/recipe-cost-per-serving-compare \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"recipe_a_total_cost":24,"recipe_a_servings":8,"recipe_b_total_cost":18,"recipe_b_servings":4}'const res = await fetch("https://api.kit.forhosting.com/math/recipe-cost-per-serving-compare", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"recipe_a_total_cost": 24,
"recipe_a_servings": 8,
"recipe_b_total_cost": 18,
"recipe_b_servings": 4
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/recipe-cost-per-serving-compare",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"recipe_a_total_cost": 24,
"recipe_a_servings": 8,
"recipe_b_total_cost": 18,
"recipe_b_servings": 4
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/recipe-cost-per-serving-compare", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"recipe_a_total_cost":24,"recipe_a_servings":8,"recipe_b_total_cost":18,"recipe_b_servings":4}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"recipe_a_total_cost":24,"recipe_a_servings":8,"recipe_b_total_cost":18,"recipe_b_servings":4}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/recipe-cost-per-serving-compare", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"recipe_a_total_cost": 24,
"recipe_a_servings": 8,
"recipe_b_total_cost": 18,
"recipe_b_servings": 4
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.recipe_cost_per_serving_compare",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |