Mixpanelの実装にはどれくらいの時間がかかるのか?3段階評価 – Mixpanel
Mixpanelの実装にはどれくらいの時間がかかるのか?3段階評価
Mixpanelを知ろう

Mixpanelの実装にはどれくらいの時間がかかるのか?3段階評価

Last edited: 12月 28, 2021
Aaron Krivitzky (AK)

Mixpanelを評価するプロダクトチームから、次のような質問をされることが多いです。実装にはどれくらいの時間がかかるのか?データを取り込むのにどのような方法があるのか?短い答えは以下のようなものになりますが、より長い(良い)答えを導き出すために、プロダクトチームは実装戦略に関する3つの重要な決定を下す必要があります。

この記事では、この質問に答えるのに役立つ簡単な評価をご紹介します。

始める前に

そもそも、なぜMixpanelを実装したいのですか?

Mixpanelは、プロダクトアナリティクスのためのクラス最高のテレメトリー(遠隔情報収集)ツールです。つまり、Mixpanelは貴社のプロダクトに新しい機能を追加することはしません。個々のユーザーの行動をデータとして収集し、そのデータをクラウドに安全に保存することで、ユーザーがアプリケーションとどのようなやり取りをするかを測定することを可能に(簡単に)するだけです。しかし、データを取得する(つまり、収集して保存する)ことは、計算式の一部に過ぎません。計算結果を得るには、そのデータを分析するために専用ツール一式が必要になります。

結局のところ、データが意味をなすのは、データを理解できる場合だけです。

Mixpanelのレポートとモジュールを使用すると、プロダクト内でのエンドユーザーの行動に関する難しい質問に答えられるようになります(答えやすくなります)。最終的には、分析を通じて、ユーザーエクスペリエンスを向上させるのに使用できる確固たる事実を見つけることができます。

まず、実装を開始する前に、どの指標、行動、KPI を測定したいかを見極める必要があります。こうしたことを確認することは、アナリティクス戦略コードを書かないアナリティクスソリューションのスローガンとされることが多い「すべてを測定する」はアナリティクス戦略ではありません)。

ほとんどのプロダクトチームは、KPIをサポートするのに必要な指標が何であるかは知らなくても、会社の目標やKPI は十分に把握しています。そして、Mixpanelチームとの戦略セッションを通じて、適切な分析を行うのに追跡する必要がある重要なユーザーの行動を洗い出します。

たとえば、企業が動画でのユーザーエンゲージメントを最大化するというKPIを設定している場合「動画を開始する」、「動画を停止する」、「動画を最後まで視聴する」といった行動と、「視聴時間」、「動画カテゴリー」、「動画品質」、「動画ID」といった要素を組み合わせて使用します。これらすべては、「動画エンゲージメント」のより一般的なKPIを特定するのに役立ちます。

「動画エンゲージメント」KPIMixpanelで定義すると次のようになります

実装を開始する前に、どの指標、行動、KPIを測定したいかを見極める必要があります。

(注:Mixpanelでは、エンドユーザーが取った行動から導き出した指標や要素に基づく、より小さな構成要素を使用して、「動画エンゲージメント」のKPIを定義しました。)

プロダクトアナリティクスソリューションの実装と具体的な戦略について説明したので、この記事の本題である「実装するのに一体どれくらいの時間がかかるのか?」という質問に対する答えを差し上げましょう。

短い答え

戦略(測定する必要がある行動と指標、ならびにKPIの構成要素)が決まったら、実装を開始することができます。その際、それぞれの行動が取られたときにMixpanelのインジェスチョンAPIに通知するいくつかの簡単なコードを使用します。

できるだけ簡単に説明すれば、プロダクト内で追跡する1つのイベントを実装するのに約30分かかります。

これには、コードの記述、データの検証、ストレステストの合格、開発環境での次の「ブランチ」とのコードのマージなどが含まれます。ほとんどのお客様は1プロダクトにつき20~60の一意なイベントをMixpanelに送信するため、貴社のチームのエンジニアリングリソースにて確保する必要がある合計「開発時間」の概算は10~30 時間です。 

Mixpanelを実装するのに必要な合計「開発時間」は10~30 時間です。

この実装は、1~3週間(通常は複数のスプリントまたはマイルストーンに分割される)にわたって行われ、常に「追跡対象」戦略セッションを事前に行います。通常、このセッションをプロダクトチームが完了するのに要する時間は1~2週間です。

