Cloud Firestore の課金について

このドキュメントでは、Cloud Firestore の料金の詳細について説明します。また、Cloud Firestore での利用額を制限および監視する方法についても説明します。

米ドル以外の通貨でお支払いの場合は、Cloud Platform SKU に記載されている料金の通貨が適用されます。

料金の概要

Cloud Firestore を使用すると、以下の項目に対し課金されます。

  • 実行する読み取り、書き込み、および削除の回数
  • データベースにより使用されるストレージの容量(メタデータとインデックスのオーバーヘッドを含む)。
  • ネットワーク帯域幅の使用量

ストレージと帯域幅の使用量はギガバイト(GiB)単位で計算されます(1 GiB は 230 バイト)。課金はすべて日単位で発生します。

この後の各セクションでは、Cloud Firestore の使用に伴う請求の仕組みについて詳しく説明します。

地域別料金

次の表は、Cloud Firestore の利用場所ごとに、読み取り、書き込み、削除、および保存にかかる料金を示しています。

リージョンを選択

米国(マルチリージョン)

米国(マルチリージョン)

無料割り当て超過分の料金
ドキュメントの読み取り ドキュメント 100,000 点あたり $0.06
ドキュメントの書き込み ドキュメント 100,000 点あたり $0.18
ドキュメントの削除 ドキュメント 100,000 点あたり $0.02
保存データ $0.18/GiB/月

ロサンゼルス

ロサンゼルス

無料割り当て超過分の料金
ドキュメントの読み取り ドキュメント 100,000 点あたり $0.036
ドキュメントの書き込み ドキュメント 100,000 点あたり $0.108
ドキュメントの削除 ドキュメント 100,000 点あたり $0.012
保存データ $0.108/GiB/月

北バージニア

北バージニア

無料割り当て超過分の料金
ドキュメントの読み取り ドキュメント 100,000 点あたり $0.033
ドキュメントの書き込み ドキュメント 100,000 点あたり $0.099
ドキュメントの削除 ドキュメント 100,000 点あたり $0.011
保存データ $0.099/GiB/月

サウス カロライナ

サウス カロライナ

無料割り当て超過分の料金
ドキュメントの読み取り ドキュメント 100,000 点あたり $0.06
ドキュメントの書き込み ドキュメント 100,000 点あたり $0.18
ドキュメントの削除 ドキュメント 100,000 点あたり $0.02
保存データ $0.18/GiB/月

モントリオール

モントリオール

無料割り当て超過分の料金
ドキュメントの読み取り ドキュメント 100,000 点あたり $0.033
ドキュメントの書き込み ドキュメント 100,000 点あたり $0.099
ドキュメントの削除 ドキュメント 100,000 点あたり $0.011
保存データ $0.099/GiB/月

サンパウロ

サンパウロ

無料割り当て超過分の料金
ドキュメントの読み取り ドキュメント 100,000 点あたり $0.045
ドキュメントの書き込み ドキュメント 100,000 点あたり $0.135
ドキュメントの削除 ドキュメント 100,000 点あたり $0.015
保存データ $0.135/GiB/月

ヨーロッパ(マルチリージョン)

ヨーロッパ(マルチリージョン)

無料割り当て超過分の料金
ドキュメントの読み取り ドキュメント 100,000 点あたり $0.06
ドキュメントの書き込み ドキュメント 100,000 点あたり $0.18
ドキュメントの削除 ドキュメント 100,000 点あたり $0.02
保存データ $0.18/GiB/月

チューリッヒ

チューリッヒ

無料割り当て超過分の料金
ドキュメントの読み取り ドキュメント 100,000 点あたり $0.042
ドキュメントの書き込み ドキュメント 100,000 点あたり $0.126
ドキュメントの削除 ドキュメント 100,000 点あたり $0.014
保存データ $0.210/GiB/月

フランクフルト

フランクフルト

無料割り当て超過分の料金
ドキュメントの読み取り ドキュメント 100,000 点あたり $0.039
ドキュメントの書き込み ドキュメント 100,000 点あたり $0.117
ドキュメントの削除 ドキュメント 100,000 点あたり $0.013
保存データ $0.117/GiB/月

ロンドン

ロンドン

無料割り当て超過分の料金
ドキュメントの読み取り ドキュメント 100,000 点あたり $0.039
ドキュメントの書き込み ドキュメント 100,000 点あたり $0.117
ドキュメントの削除 ドキュメント 100,000 点あたり $0.013
保存データ $0.117/GiB/月

ムンバイ

