AI

OSSウェブアナリティクス比較:Plausible vs Umami vs PostHog でGA4を置き換える

オープンソースラボ編集部2026年6月13日

OSSウェブアナリティクス比較:Plausible vs Umami vs PostHog でGA4を置き換える

Google Analytics 4(GA4)はデータをGoogleのサーバーに送信するため**プライバシー規制(GDPR・CCPA)**対応が複雑になります。Plausible(軽量・シンプルなプライバシーファーストアナリティクス)・Umami(シンプルなセルフホストGA4代替)・PostHog(プロダクト分析・機能フラグ・A/B テスト統合)はOSSのアナリティクスツールです。

GA4からの移行を検討する理由

  • プライバシー規制対応: EU圏ユーザーへのGA4利用でGDPR違反リスク(オーストリア・フランスでGA4違法判決)
  • Cookieレス対応: Cookieバナーが不要になるファーストパーティデータ収集
  • データ所有権: 自社サーバーにデータを置くことで第三者にデータが渡らない
  • 広告ブロッカー対策: セルフホストのファーストパーティドメインはブロックされにくい

主要ツールの概要

Plausible Analytics

2019年にEUで公開された軽量プライバシーファーストのアナリティクスツールです。GitHubスター21k+。JavaScriptスクリプトのサイズはわずか1KB(GA4の45KBと比較)。Cookieを使わずIPアドレス+User-Agentのハッシュでユニークビジターを識別するため、Cookieバナーが不要です。シンプルなダッシュボードで直帰率・ページビュー・リファラー・デバイスを確認できます。

# PlausibleをDockerで起動
git clone https://github.com/plausible/community-edition.git plausible-ce
cd plausible-ce

# 設定ファイルを作成
cat > plausible-conf.env << 'EOF'
BASE_URL=https://analytics.yourcompany.com
SECRET_KEY_BASE=$(openssl rand -base64 48)  # ランダムキーを生成
TOTP_VAULT_KEY=$(openssl rand -base64 32)
EOF

docker compose up -d
# WebUI: https://analytics.yourcompany.com
<!-- PlausibleのトラッキングスクリプトをHTMLに追加 -->
<!-- 1KB の軽量スクリプト、Cookieなし -->
<script
  defer
  data-domain="yoursite.com"
  src="https://analytics.yourcompany.com/js/script.js">
</script>

<!-- カスタムイベントのトラッキング -->
<script>
// ボタンクリックを計測
document.getElementById('cta-button').addEventListener('click', function() {
  plausible('CTA Click', {props: {button: 'hero-cta', plan: 'enterprise'}});
});

// フォーム送信を計測
document.getElementById('contact-form').addEventListener('submit', function() {
  plausible('Form Submit', {props: {form: 'contact', page: window.location.pathname}});
});
</script>
# Plausible Stats APIでデータを取得
import requests
from datetime import datetime, timedelta

PLAUSIBLE_URL = "https://analytics.yourcompany.com"
API_KEY = "your-plausible-api-key"
SITE_ID = "yoursite.com"

headers = {"Authorization": f"Bearer {API_KEY}"}

# 過去30日のページビューとユニークビジター
response = requests.get(
    f"{PLAUSIBLE_URL}/api/v1/stats/aggregate",
    headers=headers,
    params={
        "site_id": SITE_ID,
        "period": "30d",
        "metrics": "pageviews,visitors,bounce_rate,visit_duration",
    }
)
stats = response.json()["results"]
print(f"30日PV: {stats['pageviews']['value']:,}")
print(f"ユニークビジター: {stats['visitors']['value']:,}")
print(f"直帰率: {stats['bounce_rate']['value']}%")

# トップページ一覧
pages = requests.get(
    f"{PLAUSIBLE_URL}/api/v1/stats/breakdown",
    headers=headers,
    params={
        "site_id": SITE_ID,
        "period": "30d",
        "property": "event:page",
        "metrics": "pageviews,visitors",
        "limit": 10,
    }
).json()["results"]
for page in pages:
    print(f"{page['page']}: {page['pageviews']:,} PV")

Umami

2020年に公開されたGo/Next.js製のシンプルなウェブアナリティクスです。GitHubスター24k+。GA4に似た直感的なUIでページビュー・リファラー・ブラウザ・OSを確認できます。マルチサイト対応で複数ウェブサイトを1つのダッシュボードで管理でき、チームメンバーへのアクセス権付与も可能です。PostgreSQLまたはMySQLで動作します。

# docker-compose.yml - Umami
version: '3.8'
services:
  umami:
    image: ghcr.io/umami-software/umami:postgresql-latest
    ports:
      - "3000:3000"
    environment:
      DATABASE_URL: postgresql://umami:umami_password@db:5432/umami
      DATABASE_TYPE: postgresql
      APP_SECRET: your-random-secret-here
    depends_on:
      db:
        condition: service_healthy
    restart: always

  db:
    image: postgres:15-alpine
    environment:
      POSTGRES_DB: umami
      POSTGRES_USER: umami
      POSTGRES_PASSWORD: umami_password
    volumes:
      - umami_db_data:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U umami"]
      interval: 5s
      timeout: 5s
      retries: 5

volumes:
  umami_db_data:
