Firebase Analyticsの文書(https://support.google.com/firebase/answer/6317517#active-users)によると、有効なユーザ数は、特定の日にセッションを開始したユニークユーザの数です。また、ドキュメントに従って、セッションが開始されるたびにsession_start
という名前のイベントが送信されます。私はBigQueryのエクスポートを使用してそのメトリックを取得しようとしていますが、私のクエリは私に別の結果を与えています(FB分析の14908 BigQueryで15636)Firebase AnalyticsダッシュボードとBigQueryエクスポートの間の「アクティブユーザのメトリック」の差異
私はまた別のタイムゾーンに変換して、どのようなタイムゾーンでも同じ(または類似の)結果を得ることはありません
アクティブなユーザのFirebase Analyticsダッシュボードと同じ結果を得るには、どのクエリを実行する必要がありますか?
私のクエリは
SELECT EXACT_COUNT_DISTINCT(user_dim.app_info.app_instance_id)
FROM table_date_range([XXXXX.app_events_], timestamp('2016-11-26'), timestamp('2016-11-29'))
WHERE DATE(event_dim.timestamp_micros) = '2016-11-27'
AND event_dim.name ='session_start'
おかげ@djabiの答えは私がuser_engagement
ではなくsession_start
を使用するように私のクエリを変更
更新
後
あり、それはかなり良く働くようになりました。ただし、若干の小さな違いがあります(日付によっては16Kのうち10から50までの範囲です)。DATE(date_add(event_dim.timestamp_micros,1,'hour'))
で遊んでもう一度別のタイムゾーンを使用しようとしましたが、Firebase Analyticsダッシュボードの正確な数値は決して得られません。
新しい数値は統計的に許容できると考えられるほど十分ですが、クエリを改善し正確な結果を得るための提案があれば疑問ですか?
現在のクエリは次のようになります。
SELECT
COUNT(*) AS active_users
FROM (
SELECT
COALESCE(user_dim.user_id, user_dim.app_info.app_instance_id) AS user_id
FROM
TABLE_DATE_RANGE([XXXXX.app_events_], TIMESTAMP('2016-11-24'), TIMESTAMP('2016-11-29'))
WHERE
DATE(event_dim.timestamp_micros) = '2016-11-25'
AND event_dim.name ='user_engagement'
GROUP BY
user_id)
注:それが問題
可能性が示唆するつもりだった場合、誰に、私たちはuser_idを送信していないので、COALESCE
は常に
app_instance_id
を返します。現時点では
それは素晴らしいです。ありがとうございました! user_engagementでsession_startを変更すると、数値はまだ正確ではありませんが、はるかに近い数値になります。 タイムゾーンを混乱させようとしましたが、最良の結果は私がそれを変更しない時なので、タイムゾーンは実際にはUTC(私のクライアントはロンドンに拠点を置くので意味があります)と仮定しています。 さらに詳しい情報がある場合はこの質問を残しておいてください。他に誰もいない場合は正しい答えを受け入れるようにします –
ユーザーの関与を試みたことはありませんでした。セッションを開始したユーザー "_。しかし経験的には正しいと思いますが、ドキュメントはありません(セッションを開始せずにユーザーのエンゲージメントを見ることは可能ですが、[この他の質問](http://stackoverflow.com/questions/38967231/firebase)。 -analytics-data-disparity)) –
文書が正しくありません。すぐに修正される予定です。質問していただきありがとうございます。私のマニュアルが壊れていることがわかりました。乾杯。 – djabi