ムンバイ

無料割り当て超過分の料金
ドキュメントの読み取り ドキュメント 100,000 点あたり $0.035
ドキュメントの書き込み ドキュメント 100,000 点あたり $0.104
ドキュメントの削除 ドキュメント 100,000 点あたり $0.012
保存データ $0.104/GiB/月

シドニー

シドニー

無料割り当て超過分の料金
ドキュメントの読み取り ドキュメント 100,000 点あたり $0.038
ドキュメントの書き込み ドキュメント 100,000 点あたり $0.115
ドキュメントの削除 ドキュメント 100,000 点あたり $0.013
保存データ $0.115/GiB/月

香港

香港

無料割り当て超過分の料金
ドキュメントの読み取り ドキュメント 100,000 点あたり $0.06
ドキュメントの書き込み ドキュメント 100,000 点あたり $0.18
ドキュメントの削除 ドキュメント 100,000 点あたり $0.02
保存データ $0.18/GiB/月

東京

東京

無料割り当て超過分の料金
ドキュメントの読み取り ドキュメント 100,000 点あたり $0.038
ドキュメントの書き込み ドキュメント 100,000 点あたり $0.115
ドキュメントの削除 ドキュメント 100,000 点あたり $0.013
保存データ $0.115/GiB/月

大阪

大阪

無料割り当て超過分の料金
ドキュメントの読み取り ドキュメント 100,000 点あたり $0.038
ドキュメントの書き込み ドキュメント 100,000 点あたり $0.115
ドキュメントの削除 ドキュメント 100,000 点あたり $0.013
保存データ $0.195/GiB/月

米ドル以外の通貨でお支払いの場合は、Cloud Platform SKU に記載されている料金の通貨が適用されます。

読み取り、書き込み、削除

Cloud Firestore で実行するドキュメントの読み込み、書き込み、および削除のオペレーションごとに課金が発生します。

書き込みと削除の料金はシンプルです。書き込みの場合、set オペレーションまたは update オペレーションを実行するたびに書き込み 1 件としてカウントされます。

読み取りの課金については注意すべき点があります。以下のセクションでは、これらの点について詳しく説明します。

クエリ結果をリッスンする

Cloud Firestore ではクエリの結果をリッスンでき、クエリの結果が変化した時点でリアルタイムの更新を取得できます。

クエリの結果をリッスンする場合、結果セット内のドキュメントを追加または更新するたびに、1 回の読み取りとして課金されます。また、ドキュメントが結果セットから除去される場合も、ドキュメントが変更されることになるため、1 回の読み取りとして課金されます(これとは対照的に、ドキュメントが削除される場合、これは読み取りとして課金されません)。

また、リスナーが 30 分を超えて切断している場合(ユーザーがオフラインになっている場合など)、新しいクエリを発行する場合と同様に読み取りが課金されます。

大きな結果セットを管理する

Cloud Firestore には、多数の結果を返すクエリを管理する際に役立ついくつかの機能があります。

  • カーソル。これは、長期実行クエリを再開できます。
  • ページトークン。これは、クエリ結果のページを設定できます。
  • 制限。これは、取得する結果の数を指定します。
  • オフセット。これは、一定数のドキュメントをスキップできます。

カーソル、ページトークン、および制限を使用する場合、追加コストは発生しません。これらの機能は実際に必要なドキュメントだけを読み取るので、コストを節約できます。

一方、オフセットを含むクエリを送信すると、スキップされるドキュメントごとに読み取り料金が課金されます。たとえば、クエリでオフセット 10 を使用している場合、このクエリが 1 つのドキュメントを返すと、11 回の読み取りとして課金されます。このような追加コストが発生することから、可能な場合は常にオフセットではなくカーソルを使用してください。

ドキュメントの読み取り以外のクエリ

コレクション ID リストのリクエストなど、ドキュメントの読み取り以外のクエリは 1 回のドキュメント読み取りとして課金されます。完全な結果セットを取得するために複数のリクエストが必要な場合(ページ設定を使用している場合など)、リクエストごとに 1 回ずつ課金されます。

クエリの最小コスト

クエリが結果を返さない場合でも、実行するクエリごとに 1 回の読み取り分の最小費用が発生します。

Cloud Firestore セキュリティ ルール

