計算方法と根拠
転送量の求め方
1PV あたりのフォント転送量は、容量×ファイル数に、キャッシュで再取得されない割合(1−キャッシュ率)を掛けたものです。これに月間 PV を掛け、1GB=1,000,000KB で割ると月間の転送量(GB)になります。
容量を減らす方法
web.dev『Font best practices』では、WOFF2 は WOFF より約 30% 圧縮率が高いこと、ページで使わない文字を取り除くサブセット化や unicode-range の指定で転送量を減らせること、日本語などの CJK フォントは 1 万文字を超えるグリフを含むことがあることが説明されています。削減の割合は入力で試算できます。
計算例
100KB のフォントを 2 ファイル、月 10 万 PV、キャッシュ率 50%、単価 10 円/GB なら、転送量は 100×2×100,000×0.5÷1,000,000=10GB、費用は 100 円です。
使っている式
| 名前 | やっていること | 式 |
|---|---|---|
| 減らしたあとの1ファイルの容量 | サブセット化などの削減を反映した容量です。 | effKb = kb * (1 - sub / 100) |
| 月間の転送量(結果) | 容量×ファイル数×PV×(1−キャッシュ率)を、1GB=1,000,000KB で換算した値です。 | effKb * files * pv * (1 - cache / 100) / 1000000 |
| 月間の転送費用(結果) | 月間の転送量に単価を掛けた値です。 | effKb * files * pv * (1 - cache / 100) / 1000000 * price |
| 年間の転送費用(結果) | 月間の費用を 12 倍した値です(アクセス数が一定とした場合)。 | effKb * files * pv * (1 - cache / 100) / 1000000 * price * 12 |
| 1PVあたりの平均転送量(結果) | 1ページビューあたり平均で転送されるフォントの容量です。 | effKb * files * (1 - cache / 100) |
式の記法: + - * / ^(べき乗)、かっこ、min / max / round / ceil / floor / pow / abs / sqrt、if(条件, 真のとき, 偽のとき)。round(x, 桁) は四捨五入、ceil は切り上げ、floor は切り捨てです。
設定値(定数)と出典
この計算では、税率や料金表などの外部の設定値は使っていません。数学的な定義の式だけで計算しています。
入力できる範囲
| 項目 | 範囲 | 初期値 |
|---|---|---|
| フォント1ファイルの容量 | 1〜100,000KB | 100KB |
| 読み込むフォントファイル数 | 1〜100個 | 2個 |
| 月間ページビュー | 1〜10,000,000,000PV | 100,000PV |
| キャッシュで再取得されない割合 | 0〜100% | 50% |
| サブセット化などで減らす割合 | 0〜99% | 0% |
| 転送の単価 | 0〜1,000,000円/GB | 10円/GB |
結果は、同じ条件なら本サイトのどのページでも同じ数字になります(ページの数字も、計算ツールも同じ計算の仕組みで出しています)。
ご利用にあたって
- 転送の単価は事業者・契約ごとに異なります。入力した単価による試算で、実際の請求額とは異なります。
- キャッシュ率やサブセット化の削減割合は利用者が決める見込みの値です。
- フォントのライセンスでサブセット化や自己ホスティングが許可されているかは別に確認してください。