当社のお客様のほとんどは、10日目までにMixpanelの実装に関する明確なロードマップを策定し、40日目までに実行・完了します。

長い(より良い)答え

上記の短い答えは、大まかな見積もりを提供しますが、すべてのアプリケーションの複雑さや関係するシステムの範囲、ならびにすでに確立されているデータ戦略を考慮していません。そこで、より良い答えを差し上げましょう。

Mixpanel実装戦略を評価するにあたっては、次の3つの重要な考慮事項を検討することを推奨します。

  1. データをすでに持っているか?それとも、Mixpanelに収集してもらう必要があるか?
  2. クライアント側またはサーバー側のどちらにて行動をMixpanelに追跡してもらうか?
  3. Mixpanel SDKを使用するか?それとも、自社のものを使用するか?

それぞれについて詳しく見てみましょう。

1. データをすでに持っているか?それとも、Mixpanelに収集してもらう必要があるか?

多くの企業は、データ戦略やスキーマ確立していない状態でMixpanelに問い合わせをします。そうしたお客様のために、Mixpanelは、データを安全に収集、保管、処理する、データインジェスチョンのプライマリーソースとして数値を提供します。通常、これは、お客様がSDK(ソフトウェア開発キット。下記を参照)を実装するか、またはMixpanelのデータインジェスチョンエンドポイントに接続するリアルタイムAPIコールを設定することを意味します。

開発者であるあなたが、Mixpanel SDKを使用している場合、SDKをインストールし、関連するすべてのメソッドを学習するのに約1時間かかります(サードパーティにデータを送信するのに.track().identify()を使用する実装に精通している場合は所要時間は短くなります)。SDKについて精通したら、上記の「1イベントあたり30分」を目安にして合計時間を見積もることができます。

ここまで完了したら、次のようになっているはずです

Mixpanelに相談しにくる企業の中には、データを収集するのに手助けは必要ないという企業もあります。そうした企業は、データウェアハウス、データレイク、バッチ処理/キューイング/メッセージ仲介、その他のタイプのETL中心のインフラストラクチャを含む、データ戦略をすでに持っています。そのような場合、大抵は、多くのメッセージ(データポイント)を一度に素早く受信できるように設計されている、MixpanelのデータインポートAPIクラウドインポートAPIを使用することを推奨します。ここで、お客様は、各自のサーバーからMixpanelに履歴データを定期的にオンデマンドにて送信します。

通常、こうしたタイプのお客様はSDKを実装しないため、プロダクトへのコードの追加よりも、既存データの変換に焦点を当てた実装になります。

データエンジニアであるあなたが、MixpanelのインポートAPIを使用している場合、API仕様を理解するのに約1~3時間かかります。要件とデータ形式を理解したら、次のようなMixpanelにデータをバッチ送信するAPI呼び出しを作成します。

データウェアハウスにデータを持っている場合、MixpanelのクラウドインポートAPIは、定期的に取得されるストレージバケット内のデータを使うことができます(詳細は以下のクラウドインポートを参照)。

そして、3つ目のタイプのお客様がいます。すべてのエンドユーザーデータのセントラルハブとしての役割を果たすSegmentmParticleのようなカスタマーデータプラットフォーム(CDP)にすでに投資しているお客様です。 

Mixpanelは大分部のメジャーなCDPとシームレスに統合できるので、こうした場合、実装にかかる時間は約15分です。キー、APIシークレット、トークンをCDPに挿入し、Mixpanelとのデータ接続をオンにするだけです。

CDPを使用してMixpanelを設定する場合、特殊な専門知識は必要ありません。ただし、Mixpanelに送り込まれるデータの品質は、CDPに送り込まれるデータの品質と同じになります。

注:ほとんどのCDPでは、1つのSDKおよび/またはAPI経由のデータインポートを使用する実装手順が必要になります(上記の2つのシナリオとよく似ている)。

2. クライアント側またはサーバー側のどちらにて行動をMixpanelに追跡してもらうか?

ほとんどのデジタルプロダクトには、フロントエンド(「クライアント側」)とバックエンド(「サーバー側」)があります。定義済みのアナリティクス戦略を使用して実装を開始すると、どこにMixpanelを追加する必要があるかがすぐに明らかになります。以下に例を示します。

