月次MRR成長率計算ツール
MRR成長率計算ツールは、月間経常収益の増減を比較しやすいパーセントにまとめます。月初MRRに加え、新規MRR、拡張MRR、縮小MRR、解約MRRをご入力ください。増加額、減少額、純増減額、月末MRR、前月比成長率を表示します。すべての内訳が残るため、財務、成長戦略、経営の各担当者は、根拠のない比率に頼らず計算内容を確認できます。
無料で実行
月次MRRの増減を正しく組み立てます
まず、月初時点で有効な経常収益を設定します。期間中に獲得した顧客から生じた新規MRRと、既存顧客による上位プランへの変更、席数追加、追加機能の購入、継続利用量の増加から生じた拡張MRRを加算します。次に、契約を継続しながら利用規模を縮小した顧客の縮小MRRと、契約終了による解約MRRを差し引きます。本ツールはこの順序を固定して計算し、月末MRRと純増減額の両方を示します。すべての金額は同じ通貨で統一し、経常収益だけをご入力ください。初期設定料、導入支援料、機器代金、単発サービス料、月額へ換算していない年間契約額は対象外です。また、集計時点の規則も統一する必要があります。たとえば月初MRRを初日の午前0時に測る場合、月内の変更をすべて計上した後、対応する時点で月末MRRを測定してください。定義を一貫させることで、月ごとの比較に意味が生まれ、計上時期の差を事業成果と誤認することを防げます。
成長率と各要因を読み解きます
MRRの純増減額は、新規MRRと拡張MRRの合計から、縮小MRRと解約MRRを差し引いた値です。月次MRR成長率は、この純増減額を月初MRRで割り、100を掛けて求めます。正の値なら経常収益が月初を上回り、0なら増加と減少が完全に相殺され、負の値なら縮小と解約が新規獲得と拡張を上回ったことを表します。内訳を見ると、同じ成長率でも事業の状態が大きく異なる理由が分かります。新規顧客の獲得を主因として伸びる会社もあれば、既存顧客のアップグレードを主因とする会社もあります。同様に、横ばいの月は動きが少なかった場合も、多額の増加と同額の減少が発生した場合もあり得ます。月初MRRは0より大きい必要があります。0を基準とする変化率は数学的に定義できないためです。本ツールは任意の比率でこの制約を隠しません。立ち上げ直後で月初MRRがない場合は、月末MRRの絶対額を報告し、正の月初残高ができてから比率比較を始めてください。
報告と計画に結果を活用します
月次報告では、成長率をMRRの増減内訳と並べて示し、最終的なパーセントだけでなく、その要因も確認できるようにしてください。会計規則、顧客の締め時点、通貨換算、返金や値引きの扱いを統一し、複数の連続する月を比較します。単月の好調または不調を持続的な傾向とみなすより、この推移の方が判断に役立ちます。内訳はシナリオ計画にも利用できます。他の要因を一定にしたまま、新規獲得目標、拡張施策、ダウングレード水準、解約削減が月末MRRに与える影響を試せます。この指標を売上継続率と混同しないでください。MRR成長率は新規顧客の収益を含みますが、売上継続率は通常、新規顧客を除外し、月初の顧客群における変化を測ります。また、拡張を考慮しない総売上継続率とも異なります。特に契約が遡って変更された場合や複数通貨を扱う場合は、提示前に入力値を契約台帳と照合してください。ブラウザーは簡単な分析に適しており、自動処理では1回$0.002でAPIを呼び出し、期間ごとの内訳を保存できます。
活用例
月次の財務締めを準備する
月初残高と各増減区分を照合し、月末MRRと検証可能な成長率を算出します。
成長要因を経営陣へ説明する
経常収益の変化が新規獲得、拡張、縮小、解約のどれによるものかを示します。
事業計画をモデル化する
個別のMRR前提を変更し、各シナリオが示す成長率と月末残高を確認します。
よくある質問
MRR成長率の計算式を教えてください?
新規MRRと拡張MRRを加算し、縮小MRRと解約MRRを差し引きます。その純増減額を月初MRRで割り、100を掛けます。
月初MRRが0より大きい必要があるのはなぜですか?
成長率では月初MRRを分母にします。分母が0では比率を定義できないため、本ツールはその入力を受け付けません。
新規MRRに単発売上は含まれますか?
含まれません。新規顧客からの月額経常収益だけを含め、導入料、サービス料、機器代金などの単発請求は除外してください。
縮小MRRと解約MRRはどう違いますか?
縮小MRRは、顧客が契約を継続しながら支払額を減らした場合の減収です。解約MRRは契約終了によって失われる経常収益です。
MRR成長率と売上継続率は同じですか?
異なります。MRR成長率は新規顧客を含みます。売上継続率は通常、新規顧客を除き、月初の顧客群における拡張、縮小、解約を測ります。
APIでの計算料金はいくらですか?
APIは1回$0.002です。同じ決定論的な計算をブラウザーで実行し、すばやく対話的に確認することもできます。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/finance/mrr-growth \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"starting_mrr":100000,"new_mrr":12000,"expansion_mrr":5000,"contraction_mrr":3000,"churned_mrr":4000}'const res = await fetch("https://api.kit.forhosting.com/finance/mrr-growth", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"starting_mrr": 100000,
"new_mrr": 12000,
"expansion_mrr": 5000,
"contraction_mrr": 3000,
"churned_mrr": 4000
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/finance/mrr-growth",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"starting_mrr": 100000,
"new_mrr": 12000,
"expansion_mrr": 5000,
"contraction_mrr": 3000,
"churned_mrr": 4000
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/finance/mrr-growth", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"starting_mrr":100000,"new_mrr":12000,"expansion_mrr":5000,"contraction_mrr":3000,"churned_mrr":4000}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"starting_mrr":100000,"new_mrr":12000,"expansion_mrr":5000,"contraction_mrr":3000,"churned_mrr":4000}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/finance/mrr-growth", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"starting_mrr": 100000,
"new_mrr": 12000,
"expansion_mrr": 5000,
"contraction_mrr": 3000,
"churned_mrr": 4000
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "finance.mrr_growth",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |