OSS CDPと顧客データ統合比較:RudderStack vs Segment代替 vs PostHog
オープンソースラボ編集部 ・ 2026年6月14日
OSS CDPと顧客データ統合比較:RudderStack vs Segment代替 vs PostHog
Segmentは月$120〜(プロフェッショナルプランは月$10k+)・Amplitudeは月$49〜と、顧客データ基盤の費用は急増します。RudderStack(OSSのCustomer Data Platform)・PostHog(プロダクトアナリティクス + CD)・Jitsu(軽量イベント収集)はShopify代替として注目されるOSSのCDPソリューションです。
Customer Data Platform(CDP)の役割
CDPはWebサイト・モバイルアプリ・サーバーから発生するユーザーイベントを収集し、分析ツール・マーケティングツール・CRMに転送する基盤です。
- イベント収集: ページビュー・クリック・フォーム送信・購入等のユーザー行動を記録
- ID解決: 同一ユーザーの複数デバイス・セッションを紐づけ
- データ転送: BigQuery・Snowflake・Salesforce等に自動転送
- リバースETL: DWHのデータをCRM・メールツール等に逆方向に連携
主要ツールの概要
RudderStack
2019年に設立されたRudderStack Incが開発するオープンソースのCDPです。GitHubスター4k+。Segment互換のAPIを提供するため、既存のSegment SDKをそのままRudderStackに向けるだけで移行できます。100以上のデスティネーション(Salesforce・HubSpot・BigQuery・Amplitude等)への転送をサポートします。
# RudderStackをDockerで起動
git clone https://github.com/rudderlabs/rudder-server.git
cd rudder-server
# バックエンドの起動(PostgreSQL + RudderStack Server)
docker compose -f docker-compose.yml up -d
# バックエンドAPI: http://localhost:8080
# コントロールプレーン: https://app.rudderstack.com(クラウド版)
// RudderStack JavaScript SDK(Segment互換API)
// Segmentと同じAPIなのでコードほぼ変更なしで移行可能
const rudderanalytics = require("@rudderstack/analytics-js");
rudderanalytics.load(
"YOUR_WRITE_KEY",
"https://rudderstack.yourcompany.com/v1/batch",
{ logLevel: "INFO" }
);
// ページビューを記録
rudderanalytics.page("Home");
// ユーザーを識別(ログイン時)
rudderanalytics.identify("user-12345", {
email: "user@example.com",
name: "山田太郎",
plan: "pro",
company: "Acme Corp",
createdAt: new Date("2026-01-01"),
});
// イベントを記録
rudderanalytics.track("Product Purchased", {
productId: "prod-789",
productName: "AI Writing Assistant",
price: 4980,
currency: "JPY",
category: "Software",
});
// グループ(会社単位のトラッキング)
rudderanalytics.group("company-456", {
name: "Acme Corp",
industry: "Technology",
employees: 100,
});
# RudderStack Python SDKでサーバーサイドイベントを送信
from rudder_analytics import Client
client = Client(
"YOUR_WRITE_KEY",
host="https://rudderstack.yourcompany.com"
)
# サーバーサイドイベント(購入確定時等)
client.track(
user_id="user-12345",
event="Order Completed",
properties={
"orderId": "ord-20260614-001",
"total": 29800,
"currency": "JPY",
"products": [
{"id": "prod-789", "name": "AI Writing Assistant", "price": 4980},
{"id": "prod-101", "name": "Team Collaboration Tool", "price": 24820},
],
}
)
PostHog
2020年にY Combinatorを経て設立されたPostHog, Inc.が開発するオープンソースのプロダクトアナリティクスプラットフォームです。GitHubスター24k+。ページビュー・ファネル・コホート・A/Bテスト・セッションリプレイ・機能フラグをセルフホストで利用できます。CDPとしての機能(イベント収集・転送)も提供しており、1ツールでアナリティクス全体をカバーできます。
# PostHogをDockerで起動(推奨: 4GB RAM以上)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/posthog/posthog/HEAD/bin/deploy-hobby)"
# または Docker Compose
curl https://raw.githubusercontent.com/posthog/posthog/HEAD/docker-compose.hobby.yml -o docker-compose.yml
docker compose up -d
# WebUI: http://localhost:8000
// PostHog Next.jsでの統合(App Router)
// app/providers.tsx
"use client";
import posthog from "posthog-js";
import { PostHogProvider } from "posthog-js/react";
import { useEffect } from "react";
export function PHProvider({ children }: { children: React.ReactNode }) {
useEffect(() => {
posthog.init(process.env.NEXT_PUBLIC_POSTHOG_KEY!, {
api_host: "https://posthog.yourcompany.com",
person_profiles: "identified_only",
capture_pageview: false, // App Routerではmanualでpage trackingを制御
});
}, []);
return <PostHogProvider client={posthog}>{children}</PostHogProvider>;
}
// イベントを記録(コンポーネント内)
import { usePostHog } from "posthog-js/react";
export function PurchaseButton({ productId }: { productId: string }) {
const posthog = usePostHog();
const handlePurchase = () => {
posthog.capture("purchase_button_clicked", { product_id: productId });
// 決済処理...
};
return <button onClick={handlePurchase}>購入する</button>;
}
# PostHog Python SDK(サーバーサイド)
from posthog import Posthog
posthog = Posthog(
project_api_key="phc_your_project_key",
host="https://posthog.yourcompany.com"
)
# 機能フラグを確認(A/Bテスト)
flag_enabled = posthog.get_feature_flag("new-checkout-flow", "user-12345")
if flag_enabled:
# 新しいチェックアウトフローを表示
pass
# 実験(A/Bテスト)結果を記録
posthog.capture(
distinct_id="user-12345",
event="$experiment_started",
properties={
"$experiment_name": "checkout_flow",
"$experiment_variant": "control" if not flag_enabled else "test",
}
)
機能比較表
| 比較項目 | RudderStack | PostHog | Jitsu |
|---|---|---|---|
| 主な役割 | CDP・データ転送 | プロダクトアナリティクス | イベント収集 |
| Segment互換 | ✅ | 部分的 | ✅ |
| A/Bテスト | ❌ | ✅ | ❌ |
| セッションリプレイ | ❌ | ✅ | ❌ |
| デスティネーション数 | 100+ | 30+ | 20+ |
| BigQuery転送 | ✅ | ✅ | ✅ |
| GitHub Stars | 4k+ | 24k+ | 3k+ |
CDPと連携するCRMにはMarketingカテゴリ/categories/marketingのOSS CRMを参照してください。収集データを可視化するBIツールはDevOpsカテゴリ/categories/devopsのApache Supersetで構築できます。
FAQ
Q. SegmentからRudderStackへの移行はどのくらい大変ですか?
A. 非常に簡単です。RudderStackはSegment互換APIを実装しているため、ほぼコード変更なしで移行できます。
// Before(Segment)
analytics.load('YOUR_SEGMENT_WRITE_KEY');
analytics.track('Event Name', {properties});
// After(RudderStack)- 変更はURLだけ
rudderanalytics.load(
'YOUR_RUDDERSTACK_WRITE_KEY',
'https://rudderstack.yourcompany.com'
);
rudderanalytics.track('Event Name', {properties}); // ← 同じコード
デスティネーションの設定: Segmentのコントロールプレーンに設定していたデスティネーション(Salesforce・HubSpot・BigQuery等)をRudderStackのコントロールプレーンに再設定する必要があります。
Q. PostHogのセルフホスト版はどのくらいのスペックが必要ですか?
A. スケールに応じて異なります。月100万イベント以下: 2vCPU・4GB RAM・50GB SSD(月$20のVPS)で十分。月1000万イベント: 4vCPU・8GB RAM・200GB SSD推奨。PostHogはClickHouseをデータストアに使うため、ストレージの増加を考慮する必要があります。PostHogはhobbyモードで起動した場合、月100万イベントを超えるとWarningを表示し、有料クラウドへのアップグレードを提案しますが、セルフホスト版ではイベント数の制限なしに使えます。
Q. PostHogでA/Bテストを設定する方法は?
A. PostHog実験(Experiments)機能を使います。設定手順: ①PostHog管理画面 > Experiments > New Experiment②バリアント(Control/Test)を定義③ターゲットユーザーのロールアウト割合を設定④勝利基準(コンバージョンレート・ファネル完了数等)を設定⑤フロントエンドで機能フラグを確認してUIを分岐。統計的有意性はPostHogが自動計算し、「勝者」のバリアントを推薦します。
Q. リバースETL(DWHからCRMへのデータ連携)はどのツールで実現しますか?
A. RudderStackはリバースETL機能(Warehouse Sources)を提供します。設定例:
-- BigQueryのモデルクエリ(RudderStackが定期実行)
SELECT
user_id,
email,
COUNT(DISTINCT order_id) AS total_orders,
SUM(revenue) AS lifetime_value,
MAX(order_date) AS last_order_date
FROM `project.dataset.orders`
WHERE status = 'completed'
GROUP BY user_id, email
-- このクエリ結果がHubSpot・Salesforce等のCRMに自動同期される
まとめ
| ユースケース | 推奨ツール |
|---|---|
| Segment代替・マルチデスティネーション | RudderStack |
| プロダクトアナリティクス・A/Bテスト | PostHog |
| 軽量イベント収集のみ | Jitsu |