<!-- UmamiのトラッキングスクリプトをHTMLに追加 -->
<script
  async
  src="https://analytics.yourcompany.com/script.js"
  data-website-id="your-website-id-from-dashboard">
</script>

<!-- カスタムイベントのトラッキング -->
<script>
// data-umami-event属性でクリックイベントを自動計測
</script>
<button data-umami-event="購入ボタンクリック" data-umami-event-plan="pro">
  Proプランを購入
</button>

<!-- JavaScriptでイベント送信 -->
<script>
umami.track('フォーム送信', {form: 'newsletter', source: 'footer'});
</script>

PostHog

2020年に公開されたオールインワンのプロダクトアナリティクスプラットフォームです。GitHubスター24k+。セッションレコーディング・機能フラグ・A/Bテスト・ファネル分析・コホート分析を統合。Mixpanel(月$25〜)・Amplitude(月$61〜)のOSS代替として機能します。

# PostHogをDockerで起動(推奨: 8GB RAM以上)
git clone https://github.com/PostHog/deployment
cd deployment
./deploy.sh   # セットアップスクリプトが走る
# WebUI: http://localhost:8000
// PostHog JavaScript SDKの初期化
import posthog from 'posthog-js'

posthog.init('your-posthog-key', {
  api_host: 'https://analytics.yourcompany.com',
  session_recording: {
    maskAllInputs: true,     // 入力フィールドをマスク
    maskInputOptions: { password: true }
  },
  capture_pageview: true,
  autocapture: true,   // クリック・フォーム・ページ遷移を自動キャプチャ
})

// カスタムイベント
posthog.capture('商品購入', {
  product_id: 'prod-123',
  price: 9800,
  currency: 'JPY',
  category: 'Software'
})

// 機能フラグでA/Bテスト
if (posthog.isFeatureEnabled('new-checkout-flow')) {
  // 新しいチェックアウトフローを表示
  showNewCheckout()
} else {
  showOldCheckout()
}

// ファネル分析用のユーザー識別
posthog.identify('user-12345', {
  email: 'user@example.com',
  plan: 'pro',
  company: 'Acme Corp'
})

機能比較表

比較項目PlausibleUmamiPostHog
セットアップ難易度
スクリプトサイズ1KB2KB50KB+
セッションレコーディング
機能フラグ・A/Bテスト
ファネル・コホート分析限定的限定的✅(高機能)
プライバシー特化✅(最強)
必要メモリ1GB〜512MB〜8GB〜

アナリティクスデータをGrafanaダッシュボードと統合するにはDevOpsカテゴリ/categories/devopsのGrafanaと組み合わせてください。マーケティングデータの管理・CRMとの連携にはMarketingカテゴリ/categories/marketingのツールを参照してください。

FAQ

Q. GA4からPlausibleに移行する場合のデータ引き継ぎは可能ですか?

A. 残念ながらGA4の過去データをPlausibleにインポートする公式方法はありません。移行後は新しいデータのみPlausibleで計測します。移行中の並行運用(GA4とPlausibleを両方設置)を2〜4週間行い、傾向が一致することを確認してからGA4を削除するのがベストプラクティスです。過去データの参照はGA4のプロパティを削除せず「データ収集を停止」するだけに留めておくと18ヶ月間はGA4で履歴を確認できます。

Q. Plausibleはサーバー側レンダリング(SSR)・Next.jsで使えますか?

A. はい。Next.jsではNext Scriptコンポーネントを使います。

// app/layout.tsx または pages/_app.tsx
import Script from 'next/script'

export default function RootLayout({ children }) {
  return (
    <html>
      <head>
        <Script
          defer
          data-domain="yoursite.com"
          src="https://analytics.yourcompany.com/js/script.js"
          strategy="afterInteractive"
        />
      </head>
      <body>{children}</body>
    </html>
  )
}

Q. PostHogのセッションレコーディングはGDPR適合していますか?

A. セルフホスト版PostHogを使えば、データが自社サーバーに保存されるためGDPR適合が容易です。設定で入力フィールド・画像・特定のDOM要素をマスクできます。maskAllInputs: trueで全入力をマスクし、さらにmaskInputOptionsで特定フィールドタイプ(パスワード・クレジットカード等)を指定できます。クラウド版PostHog(app.posthog.com)はデータがUS/EUのサーバーに送信されるため、EU圏ユーザーのデータ収集には適切なDPA(データ処理契約)が必要です。

Q. UmamiとPlausibleはどちらがシンプルですか?

A. どちらもシンプルですが異なります。Plausible: Cookieなし・バナー不要・1KB・インフラ要件が低い(1GB RAM)。Umami: マルチサイト対応・カスタムイベントが豊富・チームメンバーアクセス管理。単一サイトで最もシンプルに始めるならPlausible、複数サイト管理・チーム共有なら Umamiが向いています。

まとめ

ユースケース推奨ツール
Cookieバナー不要・最軽量Plausible
マルチサイト・シンプルGA代替Umami
セッション録画・A/Bテスト・機能フラグPostHog

関連外部リソース

他の記事も読む

Let's Build Together

OSS導入、自社だけで悩まない。

ツール選定から構築・運用・AI活用まで、オープンソースラボ運営元のClasslessが伴走します。初回のご相談は無料です。