social-media-analyzer について
ソーシャルメディア担当者向けのキャンペーン分析スキルです。エンゲージメント率や ROI を計算し、プラットフォーム基準との比較や改善提案を行います。
主な機能
- 01エンゲージメント率、CTR、リーチ率の計算
- 02キャンペーン指標の集計と ROI 推定
- 03プラットフォーム基準との比較
- 04投稿の好成績・低成績の特定
- 05最適化の提案
活用シーン
- 01ソーシャルメディア施策の評価
- 02投稿とプラットフォーム基準の比較
- 03広告費用対効果の計算
- 04競合コンテンツの差分分析
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ borghei/ claude-skills --skill social-media-analyzerインストール後、Claude Code で/social-media-analyzerを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
HOW_TO_USE.mdassets/expected_output.jsonsample_input.jsonreferences/platform-benchmarks.mdscripts/analyze_performance.pycalculate_metrics.py詳細
ソーシャルメディア分析ツール
エンゲージメント指標、ROI 計算、プラットフォーム別ベンチマークを用いたキャンペーンパフォーマンス分析です。
目次
まず確認すること
分析の前に、以下の情報を確認してください。不明または曖昧な項目があれば、推測せずに質問してください。
- プラットフォーム — Instagram、Facebook、Twitter/X、LinkedIn、TikTokのいずれか。比較に使用する適切なベンチマークセットを選択します
- 投稿/キャンペーンデータ — 投稿ごとの「いいね」、コメント、シェア、保存、リーチ。必須項目です。リーチはインプレッションではなく、ユニークユーザー数である必要があります
- 広告費 — 対象期間の合計費用。ROI/CPE/ROASを計算するかどうかを決定します
- 分析の目的 — 全体監査、上位パフォーマンスの傾向、ROI、競合比較のいずれか。出力内容を絞り込みます
停止ルール:出力に最も影響する2~3項目だけを質問してください。ユーザーが「とりあえず下書きを作って」と言った場合は、そのまま進め、成果物の冒頭に前提条件を記載してください。
分析ワークフロー
ソーシャルメディアキャンペーンのパフォーマンスを分析します。
- 入力データがすべてそろっているか確認します(リーチ > 0、日付が有効)
- 投稿ごとのエンゲージメント指標を計算します
- キャンペーン全体の指標を集計します
- 広告費が指定されている場合はROIを計算します
- プラットフォーム別ベンチマークと比較します
- パフォーマンスが最も高い投稿と最も低い投稿を特定します
- 推奨事項を作成します
- 検証: エンゲージメント率 < 100%、ROIが広告費データと一致すること
入力要件
| フィールド | 必須 | 説明 |
|---|---|---|
| platform | はい | instagram、facebook、twitter、linkedin、tiktok |
| posts[] | はい | 投稿データの配列 |
| posts[].likes | はい | いいね/リアクション数 |
| posts[].comments | はい | コメント数 |
| posts[].reach | はい | リーチしたユニークユーザー数 |
| posts[].impressions | いいえ | 合計表示回数 |
| posts[].shares | いいえ | シェア/リツイート数 |
| posts[].saves | いいえ | 保存/ブックマーク数 |
| posts[].clicks | いいえ | リンクのクリック数 |
| total_spend | いいえ | 広告費(ROI計算用) |
データ検証チェック項目
分析の前に、以下を確認してください。
- すべての投稿でリーチ > 0(ゼロ除算を回避)
- エンゲージメント数が0以上
- 日付範囲が有効(開始日 < 終了日)
- プラットフォームが認識されている
- ROIを求める場合、広告費 > 0
エンゲージメント指標
エンゲージメント率の計算
Engagement Rate = (Likes + Comments + Shares + Saves) / Reach × 100
指標の定義
| 指標 | 計算式 | 解釈 |
|---|---|---|
| エンゲージメント率 | エンゲージメント数 / リーチ × 100 | オーディエンスの反応レベル |
| CTR | クリック数 / インプレッション × 100 | コンテンツのクリック訴求力 |
| リーチ率 | リーチ / フォロワー数 × 100 | コンテンツの配信範囲 |
| バイラル率 | シェア数 / インプレッション × 100 | シェアされる可能性 |
| 保存率 | 保存数 / リーチ × 100 | コンテンツの価値 |
パフォーマンスの分類
| 評価 | エンゲージメント率 | 対応 |
|---|---|---|
| 非常に良好 | > 6% | 規模を拡大し、再現します |
| 良好 | 3-6% | 最適化して拡大します |
| 平均的 | 1-3% | 改善策をテストします |
| 低調 | < 1% | 分析して方向転換します |
ROI 計算
広告費用対効果を計算します。
- すべての投稿のエンゲージメント数を合計します
- エンゲージメント単価(CPE)を計算します
- クリック数がある場合はクリック単価(CPC)を計算します
- ベンチマーク率を使用してエンゲージメント価値を推定します
- ROIの割合を計算します
- 検証: ROI = (価値 - 広告費) / 広告費 × 100
ROIの計算式
| 指標 | 計算式 |
|---|---|
| エンゲージメント単価(CPE) | 広告費合計 / エンゲージメント合計 |
| クリック単価(CPC) | 広告費合計 / クリック数合計 |
| インプレッション単価(CPM) | (広告費 / インプレッション数)× 1000 |
| 広告費用対効果(ROAS) | 売上 / 広告費 |
エンゲージメント価値の推定値
| アクション | 価値 | 根拠 |
|---|---|---|
| いいね | $0.50 | ブランド認知 |
| コメント | $2.00 | 積極的なエンゲージメント |
| シェア | $5.00 | 拡散 |
| 保存 | $3.00 | 意向の表れ |
| クリック | $1.50 | トラフィック価値 |
ROI の解釈
| ROI % | 評価 | 推奨事項 |
|---|---|---|
| > 500% | 非常に優れている | 予算を大幅に増やします |
| 200-500% | 良好 | 予算を適度に増やします |
| 100-200% | 許容範囲 | 拡大する前に最適化します |
| 0-100% | 損益分岐点 | ターゲティングとクリエイティブを見直します |
| < 0% | マイナス | 一時停止して再構成します |
プラットフォームのベンチマーク
プラットフォーム別エンゲージメント率
| プラットフォーム | 平均 | 良好 | 非常に優れている |
|---|---|---|---|
| 1.22% | 3-6% | >6% | |
| 0.07% | 0.5-1% | >1% | |
| Twitter/X | 0.05% | 0.1-0.5% | >0.5% |
| 2.0% | 3-5% | >5% | |
| TikTok | 5.96% | 8-15% | >15% |
プラットフォーム別 CTR
| プラットフォーム | 平均 | 良好 | 非常に優れている |
|---|---|---|---|
| 0.22% | 0.5-1% | >1% | |
| 0.90% | 1.5-2.5% | >2.5% | |
| 0.44% | 1-2% | >2% | |
| TikTok | 0.30% | 0.5-1% | >1% |
プラットフォーム別 CPC
| プラットフォーム | 平均 | 良好 |
|---|---|---|
| $0.97 | <$0.50 | |
| $1.20 | <$0.70 | |
| $5.26 | <$3.00 | |
| TikTok | $1.00 | <$0.50 |
ベンチマークの全データについては、references/platform-benchmarks.md を参照してください。
ツール
指標を計算する
python scripts/calculate_metrics.py assets/sample_input.json
各投稿のエンゲージメント率、CTR、リーチ率、およびキャンペーン全体の合計を計算します。
パフォーマンスを分析する
python scripts/analyze_performance.py assets/sample_input.json
ROI、ベンチマーク、推奨事項を含む、パフォーマンスの詳細な分析を生成します。
出力内容:
- キャンペーンレベルの指標
- 投稿ごとの内訳
- ベンチマークとの比較
- 成績上位の投稿のランキング
- 実行可能な推奨事項
例
入力例
assets/sample_input.json を参照してください:
{
"platform": "instagram",
"total_spend": 500,
"posts": [
{
"post_id": "post_001",
"content_type": "image",
"likes": 342,
"comments": 28,
"shares": 15,
"saves": 45,
"reach": 5200,
"impressions": 8500,
"clicks": 120
}
]
}
出力例
assets/expected_output.json を参照してください:
{
"campaign_metrics": {
"total_engagements": 1521,
"avg_engagement_rate": 8.36,
"ctr": 1.55
},
"roi_metrics": {
"total_spend": 500.0,
"cost_per_engagement": 0.33,
"roi_percentage": 660.5
},
"insights": {
"overall_health": "excellent",
"benchmark_comparison": {
"engagement_status": "excellent",
"engagement_benchmark": "1.22%",
"engagement_actual": "8.36%"
}
}
}
解釈
サンプルキャンペーンでは、次の結果が示されています:
- エンゲージメント率 8.36%、ベンチマーク 1.22% = 非常に優れている(平均の 6.8 倍)
- CTR 1.55%、ベンチマーク 0.22% = 非常に優れている(平均の 7 倍)
- ROI 660% = 500 ドルの支出に対して際立ったリターン
- 推奨事項: 予算を拡大し、成功した要素を再現します
参考ドキュメント
プラットフォームのベンチマーク
references/platform-benchmarks.md には以下が含まれています:
- プラットフォーム別・業界別のエンゲージメント率のベンチマーク
- オーガニックコンテンツと有料コンテンツの CTR ベンチマーク
- コストのベンチマーク(CPC、CPM、CPE)
- プラットフォーム別のコンテンツタイプのパフォーマンス
- 最適な投稿時間と頻度
- ROI の計算式
プロアクティブなトリガー
- エンゲージメント率がプラットフォーム平均を下回る -- コンテンツが共感を得られていません。成績上位の投稿を分析し、再現できるパターンを探します。
- フォロワーの増加が停滞している -- コンテンツの配信または投稿頻度に問題があります。投稿パターンとコンテンツの構成を監査します。
- インプレッションは多いが、エンゲージメントが低い -- リーチはあるものの、共感を得られていません。コンテンツの品質または関連性の問題に対処する必要があります。
- 競合が大きく上回っている -- コンテンツのギャップが見つかりました。競合の成功した投稿を分析し、形式やトピックに関する知見を得ます。
出力成果物
| 次のように依頼すると… | 次のものが得られます… |
|---|---|
| 「ソーシャルメディア監査」 | ベンチマークを含む、プラットフォーム横断のパフォーマンス分析 |
| 「何が好調ですか?」 | パターンと推奨事項を含む、上位コンテンツの分析 |
| 「競合のソーシャル分析」 | ギャップを含む、競合とのソーシャルメディア比較 |
| 「キャンペーン ROI」 | エンゲージメント価値の推定を含む、ROI の詳細な計算 |
コミュニケーション
すべての出力は品質検証を経ています:
- 自己検証:情報源の明示、前提の監査、確信度の評価
- 出力形式:結論を最初に示し、次に内容(確信度を含む)、理由、実行方法を説明
- すべての調査結果に、検証済み、中程度の確信、または推定の確信度ラベルを付与
関連スキル
- campaign-analytics:ソーシャルメディアを他のチャネルと合わせたクロスチャネル分析に使用します。
- content-creator:分析結果に基づいて最適化されたソーシャルメディアコンテンツの作成に使用します。
- marketing-demand-acquisition:ソーシャルメディアをより広範な需要創出戦略に統合する際に使用します。
- marketing-strategy-pmm:ソーシャルコンテンツをプロダクトマーケティングのポジショニングに合わせる際に使用します。
トラブルシューティング
| 問題 | 考えられる原因 | 解決策 |
|---|---|---|
| エンゲージメント率が非現実的に高く表示される(>50%) | リーチ値がエンゲージメント数に対して低すぎる、またはリーチとインプレッションのデータが入れ替わっている | reach がインプレッションではなく、リーチしたユニークユーザーを表していることを確認してください。エンゲージメント率 = (いいね + コメント + シェア + 保存) / リーチです。2025年以降のInstagramデータを使用している場合、Instagramでは主要指標が「インプレッション」から「ビュー」に変更されているため、正しいフィールドを使用していることを確認してください |
| ベンチマーク比較で「no_benchmark_available」と表示される | 入力JSON内のプラットフォーム名が想定される値と一致していない | 小文字のプラットフォーム名を正確に使用してください:instagram、facebook、twitter、linkedin、tiktok。アナライザーはこれらの文字列と完全一致で照合します |
| エンゲージメントが良好なのにROI計算がマイナスになる | エンゲージメント価値の推定値が、業界に対して保守的すぎる | デフォルトのエンゲージメント価値モデルでは、いいね1件あたり$0.50、コメント1件あたり$2.00、シェア1件あたり$5.00、保存1件あたり$3.00、クリック1件あたり$1.50を使用します。特定の業種に合わせて、calculate_metrics.py 内の値を調整してください。一般にB2B企業はB2C企業よりもエンゲージメント1件あたりの価値が高くなります |
| TikTokの指標がベンチマークと比べて低い | ビュー基準の指標が標準であるプラットフォームで、リーチ基準の計算を使用している | TikTokの2026年のベンチマークエンゲージメント率2.50~3.70%は、リーチではなくビューを基準に計算されています。正確に比較できるよう、TikTokデータでは動画再生数をreachフィールドに使用してください。TikTokのエンゲージメント率は2025年に前年比49%上昇しました |
| LinkedInのエンゲージメントが予想より低く見える | 古いベンチマークと比較している | LinkedInの2026年のエンゲージメント率の中央値は約3.85~6.1%で、他のプラットフォームより大幅に高くなっています。カルーセル/ドキュメント投稿は最も高いエンゲージメントを獲得します(中央値で最大21.77%)。率が2%未満の場合は、企業からのお知らせではなく、会話を促すコンテンツに注力してください |
| コンテンツの品質が一定しているのにInstagramの指標が低下している | 2025~2026年のアルゴリズムと指標定義の変更 | Instagramでは、「インプレッション」と「再生」に代わり、リール、ストーリーズ、投稿のすべての形式で主要指標が「ビュー」に変更されました。現在、カルーセル投稿が最も高いエンゲージメントを獲得します。Metaは2026年6月までに、Graph APIのリーチ指標を「視聴者」指標に置き換える予定です。それに応じてデータ収集方法を調整してください |
| キャンペーン分析の投稿数が少なすぎて、信頼できるインサイトが得られない | サンプルサイズが小さいため、平均値の信頼性が低い | 意味のある分析には、最低10件の投稿を推奨します。analyze_performance.py スクリプトは、投稿数が10件未満のキャンペーンにフラグを付けます。統計的な信頼性を確保するには、分析期間あたり30件以上を目指してください |
成功基準
- プラットフォーム別エンゲージメント率(2026年のベンチマーク):Instagramは0.50~0.70%(平均)、3~6%(良好)、6%超(優秀)。Facebookは0.06~0.09%(平均)、0.5~1%(良好)。LinkedInは3.85~6.1%(平均)、6%超(良好)。TikTokは2.50~3.70%(平均)、8~15%(良好)、15%超(優秀)。Twitter/Xは0.03~0.05%(平均)、0.1~0.5%(良好)
- クリック率:Instagramは0.5%超(良好)、Facebookは1.5%超(良好)、LinkedInは1.0%超(良好)、TikTokは0.5%超(良好)。注目のスニペットやカルーセルは、各プラットフォームで最も高いクリック率を促進します
- クリック単価:Facebookは0.50ドル未満(良好)、Instagramは0.70ドル未満(良好)、LinkedInは3.00ドル未満(良好。ただしB2Bでは平均4~5ドル以上)、TikTokは0.50ドル未満(良好)。LinkedInのCPCは2023年以降89%上昇しています
- ROIのしきい値:有料ソーシャルでは、最低200%のROIを目標にします。500%を超えるキャンペーンは優秀であり、規模を拡大する必要があります。100%を下回るキャンペーンは、クリエイティブまたはターゲティングをただちに見直す必要があります
- コンテンツ形式のパフォーマンス:プラットフォームごとにエンゲージメントの高い形式を優先します。LinkedInではカルーセル/ドキュメント投稿(エンゲージメント率の中央値21.77%)、InstagramではReels、TikTokでは短尺動画を優先します。毎月、少なくとも3種類のコンテンツ形式をテストします
- 投稿頻度:一貫した投稿ペースを維持します。LinkedInは週3~5回、Instagramは週4~7回、TikTokは週3~5回です。LinkedInのアルゴリズムは、最初の90分間に有意義なエンゲージメントを生み出すコンテンツを優先します
- 分析頻度:運用中のキャンペーンは、毎週、包括的なパフォーマンス分析を実施します。月ごとの推移を比較し、成長または減少の傾向を特定します。プラットフォームの標準は急速に変化するため、四半期ごとにベンチマークの基準値を更新します
対象範囲と制限事項
対象範囲:
- 投稿単位およびキャンペーン単位のエンゲージメント指標(エンゲージメント率、クリック率、リーチ率、バイラル率、保存率)
- エンゲージメント価値の推定と費用効率指標(CPE、CPC、CPM、ROAS)を用いたROI計算
- Instagram、Facebook、Twitter/X、LinkedIn、TikTokのプラットフォームベンチマークとの比較
- 上位/下位パフォーマンスの特定と順位付け
- ベンチマーク評価に基づく、実行可能な推奨事項
対象範囲外:
- ソーシャルメディアプラットフォームへのリアルタイムAPI接続(スクリプトはエクスポートした静的なJSONデータを分析します)
- ソーシャルメディアのスケジュール管理、公開、コンテンツ作成
- フォロワー増加の追跡やオーディエンスの人口統計分析
- 競合他社のソーシャルメディア監視(専用のソーシャルリスニングツールを使用してください)
- インフルエンサーの特定やコラボレーション管理
- ソーシャルコマースやショッピングの指標
- 動画固有の分析(視聴時間、完了率、離脱ポイント)
- コメントやメンションのセンチメント分析(テキストのセンチメント分析には、app-store-optimizationスキルのreview_analyzerを使用してください)
- クロスプラットフォームでのID解決や重複排除
プラットフォームAPIの変更(2025~2026年):
- Meta/Instagramは、2026年6月までにGraph APIの「reach」指標を「Viewers」に置き換える予定です
- Instagramはすべての形式で主要指標を「Views」に変更し、「Impressions」と「Plays」を置き換えました
- TikTokは2025年にAPIアクセスの承認プロセスを厳格化しました
- LinkedInはAIを活用した会話型検索を追加しました。アルゴリズムは、洗練された企業向けの最新情報よりも、人を中心としたコンテンツを優先するようになりました
連携ポイント
| 連携先 | 目的 | 接続方法 |
|---|---|---|
| Meta Business Suite | Instagram および Facebook のキャンペーンデータをエクスポートします | 投稿単位の指標(いいね、コメント、シェア、リーチ、インプレッション、クリック)を JSON としてエクスポートし、calculate_metrics.py と analyze_performance.py に渡します。注:「Views」は 2026 年に「Impressions」に置き換わる予定です |
| LinkedIn Campaign Manager | LinkedIn 広告およびオーガニック投稿のパフォーマンスデータをエクスポートします | 投稿ごとのエンゲージメント指標をエクスポートします。LinkedIn のネイティブ分析には、「Viewer」のユーザー属性と AI 検索での可視性データが追加されています |
| TikTok Business Center | TikTok キャンペーンのパフォーマンスデータをエクスポートします | 動画単位の指標をエクスポートします。エンゲージメント率の計算では、リーチに相当する指標として動画の再生回数を使用します |
| Google Analytics 4 (GA4) | ウェブサイトへのソーシャルトラフィックとコンバージョンを追跡します | ソーシャルキャンペーンの UTM パラメーターを GA4 に接続して、その後のコンバージョンを測定します。アトリビューション全般には campaign-analytics スキルを使用します |
| campaign-analytics skill | チャネル横断の ROI 比較 | ソーシャルメディアの ROI データを他のチャネルとともに campaign_roi_calculator.py に渡し、統合されたポートフォリオ分析を行います |
| content-creator skill | パフォーマンスデータに基づくコンテンツの最適化 | パフォーマンス上位の投稿分析をコンテンツ戦略に役立てます。brand_voice_analyzer.py を適用し、ソーシャルコンテンツがブランドの声に合っていることを確認します |
| marketing-demand-acquisition skill | 需要創出チャネルとしてのソーシャル | ソーシャルのパフォーマンスデータを需要創出チャネル構成の評価に統合します。ソーシャルの CAC データを他の獲得チャネルと併せて使用します |
ツールリファレンス
calculate_metrics.py
種類: Python ライブラリ(インポートして使用、CLI ではありません)
クラス:
SocialMediaMetricsCalculator(campaign_data: Dict)
コンストラクターの入力: {"platform": "instagram", "total_spend": 500, "posts": [{"post_id": "str", "content_type": "str", "likes": int, "comments": int, "shares": int, "saves": int, "reach": int, "impressions": int, "clicks": int}]}
主なメソッド:
| メソッド | パラメーター | 戻り値 |
|---|---|---|
calculate_engagement_rate() | post: Dict(likes、comments、shares、saves、reach) | エンゲージメント率(パーセント、float)。計算式:(likes + comments + shares + saves) / reach * 100 |
calculate_ctr() | clicks: int、impressions: int | CTR(パーセント、float) |
calculate_campaign_metrics() | なし(コンストラクターのデータを使用) | platform、total_posts、total_engagements、total_reach、total_impressions、total_clicks、avg_engagement_rate、ctr を含む Dict |
calculate_roi_metrics() | なし(コンストラクターのデータを使用) | total_spend、cost_per_engagement、cost_per_click、estimated_value(デフォルトはエンゲージメントあたり $2.50)、roi_percentage を含む Dict |
identify_top_posts() | metric: str = 'engagement_rate'、limit: int = 5 | 指定した指標に基づき、上位投稿を並べ替えたリスト。対応する指標:engagement_rate、likes、comments、shares、clicks |
analyze_all() | なし | campaign_metrics、roi_metrics、top_posts をまとめた Dict |
analyze_performance.py
種類: Python ライブラリ(インポートして使用、CLI ではありません)
クラス:
PerformanceAnalyzer(campaign_metrics: Dict, roi_metrics: Dict)
組み込みベンチマーク: facebook、instagram、twitter、linkedin、tiktok のエンゲージメント率と CTR のベンチマークです。
主なメソッド:
| メソッド | パラメーター | 戻り値 |
|---|---|---|
benchmark_performance() | なし | engagement_status、engagement_benchmark、engagement_actual、ctr_status、ctr_benchmark、ctr_actual を含む Dict。ステータス値:excellent(ベンチマークの 1.5 倍以上)、good(ベンチマーク以上)、below_average |
generate_recommendations() | なし | エンゲージメント率、CTR、CPC、ROI、投稿数のしきい値に基づく、実行可能な推奨事項の文字列リスト |
generate_insights() | なし | overall_health(excellent/good/needs_improvement)、benchmark_comparison、recommendations、key_strengths、areas_for_improvement を含む Dict |