100gあたり価格計算機
1.5で500 gの袋と3で2000 gの袋は、100 gあたり0.3と0.15なので、値札が高くても大袋のほうが得です。各商品の棚の価格と正味の重さを入れると、最も安いものが目立つように表示されます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
処理はブラウザ内で完結します。ファイルは送信されません。無料でご利用いただけます。
スーパーの棚では同じ容量のパックが並ぶことは少なく、五百グラムのストアブランド、四百グラムのプレミアムパウチ、二キロのまとめ買い袋はそれぞれ異なる棚価格を示し、安い値札が必ずしもお得とは限りません。この百グラムあたり価格計算機は、各選択肢を同じ質量基準に正規化し、商品ごとの明確な単価を返し、百グラムあたりコストで最安の選択を強調します。買い物客、献立プランナー、価格比較アプリが暗算なしで判断できます。正の質量がなければ単価は定義されないためです。
送信するもの:商品、価格、グラム単位の重量
各エントリは非負の棚価格と正の正味重量(グラム)を持つオブジェクトです。重量は外箱ではなく、可食または販売可能な正味質量(グラム)である必要があります。任意の name、label、title、product、sku はレシートやUI表用の読みやすい行ラベルになります。
名前を省略すると、エンジンはリスト順に商品1、商品2…を割り当てます。少なくとも1件の商品が必要で、空配列は除算前に検証で失敗します。通常の棚比較では返金を単価として使わないため、負の価格は拒否されます。
バーコードフィードが質量を空や反転のままにする古典的な落とし穴です。極端に大きな価格や重量は上限があり、Worker isolate の計算が有界に保たれます。すべての検証は単価計算の前に走り、不正なリストが半分埋まった行を返すことはありません。
キログラムは呼び出し前に千倍してご自身で変換してください。この製品はSEOの明確さと安定した契約のため、意図的にグラム基準のみです。
買い物での使い方と計算の範囲
通路に立っているとき、週の買い物を計画するとき、別アプリを入れずに単価リテラシーを教えるときは、ブラウザ内の無料100gあたり価格計算機を呼び出してください。検証失敗はエンジン拒否後に残高を消費しません。すべての棚価格が既に同一通貨のときだけ通貨換算と組み合わせてください。
この機能は為替変換や税、マルチバイ、ロイヤルティ割引を適用しません。通常の買い物サイズのリストを保ち、公開の商品上限が isolate ランタイムを守りつつフルカート比較もカバーします。
入力ソースは他のKIT parse アイテムと同じ保持ルールに従い、アルゴリズムはネットワーク・モデル・ファイルシステムなしで完全に決定的なため、結果は継続的インテグレーションのフィクスチャに固定して安全です。製品の約束は百グラム基準の透明な単価比較であり、競合ページのライブスクレイピングではありません。
その意図は別の検索語とエンジンを持つ価格抽出・監視ツールに属します。
活用例
スーパーの通路での判断
買い物客が棚価格付きの二〜三サイズを入力すると、カートを満たす前に100グラムあたりで本当に最安の選択肢が一瞬で分かります。
献立計画とまとめ買い
家庭の料理人とまとめ買いの方は、週のメニューやパントリー補充で、家族用パックと小さなパウチを公平な質量基準で比較します。
よくある質問
重量がゼロまたは負の場合はどうなりますか?
正の質量がなければ100gあたり価格は未定義のため、ゼロと負の重量は拒否され課金されません。
商品名は必要ですか?
名前は任意です。 name(または label/title)を省略すると、エンジンは行を商品1、商品2…とラベル付けし、単価は計算します。
100グラムあたりの価格はどう計算しますか?
棚の価格をグラム単位の重さで割り、100を掛けます。1.5で500 gの商品なら100 gあたり0.3になり、ほかの大きさの商品と比べられます。
重さがキログラムで書かれているときは?
先に1000を掛けてグラムにしてから入力します。2 kgの袋なら2000 gです。すべての商品をグラムでそろえることで、公平に比べられます。
2つの商品が同じ単価のときはどうなりますか?
100 gあたりの価格がまったく同じ場合は、リストで先に入れた商品が最安として表示されます。例では2つのパスタが同じ0.3です。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/life/price-per-100g \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"products":[{"name":"Store brand pasta","price":1.5,"weight_g":500},{"name":"Premium pasta","price":1.2,"weight_g":400},{"name":"Bulk pasta","price":3,"weight_g":2000}]}'const res = await fetch("https://api.kit.forhosting.com/life/price-per-100g", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"products": [
{
"name": "Store brand pasta",
"price": 1.5,
"weight_g": 500
},
{
"name": "Premium pasta",
"price": 1.2,
"weight_g": 400
},
{
"name": "Bulk pasta",
"price": 3,
"weight_g": 2000
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/life/price-per-100g",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"products": [
{
"name": "Store brand pasta",
"price": 1.5,
"weight_g": 500
},
{
"name": "Premium pasta",
"price": 1.2,
"weight_g": 400
},
{
"name": "Bulk pasta",
"price": 3,
"weight_g": 2000
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/life/price-per-100g", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"products":[{"name":"Store brand pasta","price":1.5,"weight_g":500},{"name":"Premium pasta","price":1.2,"weight_g":400},{"name":"Bulk pasta","price":3,"weight_g":2000}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"products":[{"name":"Store brand pasta","price":1.5,"weight_g":500},{"name":"Premium pasta","price":1.2,"weight_g":400},{"name":"Bulk pasta","price":3,"weight_g":2000}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/life/price-per-100g", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"products": [
{
"name": "Store brand pasta",
"price": 1.5,
"weight_g": 500
},
{
"name": "Premium pasta",
"price": 1.2,
"weight_g": 400
},
{
"name": "Bulk pasta",
"price": 3,
"weight_g": 2000
}
]
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "life.price_per_100g",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
エンジンは完全に決定的な純粋数学で、同一の商品リストは常に同一のJSONを生成し、ネットワーク呼び出し、乱数シード、壁時計のずれはありません。ゼロまたは負の重量は invalid_input で失敗します。
送信するもの:商品、価格、グラム単位の重量
必須の products 配列を含むJSONボディを送ってください。クライアントが別のフィールド名を既に使っている場合、別名 items、options、list、goods も受け付けます。価格は数値または数値文字列でよく、別名 cost、amount、shelf_price は同じ値に対応し、レジやカタログシステムが慣れたキーを保てます。別名 weight、grams、mass_g、net_weight_g、weight_grams をサポートします。ゼロ重量と負の重量は、重量が正のグラムでなければならないというメッセージ付きで invalid_input を発生させます。
100gあたり価格の計算方法と最安オプションの選び方
各商品についてエンジンは小売でおなじみの式を適用します。百グラムあたり価格は棚価格をグラム重量で割り、百を掛けたものです。二パックが完全に同点なら、リストの先のエントリが勝ち、結果は完全に決定的です。単一商品リストでもその商品を cheapest として節約ゼロで返し、常に同じ応答形を求めるパイプラインに有用です。棚価格はレシート風に小数点以下二桁で返し、weight_g は送信した検証済みの正の数です。各結果行にはゼロ始まりのインデックス、表示名、price、weight_g、price_per_100g が含まれます。cheapest オブジェクトは最も低い price_per_100g の行です。二件以上あるとき、savings_vs_most_expensive_per_100g は同じ百グラム基準で最安が最高価な単価よりどれだけ低いかを示し、「百グラムあたりこの額節約」のようなバッジに便利です。method フィールドは常に price_per_100g、unit は常に per_100g で、下流コードが形を嗅がずに分岐できます。商品欠落、空リスト、price や weight の欠落、非数値フィールド、ゼロ重量、負の重量はすべて invalid_input で失敗し、拒否後は課金されません。
APIの使い方、料金、買い物ワークフロー、実用上の限界
献立サービス、食料品ボット、予算コーチ、まとめ買いヘルパー、カタログ正規化が $0.002 ごとの成功アイテムで安定したKIT契約を必要とするときはプリペイドAPIを使います。SDKを出荷する作者は products 配列を比較表に写し、cheapest.name と cheapest.price_per_100g を要約バナーに出せます。
連携の活用例
家計アプリと食料品ボット
支出アプリとチャットボットは、単価計算とゼロ重量ガードを各クライアント言語で再実装せず、安定したプリペイドエンドポイントを呼び出します。
技術的な質問
複数商品の100gあたり価格はどう計算しますか?
products 配列付きのJSONを送ってください。各項目に price と weight_g(グラム)が必要です。応答は各行の price_per_100g と、最低単価の cheapest オブジェクトを一覧します。
100gあたり価格計算機は無料ですか?
ブラウザツールは端末上で無料です。API呼び出しは成功アイテムごとに $0.002 のプリペイドKIT残高を使い、検証失敗は課金されません。
二商品の単価が同じ場合は?
その最小 price_per_100g を持つリスト内の最初の商品が cheapest として返され、同点は決定的に解決されます。