ミフリン-サンジェオ BMR 計算ツール
現在の臨床で標準的な方法で、安静時の最低限のカロリーを求めます。ミフリン-サンジェオ式では、30歳、80 kg、180 cmの男性は完全な安静状態で1日1780 kcalです。活動量はこのあとに加えます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 重み
- 80
- 高さ
- 180
- 年齢(満年数)
- 30
- 性別
- 男性
- 基礎代謝量(kcal/日)
- 1,780 kcal/day
- 計算式
- mifflin_st_jeor
- 体重(kg)
- 80
- 身長(cm)
- 180
基礎代謝量とは、呼吸、循環、細胞の修復、体温の調節といった生命維持のしくみを保つために、体が完全な安静時に消費するエネルギーのことです。ミフリン-サンジェオの式は、この 1 日のカロリーの下限を、4 つの手軽な測定値、すなわちキログラム単位の体重、センチメートル単位の身長、年単位の年齢、生物学的な性別から推定するための、現代の臨床の標準です。食事プラン、臨床の記録、ウェルネスアプリ、研究のパイプラインに入力できる、透明性のある 1 日あたり kcal の数値が得られます。
ミフリン-サンジェオが計算するものと、その意義
ミフリン-サンジェオは、体重、身長、暦年齢、性別から、1 日あたりキロカロリー単位で基礎代謝量を推定します。男性の場合、式はキログラム単位の体重の 10 倍に、センチメートル単位の身長の 6.25 倍を加え、年齢の 5 倍を引いて 5 を足したものです。
女性の場合、同じ体重、身長、年齢の項が当てはまりますが、性別の定数は 5 を足す代わりに 161 を引きます。これらの定数は、検証コホートで観察された除脂肪量と安静時消費の平均的な差を捉えています。結果は安静時のエネルギーの下限であって、1 日の総エネルギー消費量ではありません。
運動、非運動性熱産生(NEAT)、食事誘発性熱産生、病気による需要は加算されません。それでも臨床医、栄養士、製品チームがここから始めるのは、この式が広く引用され、検証しやすく、現代の成人については古いハリス-ベネディクトの表よりも平均的に正確だからです。この数値を基準として用い、完全なカロリー予算が必要なときは活動係数や実測の摂取データを重ねてください。
計算は 4 つのスカラーに対する純粋な演算なので、同じ入力に対してどのアイソレートやブラウザセッションでも同じ値を返します。
実際の健康や製品のワークフローでの位置づけ
栄養コーチングのアプリは、オンボーディングで体格の計測値を集め、マクロを提案する前に根拠のある安静時カロリーの数値を必要とします。臨床研究のコーディネーターは、セルごとに食い違う表計算の式を広めることなく、研究対象者の計測値を二次分析のために BMR へ一括変換します。
フィットネスのプラットフォームは、ウェアラブルの消費推定の隣に透明性のある基準値を表示し、下限と 1 日の総量の違いを利用者に理解してもらいます。保険や雇用主のウェルネスポータルは、独自のエンジンを出荷せずに教育用の計算ツールをあらかじめ埋められます。単発の確認にはブラウザ経路が無料です。
体重 80 キログラム、身長 180 センチメートル、年齢 30、男性を入力し、おなじみの 1 日 1780 kcal の結果を確認してみてください。
活用例
オンボーディングのカロリー基準
食事プランを組み立てる前に、登録時に集めた体重、身長、年齢、性別をミフリン-サンジェオの BMR に変換します。
ウェルネス製品の透明性
フィットネスのダッシュボードで、活動を加味した総量の隣に、正確な BMR の式と 1 日あたり kcal の数値を表示します。
よくある質問
この式はどの単位を期待しますか?
体重はキログラム、身長はセンチメートル、年齢は年です。ポンドやインチからは、呼び出す前に変換してください。
これは 1 日の総エネルギー消費量(TDEE)ですか?
いいえ。 これは基礎代謝量のみを返します。推定 TDEE が必要な場合は、ご自身で活動係数を掛けてください。
ミフリン-サンジェオはハリス-ベネディクトとどう違いますか?
ミフリン-サンジェオは異なる係数と性別の定数を用い、現代の成人には一般に好まれます。この機能はミフリン-サンジェオのみを実装しています。
男性と女性で式はどう違いますか?
体重・身長・年齢の項は同じで、最後の定数だけが違います。男性はプラス5、女性はマイナス161で、平均的な除脂肪量と安静時消費の差を表しています。
体重や身長に0を入れるとどうなりますか?
体重や身長が0以下の場合は計算せず、入力の誤りとして扱います。性別や年齢が読み取れない場合も同じで、どの値を直せばよいかが分かるようになっています。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/health/bmr-mifflin \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"weight":80,"height":180,"age":30,"sex":"male"}'const res = await fetch("https://api.kit.forhosting.com/health/bmr-mifflin", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"weight": 80,
"height": 180,
"age": 30,
"sex": "male"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/health/bmr-mifflin",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"weight": 80,
"height": 180,
"age": 30,
"sex": "male"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/health/bmr-mifflin", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"weight":80,"height":180,"age":30,"sex":"male"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"weight":80,"height":180,"age":30,"sex":"male"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/health/bmr-mifflin", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"weight": 80,
"height": 180,
"age": 30,
"sex": "male"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "health.bmr_mifflin",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
この機能は、フィットネストラッカーの当て推量も、第三者の栄養 API も、隠れた活動係数もなしに、式をそのまま適用します。
API の呼び出し方とフィールドの解釈
ネットワークのホップもモデルの呼び出しも無作為性もないため、遅延は純粋なエッジ解析の帯に収まります。推定 TDEE が必要なときは、この結果をご自身の活動係数(例えば座りがちの 1.2 から非常に活動的な 1.9 まで)と組み合わせてください。この機能は、製品の文言や臨床ツールが何を測定したかについて正直であり続けられるよう、あえて BMR で止まります。必須フィールドを 4 つ送信してください。weight はキログラム単位の正の数、height はセンチメートル単位の正の数、age は年単位の非負の数、sex は male または female(短縮形の m、f、man、woman も受け付けます)です。weight_kg、height_cm、kg、cm、years、gender といった別名は同じパラメータに対応づけられるので、既存のフォームは名前を変えずに組み込めます。正でない weight や height はただちに invalid_input で失敗し、課金されません。sex や age が欠落または解釈できない場合も、明確なフィールド名とともに invalid_input を返します。成功時の応答は、小数第 2 位に丸めた bmr_kcal_day、正規化された sex、用いた数値の入力、適用した sex_constant、人が読める公式の文字列、そして単位ラベル kcal/day を返します。
実際の健康や製品のワークフローでの位置づけ
開発者はこの呼び出しを CRON ジョブや Webhook に組み込み、丸めで食い違う浮動小数点に敏感な乗算を再実装する代わりに、すべてのサービスがミフリン-サンジェオの唯一の定義を共有できるようにします。API 経路は成功したリクエスト 1 回あたり $0.002 で、item ごとに請求されるので、エッジ実行を賄いつつ大量のオンボーディングのスクリプトを安価に保ちます。
連携の活用例
臨床や研究のパイプライン
検証済みの単一の公式と安定した JSON 出力で、研究対象者の安静時エネルギー推定を一括計算します。
技術的な質問
料金はいくらですか?
成功した API リクエスト 1 回あたり $0.002 です。同じ計算は、このページのブラウザでも無料で動作します。
なぜリクエストが拒否されたのですか?
体重と身長は正の数でなければなりません。年齢は非負で 130 以下でなければなりません。性別は male または female(あるいは m/f/man/woman)でなければなりません。失敗は invalid_input を返し、課金されません。