モバイル ライブラリおよびウェブ クライアント ライブラリの場合、Cloud Firestore セキュリティ ルールexists()get()getAfter() を使用して 1 つ以上のドキュメントをデータベースから読み取ると、以下のように追加の読み取り料金が課金されます。

  • Cloud Firestore セキュリティ ルールを評価するために必要な読み取りに対する課金が発生します。

    たとえば、ルールで 3 つのドキュメントを参照しているが、Cloud Firestore がルールを評価するために読み取る必要があるドキュメントが 2 つだけの場合、2 回の従属ドキュメントの読み取りに対する課金が発生します。

    ルールで従属ドキュメントを複数回参照している場合でも、従属ドキュメントごとに 1 回の読み取りとしてのみ課金されます。

  • ルールの評価は、リクエストごとに 1 回のみ課金されます。

    その結果、ドキュメントを 1 つずつ読み取るより、複数ドキュメントを一度に読み取る方が必要となるリクエストが少なくなり、最終的なコストが低くなる可能性があります。

  • クエリの結果をリッスンする場合、以下のすべての状況においてルール評価に対する課金が発生します。

    • クエリを発行する場合。
    • クエリ結果の更新ごと。
    • ユーザーの端末がオフラインになり、その後オンラインになる場合。
    • ルールを更新する場合。
    • ルールで従属ドキュメントを更新する場合。

ストレージ サイズ

Cloud Firestore に保存するデータの容量(ストレージ オーバーヘッドを含む)に対して課金されます。オーバーヘッドの容量には、メタデータ、自動インデックス、および複合インデックスが含まれます。Cloud Firestore に保存されている各ドキュメントには、次のメタデータが必要です。

  • ドキュメント ID(コレクション ID とドキュメント名を含む)。
  • 各フィールドの名前と値。Cloud Firestore はスキーマレスなので、ドキュメント内の各フィールドの名前がフィールド値とともに保存されます。
  • ドキュメントを参照するすべての単一フィールドおよび複合インデックス。各インデックス エントリには、コレクション ID、任意の数のフィールド値(インデックスの定義によって異なる)、ドキュメント名が含まれます。

Cloud Firestore ストレージの計算方法については、ストレージ サイズの計算をご覧ください。データベースにより使用されているストレージ容量は、GCP Console の App Engine の割り当ての詳細ページで確認できます。

ネットワーク帯域幅

以下のセクションで説明するように、Cloud Firestore のリクエストによって使用されるネットワーク帯域容量に対して課金が発生します。Cloud Firestore リクエストのネットワーク帯域幅コストは、リクエストのレスポンスのサイズ、Cloud Firestore データベースの場所、およびレスポンスの送信先によって異なります。

Cloud Firestore は、シリアル化されたメッセージ形式に基づいてレスポンスのサイズを計算します。SSL オーバーヘッドなどのプロトコル オーバーヘッドは、ネットワーク帯域幅の使用量には含まれません。Cloud Firestore セキュリティ ルールによって拒否されたリクエストは、ネットワーク帯域幅の使用量にカウントされません。

これまでのネットワーク帯域幅の使用量を確認するには、GCP Console を使用して課金データをファイルにエクスポートします。

一般的なネットワークの料金体系

Google Cloud Platform 内で発生したリクエスト(Google Compute Engine で実行中のアプリケーションからのリクエストなど)については、次の課金が発生します。

トラフィックの種類 料金
上り 無料
リージョン内の下り 無料
同一マルチリージョン内のリージョン間の下り 無料
US 内のリージョン間の下り(GiB あたり) $0.01(月ごとの最初の 10 GiB は無料です)
リージョン間の下り(US リージョン間のトラフィックは除く) Google Cloud Platform インターネット下り料金

米ドル以外の通貨でお支払いの場合は、Cloud Platform SKU に記載されている料金の通貨が適用されます。

Cloud Firestore では、次のリクエストについては追加のインターネット下り料金が発生します。

  • リージョン間の Google Cloud Platform リクエスト(US リージョン間のトラフィックは除く)
  • Google Cloud Platform 外部からのリクエスト(ユーザーのモバイル端末からのリクエストなど)

Google Cloud Platform インターネット下り料金をご覧ください。

料金設定の例

実際のサンプルアプリで Cloud Firestore の請求コストがどのように発生するかを確認するには、Cloud Firestore の請求例をご覧ください。

費用を管理する

想定外の請求を回避するには、Google App Engine を使用して 1 日あたりの費用制限を設定するか、Google Cloud Platform の課金コンソールを使用して 1 か月の予算とアラートを設定します。

Cloud Firestore の使用量をモニタリングするには、Firebase コンソールで Cloud Firestore の [使用状況] タブを開きます。ダッシュボードを使用して、異なる期間の使用量を比較できます。