KPIや行動が、インターファイス内でエンドユーザーがすることやアプリのUIに関係するもの(「フォームに必要事項を入力する」、「動画を視聴する」、「ページをスクロールする」など)である場合、通常、クライアント側でMixpanelに行動を記録させるようにします。フロントエンドフレームワークは、多くの場合、ユーザーが「x」を実行したことをMixpanelにプロダクトが合図を簡単に送ることができるようにする、「フック」や「ハンドラー」を提供します。したがって、Mixpanelを既存のフロントエンドに追加することは比較的簡単な開発作業であり、当社のSDKがそれを行うための簡略化されたインターフェイスを提供します(詳細は以下を参照)。

しかし、KPIと行動がユーザーに代わって実行されるアクション(「サブスクリプションが課金された」、「パスワードが更新された」など)に関連する場合、通常、サーバー側でMixpanelに行動を追跡させます。サーバー側アプリケーションは複雑さや規模が異なるため、必要な間接作業に合う万能のステートメントを作成することはできません。 

しかし、Mixpanel一般的なバックエンド言語用のSDKとソフトウェアパッケージを保持するので、開発者はより簡単かつ快適にMixpanelをサーバー側アプリケーションに追加することができます。

最後に、クライアント側サーバー側にて行動を追跡することも全く問題ありません(多くのお客様はそうします)。これにはより多くの時間がかかります。なぜなら、関係するチームや個人を含む、アナリティクスプロジェクトの全体的な「表面領域」に追加することになるからです。このハイブリッドアプローチを採用するお客様は、クライアント側でイベントの大半を、サーバー側でイベントのいくつかを追跡することが多いです。

3. Mixpanel SDKを使用するか?それとも、自社のものを使用するか?

Mixpanelは、多くの異なるプラットフォーム上でイベントを追跡してユーザープロフィールを更新するシンプルなインターフェイスを提供するSDKを保持しています。また、デフォルトプロパティ、ユーザーIDを管理するメソッド、データバインディング、パーシステンスといった有益な機能も提供します。

フロントエンドでもバックエンドでも、こうしたSDKはイベントをMixpanelに送信するための使いやすいインターフェイスを提供します:

mixpanel.track('something happened!', {"and it": "was great!"})

 

エンジニアリングチームがコードベースにSDKを追加することに抵抗がない場合、間違いなくそれが最小限の時間と労力で最も多くのデータを取得する最も簡単な方法です。

しかし、一部の企業(銀行、証券取引所、医療機関など)は自社プロダクトの一定の領域にサードパーティコードを含めることに抵抗があります。当社は、その懸念を十分に理解しています。そうしたことから、当社ではMixpanelがデータを送信するのに使用するすべてのAPIルートを公開して記録していますので、各自のニーズに合わせてデータを追跡するための独自のクラスやメソッドを構築することができます。

チームが独自のパイピングを構築する必要があるため、SDKを使用するよりも時間がかかりますが、コードベースにサードパーティ製のパッケージを含めないようにすることができるので、一部のお客様にとっては価値のある投資となります。

依存関係がないtrack()の実装の簡単な例を次に示します。

クラウドストレージプロバイダー(AWS、GCP、Snowflake、Azureなど)を使用して多くのデータソースを「信頼できる情報源」として一箇所にまとめる企業の場合、クラウドインポートと呼ばれる機能を通じてMixpanelをデータスタックに追加することは、データエキスパートを必要とせずにユーザーに関する質問に対する答えをセルフサービスにて得るシームレスな方法です。

もちろん、もっと実装をやりたいようにやらせてほしい場合やチームがノウハウ(または帯域幅)を持っていない場合、あらゆる側面で手助けしてくれる適格なMixpanelソリューショパートナーを利用することができます。

実装後

実装が完了すると、Mixpanelはプロジェクトの品質管理を支援する数多くのリソースを提供し、継続的にデータの整合性を確保できるようにします。 

たとえば、Live Viewを使用すると、Mixpanelプロジェクトに送信されるイベントをリアルタイムにて確認して仕様に合っているかどうかを確認できます。Lexiconを使用すれば、Mixpanel UI 内に直接表示されるイベントやプロパティ記述(およびその他の有益なメタデータ)を追加できます。

実装後、Mixpanelのデータ管理機能を使用することで、データの整合性を容易に確保できます。

結局のところ、Mixpanelの実装に割り当てる時間と労力を正確に見積もるには、上記の3つの決定点を組み合わせる必要があります。

もちろん、当社が喜んでお手伝いさせていただきます。こちらから当社チームにご連絡ください。実装する準備が整いましたか?詳細な実装チェックリストについては、QBQ | The Mixpanel Communityをご覧ください。