PostHog FOSS — アナリティクス・フィーチャーフラグ・セッション録画を一手に担うオープンソースの全部入り計測基盤
bash ファイル名.sh を実行してください(中身を一度確認してから実行すると安心です)。
(macOS / Linux 環境が必要) PostHog FOSS — アナリティクス・フィーチャーフラグ・セッション録画を一手に担うオープンソースの全部入り計測基盤
ひとことでいうと
PostHog FOSS(posthog-foss)は、プロダクト開発に必要な計測ツールをひとつにまとめたオープンソースのソフトウェアです。ユーザー行動の分析・セッション録画・機能の段階的なリリース・A/B テスト・エラートラッキング・アンケートなどをすべて一つの環境で動かせます。PostHog 本体から有料のコードだけを取り除いた「完全無料版(FOSS版)」のミラーリポジトリで、MIT ライセンスのため商用・個人利用を問わず自由に使えます。これまで複数の有料サービスを契約しなければ実現できなかった機能群を、自分のサーバーにまとめて構築できる点が最大の魅力です。
PostHog で何ができる?
PostHog はプロダクト開発の計測に必要な機能を横断的にカバーしています。
プロダクトアナリティクス(製品分析)では、ユーザーの操作をイベント単位で記録・集計し、ファネル(購入や登録までの経路)・リテンション(ユーザーの定着率)・コホート(共通の特徴を持つグループ)を可視化できます。SQL(データを取り出すための問い合わせ言語)を使って自由に集計することも可能です。
セッションリプレイでは、実際のユーザーが画面を操作している様子を動画として録画・再生し、UX(使い心地)改善の根拠データとして活用できます。
フィーチャーフラグ(機能フラグ)は特定のユーザーだけに新機能を公開したり、問題があればすぐにオフに戻したりする仕組みです。**実験(A/B テスト)**では、UIや機能の変更が実際にどれだけ効果があったかを統計的に確かめられます。
さらにエラートラッキング・アンケート・データウェアハウス連携(Stripe・HubSpot など外部サービスとのデータ同期)・LLM アナリティクス(AIサービスの呼び出し回数・費用・速度の計測)まで備えており、これ一つで幅広い分析ニーズをカバーできます。
こんな人におすすめ
1. スタートアップの Product Manager やエンジニア
Mixpanel・Hotjar・LaunchDarkly など複数の有料サービスにデータが分散していて管理が大変、というチームに最適です。PostHog に集約することで、ダッシュボードを行き来する手間がなくなります。月間 100 万イベントまでの小規模な運用であれば、PostHog Cloud の無料枠または自社サーバーへの導入で費用ゼロで運用できます。
2. データのプライバシーを重視する企業
EU の GDPR(ユーザーデータの保護を定めた法律)など、データ保護の規制に対応したいチームに向いています。自社サーバー内だけでデータを管理できるため、外部のサービスにデータを送る必要がありません。FOSS 版はプロプライエタリ(非公開の独自)コードを含まないため、セキュリティの監査(コードの安全確認)も行いやすいです。
3. オープンソースプロジェクトや研究機関
商用アナリティクスツールのコストを抑えながら、本格的な計測基盤を構築したい場合に向いています。MIT ライセンスで自由に改変・再配布でき、学術研究や OSS プロジェクトの利用統計の収集にも活用できます。
インストール・使い方
PostHog Cloud(最速・初心者におすすめ)
自分のサーバーを用意しなくても、公式クラウドサービスにサインアップするだけで使い始められます。
Step 1: PostHog Cloud(US または EU)にアクセスし、メールアドレスだけでアカウントを登録します。
メール認証が完了したら、すぐにダッシュボードが使えるようになります。
Step 2: 初月の無料枠の範囲内で計測を開始します。無料枠は「イベント 100 万件・録画 5,000 件・フィーチャーフラグリクエスト 100 万件・エラー 10 万件・アンケート回答 1,500 件」です。
小規模なプロダクトであれば、この枠だけで十分に運用できます。
Step 3: 表示される JavaScript のスニペット(短いコードのかたまり)を、自分のウェブサイトの <head> タグの中に貼り付けます。Python・Node.js・iOS・Android など各言語向けの SDK(ソフトウェア開発キット)も用意されています。
この一手間だけで、ユーザーの操作がダッシュボードにリアルタイムで流れ込んできます。
Self-hosted(自社サーバーへの導入)
4 GB 以上のメモリがある Linux サーバーに Docker(アプリをまとめて動かす仕組み)をインストールしておけば、コマンド 1 行で環境を構築できます。
Step 1: ターミナル(文字で命令を送る画面)を開き、以下のコマンドをコピー&ペーストして実行します。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/posthog/posthog/HEAD/bin/deploy-hobby)"
このコマンドは、公式が用意したセットアップスクリプトを自動でダウンロードして実行します。
Step 2: スクリプトが Docker Compose(複数のサービスをまとめて起動する仕組み)を使って、必要なコンポーネントをすべて自動で立ち上げます。具体的には PostgreSQL・Redis・ClickHouse・Celery Worker・Django バックエンド・Next.js フロントエンドが起動します。
Step 3: セットアップ完了後に表示される URL(例: http://<サーバーのIPアドレス>:80)にブラウザでアクセスし、管理者アカウントを作成します。
あとは JavaScript SDK などを使ってアプリにトラッキングコードを組み込むと、ダッシュボードにイベントがリアルタイムで届くようになります。なお Self-hosted 版は月間約 10 万イベントまでのスケール(規模)を想定しており、それ以上の規模では PostHog Cloud への移行が推奨されています。
Python SDK だけで試す(最も手軽)
Python(プログラミング言語の一つ)を使っている方は、SDK のインストールだけで手元のパソコンからすぐに試せます。
Step 1: ターミナルで以下のコマンドを実行し、SDK をインストールします。
pip install posthog
pip(ピップ)は Python のパッケージ管理ツールで、これだけで SDK が使えるようになります。
Step 2: 以下のコードをコピーして Python スクリプトに貼り付け、API キー(自分の PostHog プロジェクトの認証用キー)を差し替えて実行します。
import posthog
posthog.project_api_key = "phc_YOUR_API_KEY"
posthog.host = "https://us.posthog.com" # Self-hosted の場合は自社の URL
# ユーザーの操作をイベントとして送信
posthog.capture(
distinct_id="user-123",
event="button_clicked",
properties={"page": "home", "button": "signup"}
)
# フィーチャーフラグ(機能フラグ)の状態を確認
if posthog.feature_enabled("new-checkout-flow", "user-123"):
# 新しいチェックアウト画面を表示する処理
pass
distinct_id はユーザーを識別するための ID、event は操作の名前、properties は付加情報です。
Step 3: PostHog ダッシュボードの「Live Events」タブを開くと、今送信したイベントがリアルタイムで表示されます。
動かしてみた
リポジトリを確認したところ、Python 3.12.13 の動作環境が確認できました。ソースコード全体はモノリポ(モノリシックリポジトリ)という構成で、posthog/・frontend/・services/・products/ など多数のディレクトリがひとつのリポジトリにまとまっています。
通常の Python パッケージのように pip install 一発で全機能を使える形式ではなく、複数のコンポーネントが連携する Web アプリケーションとして動作します。公式が提供する Docker Compose ベースの Hobby デプロイスクリプトを使うのが、最も確実な導入方法です。
手動でセットアップを検討する場合は、リポジトリ内の Dockerfile や devenv/ ディレクトリの設定ファイル(duckgres.yaml・intent-map.yaml など)が参考になります。Python SDK(pip install posthog)だけであれば、サーバーなしで手元のパソコンから即座に試せることも確認しています。
デモについて
PostHog は PostgreSQL・Redis・ClickHouse を含む複数のサービスが連携して動く大規模な Web アプリケーションです。そのため、ブラウザだけで完結する軽量デモの提供はありません。実際の動作を確認するには、公式の PostHog Cloud(無料プランあり) または Docker Compose による Self-hosted デプロイをお試しください。まず機能を体験したいだけなら、Python SDK を pip install posthog でインストールして、イベント送信だけ試してみるのがもっとも手軽な入り口です。
手順のコツ:はじめの一歩をスムーズに踏み出すために
- 最初は Cloud 版から始める: サーバーの準備なしにすぐ動かせるので、まず PostHog Cloud で感覚をつかんでから Self-hosted を検討するのがおすすめです。
- SDK は公式ドキュメントで選ぶ: Python・JavaScript・Node.js・iOS・Android など多言語に対応しています。自分が使っている言語のページを開いてコードをコピーするだけで始められます。
- イベント名は最初に設計する:
button_clickedやpage_viewedなど、あとで集計しやすい名前をあらかじめ決めておくと、ダッシュボードを整理しやすくなります。 - フィーチャーフラグは小さく試す: まずは社内メンバーだけに新機能を公開するところから始めると、リスクを抑えた検証ができます。
- Self-hosted の最小スペックを守る: メモリ 4 GB 以上の Linux サーバーが推奨です。スペックが不足すると起動に失敗しやすいため、事前に確認しておきましょう。
- Live Events タブを活用する: イベントがきちんと届いているかどうか、ダッシュボードの「Live Events」でリアルタイムに確認できます。設定直後の動作確認に便利です。
用語とポイント解説
プロダクトアナリティクス(製品分析) ユーザーがアプリやサービスをどのように使っているかを数字で把握する仕組みです。かんたんに言うと「ユーザー行動の記録と集計」です。どのページで離脱しているか、どの機能がよく使われているかを可視化できます。
フィーチャーフラグ(機能フラグ) アプリの特定の機能を、コードを変えずにオン・オフ切り替える仕組みです。かんたんに言うと「スイッチで機能を出し入れできる」仕組みです。一部のユーザーだけに新機能を試してもらい、問題があればすぐ元に戻せるため、安全なリリースが可能になります。
セッションリプレイ(セッション録画) ユーザーが実際に画面を操作した様子を動画として録画・再生する機能です。かんたんに言うと「ユーザーの操作を後から見直せる録画」です。アンケートでは分からない「どこで迷ったか」「どこで諦めたか」が視覚的にわかります。
A/B テスト(実験) ユーザーをグループに分け、異なるデザインや機能を見せてどちらが効果的かを比較する手法です。かんたんに言うと「どちらの案がよいか数字で証明する方法」です。感覚ではなくデータに基づいて意思決定できます。
FOSS(Free and Open Source Software) ソースコード(設計図のようなもの)が公開されており、誰でも自由に使用・改変・再配布できるソフトウェアです。かんたんに言うと「中身が見えて、無料で使える自由なソフト」です。PostHog FOSS は MIT ライセンスのため商用利用も問題ありません。
モノリポ(モノリシックリポジトリ) 複数のサービスやコンポーネントを 1 つのリポジトリ(ソースコードの置き場)にまとめた構成です。かんたんに言うと「ひとつの大きな引き出しにすべてを入れる管理方法」です。PostHog もフロントエンド・バックエンド・各 SDK がひとつのリポジトリにまとまっています。
ClickHouse(クリックハウス) 大量のデータを高速に集計するために特化したデータベース(データの保管庫)です。かんたんに言うと「何億件ものイベントを素早く集計できる専用 DB」です。PostHog が大量のイベントをリアルタイムに集計できるのは、この ClickHouse のおかげです。
Celery(セロリ) バックグラウンドで処理を非同期に実行するためのジョブキューシステムです。かんたんに言うと「重い処理を裏側でこなすスタッフ」です。メール送信やデータ集計など、すぐに結果が出なくてよい処理を並行して実行することで、アプリの応答速度を保ちます。
コホート(cohort) 共通の特徴や行動を持つユーザーのグループのことです。かんたんに言うと「同じ属性でくくったユーザーのまとまり」です。たとえば「先月登録したユーザー」や「有料プランに切り替えたユーザー」などをコホートとして定義し、その行動を追うことができます。
データウェアハウス連携 Stripe(決済)・HubSpot(顧客管理)など外部サービスのデータを PostHog に取り込んで一元管理する機能です。かんたんに言うと「バラバラなデータをひとつに集める倉庫」です。製品の利用状況と売上・顧客情報を横断して分析し、より深い意思決定ができるようになります。
活用アイデア
-
SaaS プロダクトの成長分析: サインアップから有料転換・継続利用までのユーザージャーニーをファネルで可視化し、どのステップで離脱が多いかを特定して改善施策を打てます。
-
フィーチャーフラグによる安全なリリース: 新機能を最初は社内ユーザーだけに公開し、問題がなければ段階的に全ユーザーへ展開する、リスクの低いリリースフローを実現できます。
-
LLM アプリのコスト最適化: OpenAI や Anthropic などの API 呼び出しについて、レイテンシ(応答時間)・トークン数(処理量)・費用を PostHog で集計し、プロンプトの改善や呼び出し頻度の最適化に活用できます。
-
マルチサービスの統合ダッシュボード: Stripe(課金データ)・HubSpot(顧客情報)を PostHog のデータウェアハウス機能で同期し、製品利用と収益を横断分析して意思決定を加速できます。
-
セッションリプレイで UX を改善: ユーザーが「どこで迷っているか」「どこで離脱しているか」をリプレイ動画で確認し、フォームの改善やナビゲーションの見直しに役立てられます。
-
学術・OSS プロジェクトの利用統計収集: 研究ツールやオープンソースプロジェクトのウェブサイトに組み込んで、ドキュメントの閲覧傾向や機能の利用状況を無料で把握できます。
まとめ
PostHog FOSS は、かつては複数の有料 SaaS ツールを組み合わせなければ実現できなかった「プロダクト計測の全機能」を、MIT ライセンスの Self-hosted 環境でまかなえる点が最大の強みです。スタートアップから中規模チームまで、データを自社管理しながら本格的なユーザー分析・実験・エラートラッキングを運用したいチームにとって、有力な選択肢となります。モノリポ構成のためサーバーへの導入には Docker が必要ですが、公式の Hobby デプロイスクリプト 1 行で環境を構築できる手軽さも魅力です。ぜひ SaaS プロダクトの成長分析や LLM アプリのコスト最適化、フィーチャーフラグを使った安全なリリースフローの構築などに活用してみてはいかがでしょうか。