Firebase Analyticsは、モバイルおよびウェブアプリケーションにおけるユーザー行動を追跡するためのGoogleの無料ツールです。このサービスは、コードを書くことなく基本イベント(初回起動、購入、画面操作)を自動的に収集し、詳細な分析のためにカスタムイベントを追加できます。Google(2026年)によると、Firebase Analyticsは世界中で毎日500億以上のイベントを処理しています。SDKは1行の依存関係で統合され、即座にFirebaseコンソールへのデータ送信を開始します。
重要ポイント
Firebase Analyticsは、モバイルおよびウェブアプリケーションでユーザーイベントを収集、集約、分析するためのGoogleのクラウドサービスです。Firebase SDKの一部として提供され、収集データ量に制限なく無料で利用できます。
Firebase Analyticsは、個々のセッションとユーザーレベルでデータを処理します。各イベントには、タイムスタンプ、ユーザー識別子、最大25組の追加パラメーターのキーと値のペアが含まれます。SDKはインストール識別子を自動的に管理し、Google PlayおよびApp Storeのプライバシーポリシーに準拠します。
Firebase AnalyticsはGoogle Cloudインフラストラクチャ上に構築され、Google Analytics 4と同じストリーミングデータ処理システムを使用しています。イベントはクライアントからHTTPS経由で収集エンドポイントに送信され、検証、エンリッチメントを経て、長期保存のためにBigQueryに保存されます。Google(2026年)によると、イベント送信からレポート表示までの平均レイテンシーは3秒未満です。
プライバシーを確保するため、AnalyticsはユーザーのIPアドレスを自動的に匿名化し、明示的な同意なしに永続的なデバイス識別子(AAID、IDFA)を送信しません。開発者はAndroidManifestとInfo.plistのフラグを使用してデータ収集を制御します。
多くのFirebase製品とは異なり、Firebase Analyticsには有料プランがありません。イベント数、ユーザー数、保存期間に関係なく完全に無料です。Firebaseコンソールのデータは最大14か月間保存され、BigQueryエクスポートを有効にすると保存期間は無制限になります。Google(2026年)によると、Firebaseプロジェクトの96%がAnalyticsを使用しており、サービスの利用料は無料です。コストはBigQueryの制限(月10GBの無料ストレージ)を超えた場合にのみ発生します。
収集メカニズムはイベントモデルに基づいています。各ユーザーアクションは、一連のパラメーターを持つイベントになります。SDKは推奨イベント(first_open、session_start、screen_view、purchase、in_app_purchase)を自動的にログ記録します。有効にするためのコードは不要で、analyticsモジュールを追加するだけで十分です。
Firebase Analyticsは、開発者側の設定なしで自動イベントを生成します。完全なリストには15のイベントが含まれます:first_open(初回起動)、session_start(セッション開始)、user_engagement(操作)、screen_view(画面表示)、app_remove(アプリ削除)、os_update(OSアップデート)など。各自動イベントには、アプリバージョン、デバイスモデル、OSバージョン、地域、言語などの定義済みパラメーターセットが含まれます。
class AnalyticsEventsActivity : AppCompatActivity() {
private lateinit var firebaseAnalytics: FirebaseAnalytics
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
firebaseAnalytics = FirebaseAnalytics.getInstance(this)
firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_CONTENT) {
param(FirebaseAnalytics.Param.ITEM_ID, "article_575")
param(FirebaseAnalytics.Param.ITEM_NAME, "Firebase Analytics Guide")
param(FirebaseAnalytics.Param.CONTENT_TYPE, "guide")
}
}
}
アプリケーション固有のロジックを追跡するには、カスタムイベントを使用します。開発者がイベント名(40文字以内、英字とアンダースコア)とパラメーターセット(イベントあたり最大25パラメーター)を定義します。イベント名は最初の送信後に自動的にFirebaseコンソールに登録されます。事前設定は不要です。
カスタムイベントは、Bundleとして渡されるパラメーターと組み合わせることができます。Firebaseは数値パラメーターを自動的に集約し、合計、平均、最小、最大を計算します。文字列パラメーターはレポートでのフィルタリングとセグメンテーションに使用されます。Google(2026年)によると、中規模アプリケーションは200から500のユニークなカスタムイベントを生成します。
Firebase Analyticsのイベントモデルは、イベント、パラメーター、ユーザープロパティの3つのレベルで構成されています。各レベルには独自の目的とボリューム制限があります。イベントはアクションを記述し、パラメーターはコンテキストを明確にし、ユーザープロパティはユーザー属性を定義します。
イベントとは、タイムスタンプ付きの単一のユーザーアクションです。各イベントには名前が必要で、String型またはDouble型の最大25のパラメーターを含めることができます。Firebaseは推奨イベント(FirebaseAnalytics.Event定数の定義済み名)、カスタムイベント(開発者固有の名前)、自動イベント(SDK生成)を区別します。Google(2026年)によると、アプリケーションはユーザーセッションあたり平均50〜200のイベントを送信します。
| イベントタイプ | 例 | コードの必要性 |
|---|---|---|
| 自動 | first_open, session_start, screen_view | 不要 |
| 推奨 | purchase, share, login, search | 一部必要 |
| カスタム | level_complete, tutorial_step, filter_applied | 必要 |
パラメーターはイベントのコンテキストを明確にします。推奨イベントの場合、Firebaseは定義済みのパラメーター名(FirebaseAnalytics.Param.ITEM_ID、.VALUE、.CURRENCY)を提供します。カスタムイベントの場合、開発者は40文字以内の任意の名前を使用します。パラメーターは文字列(100文字以内)、浮動小数点数、または配列のいずれかです。パラメーター値はレポートでフィルターとして表示され、特定のitem_nameに対するpurchaseイベントのみを表示できます。
ユーザープロパティは、ユーザーのライフサイクル全体を通じてすべてのイベントに付加される属性です。イベントパラメーターとは異なり、ユーザープロパティは特定のアクションに紐づかず、変更時に一度送信されます。典型的な例:preferred_language、subscription_tier、onboarding_completed。プロジェクトあたり最大25のユーザープロパティ。各プロパティは36文字以内の文字列です。
ユーザープロパティはオーディエンスの構築に積極的に使用されます。subscription_tierが“premium”のユーザーのセグメントを作成し、無料ユーザーとは別に行動を分析できます。Google(2026年)によると、ユーザープロパティの適切な設定により、LTV予測の精度が20〜30%向上します。
AndroidアプリケーションへのFirebase Analyticsの統合は、build.gradleへの依存関係の追加、Firebaseの初期化、データ収集ルールの設定の3ステップで構成されます。Firebase SDKを接続するとAnalyticsは自動的に有効化されます。追加のAPIキーやトークンは必要ありません。
// build.gradle (app-level)
dependencies {
implementation(platform("com.google.firebase:firebase-bom:33.1.0"))
implementation("com.google.firebase:firebase-analytics-ktx")
}
// AndroidManifest.xml
@android:name="google_analytics_automatic_screen_reporting_enabled"
android:value="true"
依存関係を追加してGradleを同期すると、FirebaseAnalyticsオブジェクトがシングルトンとして利用可能になります:FirebaseAnalytics.getInstance(context)。デフォルトでは、Analyticsは自動イベントのみを収集し、DEBUGビルドではデータを収集しません。テストには、FirebaseコンソールのDebugViewオプションを使用します。これにより、1秒未満のレイテンシーでリアルタイムのイベントが表示されます。
Firebaseはデータ収集を無効化または制限するための柔軟なメカニズムを提供しています。フラグAnalytics.setAnalyticsCollectionEnabled(false)でクライアントからのイベント送信を完全に停止できます。または、ユーザー同意ダイアログ(同意モード)を通じて権限を設定することもできます。明示的な承認後でのみFirebaseはデータを収集します。これは欧州経済地域でのGDPRおよびePrivacyの遵守に不可欠です。
Google(2026年)によると、EU圏内の約12%のユーザーが分析情報の収集を拒否しています。そのような場合、Firebaseは識別子なしで集計データを送信できます。匿名イベントは全体の指標にはカウントされますが、特定のユーザーには紐づけられません。
Firebaseコンソールは、収集されたイベントに基づく一連の既製レポートを提供します:エンゲージメントダッシュボード、リテンションレポート、コンバージョンファネル、ユーザーフロー。すべてのレポートはリアルタイムで更新され、アプリバージョン、国、デバイス、ユーザープロパティによるフィルタリングをサポートします。
ファネルは、ユーザーが目標アクションに到達するために完了しなければならないイベントのシーケンスです。例:screen_view(onboarding) → sign_up → add_to_cart → purchase。Firebase Analyticsは指定されたイベントから自動的にファネルを構築し、各ステップに到達したユーザーの割合を表示します。Google(2026年)によると、ファネルを使用するアプリケーションは、通常のイベント表示と比較して40%多くのユーザー離脱ポイントを特定できます。
Firebase Analyticsのオーディエンスを使用すると、イベント、パラメーター、ユーザープロパティでユーザーをセグメント化できます。オーディエンスは、指定された条件を満たすユーザーの動的リストです。例:「週に5回以上アプリを開き、購入を行ったユーザー」。作成されたオーディエンスは、プッシュ通知送信のためにFirebase Cloud Messagingに、広告キャンペーンのためにGoogle Adsに自動的に同期されます。
Firebaseはプロジェクトあたり最大500のオーディエンスをサポートします。各オーディエンスは2〜4時間ごとに更新され、無制限のユーザーを含められます。オーディエンスはAND、OR、NOTを使用して組み合わせることができ、A/BテストやRemote Configを通じたコンテンツのパーソナライゼーションのための複雑なセグメントを構築できます。
BigQueryは、Firebase Analyticsデータの詳細な分析のための主要なチャネルです。エクスポートを有効にすると(Firebaseコンソールで1ボタン設定)、すべての生イベントがネストされたフィールドを持つ行形式でBigQueryテーブルにコピーされます。データは最大5分の遅延でリアルタイム更新されます。開発者は分析のための任意のSQLクエリを作成したり、Looker Studioでダッシュボードを構築したり、ユーザー離脱予測のためのMLモデルを接続したりできます。
Firebase AnalyticsとGoogle Analytics 4(GA4)は共通のイベントモデルとBigQueryインフラストラクチャを共有していますが、目的と機能に重要な違いがあります。GA4はマーケター向けのウェブ解析とクロスプラットフォームレポートに重点を置いているのに対し、Firebase Analyticsはモバイル開発者と他のFirebaseサービスとの統合に特化しています。
| 特徴 | Firebase Analytics | GA4 |
|---|---|---|
| 主要チャネル | モバイルアプリケーション | ウェブ+アプリケーション |
| Firebase統合 | ネイティブ | Firebase SDK経由 |
| Cloud Messaging | 直接オーディエンス→通知 | オーディエンスインポートのみ |
| DebugView | 内蔵 | Firebase経由 |
| カスタムファネル | 対応(Firebaseコンソール) | 対応(GA4インターフェース) |
Firebase AnalyticsとGA4の選択はプロジェクトのエコシステムに依存します。アプリケーションが他のFirebaseサービス(Crashlytics、Cloud Messaging、Remote Config)を積極的に使用している場合、シームレスな統合の点でAnalyticsが自然な選択です。主な目的がウェブサイトとアプリケーションを統一インターフェースで管理するマーケティング分析である場合、GA4はより広範なレポート作成とアトリビューション機能を提供します。Google(2026年)によると、73%のプロジェクトがFirebase Analyticsを主要ツールとして、GA4をマーケティングレポート作成の補完ツールとして使用しています。
よくある質問
Firebase Analyticsは完全に無料で、イベント数やユーザー数に制限はありません。課金はBigQueryの無料枠(月間最初の10GBは無料)を超えてデータをエクスポートする場合にのみ発生します。
はい。AnalyticsはGoogle Play Servicesに依存しない独自のインストール識別子(app instance ID)を使用します。Google Playのないデバイスでは、SDKは広告識別子なしの制限付きモードで動作します。
FirebaseコンソールのDebugViewを使用します。コマンド「adb shell setprop debug.firebase.analytics.app あなたのパッケージ名」でデバイスのデバッグを有効にすると、すべてのイベントが1秒未満のレイテンシーでDebugViewに表示されます。
Firebaseは削除APIを提供しています。Google Cloud Consoleを通じて特定のapp instance IDまたはuser IDのデータ削除をリクエストします。データは30日以内にすべてのFirebaseストレージシステムから削除されます。
はい。build.gradleに依存関係「firebase-analytics-ktx」を追加するだけで、Gradle同期とアプリ起動後すぐにすべての自動イベントの収集が開始されます。カスタムイベントは個別のコードで追加します。
まとめ
ターンキー方式のモバイルアプリケーションを開発します
IT Sectrは2017年からスタートアップや企業向けにiOS・Androidアプリケーションを開発しています。私たちがご相談に乗り、最適なソリューションをご提案します。