目標利益に必要な販売数量の計算
目標利益達成に必要な販売数量を求める計算機です。対象期間の固定費、1単位の販売価格、その単位を製造または提供するための変動費、すべての費用を回収した後に得たい利益をご入力ください。各販売の限界利益を求め、固定費と目標利益の合計をその金額で割り、販売可能な整数単位へ切り上げます。必要数量における予想売上高、変動費、利益も表示するため、予算、事業予測、販売目標へ反映する前に計画をご確認いただけます。
無料で実行
利益目標を具体的な販売目標へ変換します
希望利益は、現場で実行できる目標に結び付けて初めて役立ちます。本計算機では、目標利益と固定費を合計し、その全額をまかなうために必要な単位当たり限界利益の数を求めます。固定費とは、家賃、管理部門の給与、保険料、キャンペーン費用など、対象となる販売数量の範囲ではおおむね変わらない支出です。単価は1回の販売で受け取る金額です。一方、単位当たり変動費は販売のたびに増え、材料費、出荷費、決済手数料、販売手数料などが含まれます。4つの値は、同じ期間かつ同じ通貨でご入力ください。「正確な必要数量」には数式上の商を表示します。「販売すべき数量」は端数を切り上げます。商品、契約、座席、案件などは通常、分割して販売できないためです。この整数値が、ご入力の前提条件で目標利益以上を達成するための実務上の最低販売数量です。
限界利益の計算式をご確認ください
計算は、販売価格から単位当たり変動費を差し引いた限界利益から始まります。各販売の限界利益は、まず固定費の回収に充てられ、固定費を回収した後は利益になります。必要数量は、固定費と目標利益の合計を単位当たり限界利益で割って求めます。したがって、目標利益を高くすると分子が増え、必要販売数量も増加します。ほかの値が同じなら、価格を上げるか変動費を下げると限界利益が増え、必要数量は減少します。価格が変動費以下の場合、本計算機は入力を受け付けません。追加販売が固定費や利益に貢献しない、または損失を拡大するため、有限の正の販売数量では固定費を回収して0以上の目標利益を達成できないからです。予想合計額には切り上げた整数数量を使用します。そのため、予想利益が目標をわずかに上回る場合がありますが、分割できない単位を販売する場合には正常な結果です。
結果は保証ではなくシナリオとしてご利用ください
結果は、販売価格と単位当たり変動費が一定であり、関連する数量範囲で固定費が変わらないという前提に基づく計画シナリオです。販売ノルマへ採用する前に、想定数量でも前提が成り立つかをご確認ください。仕入割引で変動費が下がる場合、残業で上がる場合、広い施設への移転で段階的な固定費が発生する場合、値引きで実際の平均販売価格が下がる場合があります。返品、廃棄、税金、資金調達費用、商品構成も別途検討が必要です。価格や費用の変化に対する感度を把握するため、複数の条件で計算してください。保守的なシナリオでは低い実現価格と高い単位費用を、標準シナリオでは現在の平均値を使用できます。複数商品を扱う場合、固定費を合理的に配賦できる場合だけ商品別に計算し、それ以外はより広い分析で加重平均限界利益をご使用ください。API は1回 $0.002 で、予測を自動化する前の比較にはブラウザー版もご利用いただけます。
活用例
月間販売目標を設定する
月間の間接費と希望営業利益から、販売すべき商品、契約、サービスパッケージの最低数量を求めます。
価格変更の影響を評価する
固定費、単位費用、利益目標を一定に保ち、価格ごとに必要な販売数量を比較します。
新規提供の予測を作成する
新しい商品やサービスが初期期間に導入費用を回収し、計画利益を生むために必要な販売数量を見積もります。
よくある質問
どの計算式を使用しますか?
固定費と目標利益の合計を、単価から単位当たり変動費を差し引いた金額で割ります。
必要数量を切り上げるのはなぜですか?
数式上の必要量を下回ると目標を達成できず、通常は分割できない単位を端数で販売できないためです。
目標利益を0にできますか?
はい。目標を0にすると、ご入力値に基づく整数の損益分岐数量を算出します。
変動費が販売価格を上回る場合はどうなりますか?
限界利益が正にならず、販売を増やしても固定費の回収や目標達成ができないため、入力エラーになります。
税金や返品も計算に含まれますか?
予想される単位当たりの影響を変動費へ、期間合計を固定費へ含めた場合に限り反映されます。不確実な項目は必要に応じて別に分析してください。
API の料金はいくらですか?
API は1回 $0.002 です。このページの計算機はブラウザー上でも直接ご利用いただけます。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/finance/units-for-target-profit \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"fixed_cost":12000,"price_per_unit":50,"variable_cost_per_unit":30,"target_profit":8000}'const res = await fetch("https://api.kit.forhosting.com/finance/units-for-target-profit", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"fixed_cost": 12000,
"price_per_unit": 50,
"variable_cost_per_unit": 30,
"target_profit": 8000
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/finance/units-for-target-profit",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"fixed_cost": 12000,
"price_per_unit": 50,
"variable_cost_per_unit": 30,
"target_profit": 8000
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/finance/units-for-target-profit", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"fixed_cost":12000,"price_per_unit":50,"variable_cost_per_unit":30,"target_profit":8000}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"fixed_cost":12000,"price_per_unit":50,"variable_cost_per_unit":30,"target_profit":8000}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/finance/units-for-target-profit", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"fixed_cost": 12000,
"price_per_unit": 50,
"variable_cost_per_unit": 30,
"target_profit": 8000
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "finance.units_for_target_profit",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |