キャンペーンは実際に効果があったのか? 帰属の混乱を止める UTM 設定
GA4 の混沌なしに UTM キャンペーントラフィックを追跡。5 つの UTM 規律ルール、iOS 17 のクリック ID 取り除き、「キャンペーンはトラフィックを送ったか?」にワンクリックで答える Statnive Ask me! カード。

UTM は「キャンペーンは効いたか?」に答えます。Statnive は取り込み時に 5 つすべて(source / medium / campaign / content / term)をキャプチャし、Cookie 不要、広告ブロッカー耐性があります。Ask me! を開く →「キャンペーンはトラフィックを送ったか?」(q57)。引用:iOS 17 は utm_ を保持し、クリック ID のみを取り除きます。*
火曜日にニュースレターを送りました。水曜日の朝、受信トレイは静かですが、Stripe は昨日午後 5 時にはなかった 3 件の注文を示しています。ニュースレターが効いたのか? Instagram のブーストか? Reddit のスレッドか? それとも、メールがリマインドしたあとに 3 人がブランド検索から入ってきただけなのか?
UTM は 2005 年にその質問に答えるために発明されました。それから 20 年、ソロの WordPress 運営者が最も頻繁に間違える質問まだです。仕様が難しいからではなく、UTM 規律は、本当のお金がかかる最初のキャンペーンが帰属に失敗するまで誰もが省くプロセス作業だからです。この記事は規律ガイドです:5 つのルールの UTM 契約、キャンペーンがクリックを生き残るかを決める iOS 17 の除外、そして GA4 の 5 クリック・クロスタブを単一の質問に折りたたむ Ask me! カード。
この記事で答えること
- 5 つの UTM パラメータがそれぞれ何をするのか、1 つの表で。
- 帰属の混乱の 90% を防ぐ 5 ルールの UTM 規律。
- iOS 17 がなぜ
fbclidとgclidを取り除いてutm_*を保持するのか。 - GA4 がキャンペーンビューでどうクロスタブを強制するか、そして Ask me! がそれをどう折りたたむか。
- 意思決定ルール:キャンペーンは効いたか、そして「効いた」とは何を意味するか?
5 つの UTM パラメータ、一度に解読
UTM は、すべてのクリックとともに移動する 5 つの URL クエリパラメータです。リダイレクト、同意バナー、そして — 2026 年に決定的に — iOS 17 を生き残ります。
| パラメータ | 答えるもの | 例 | 備考 |
|---|---|---|---|
utm_source | このリンクはどこにありますか? | newsletter / instagram / facebook | プラットフォーム。常に小文字。 |
utm_medium | リンクはどう伝わりますか? | email / cpc / social / referral | チャネルタイプ。email → Email バケット、cpc → 有料検索。 |
utm_campaign | どの施策? | spring-sale-2026 | 施策ごとに 1 つの安定した名前。 |
utm_content | どのクリエイティブのバリアント? | hero-cta / footer-cta | 任意。A/B バリアントの帰属。 |
utm_term | どのキーワード? | wordpress+analytics | 任意。主に有料検索向け。 |
それだけです。5 つの文字列、URL にハードコードされ、訪問時に読み取られます。JavaScript なし、ライブラリなし、SDK なし、同意バナーなし。ブラウザが URL をサーバーに渡し、Statnive のトラッカーが ?utm_source=…&utm_medium=…&utm_campaign=… を読み取って保存します。
5 ルールの UTM 規律(30 行で記事の全部)
ソロ WordPress サイトでの最大の間違いは一貫性のないタグ付けであり、タグの欠落ではありません。半分タグ付けされた状態は、タグなしより悪いです。正しく見える間違った数値を生み出すからです。
ルール 1 — すべて小文字。常に。
utm_source=Facebook と utm_source=facebook は、キャンペーンテーブルでは 2 つの異なる行です。Newsletter と newsletter、CPC と cpc も同様です。修正:すべて小文字、スペースの代わりにハイフン。 utm_campaign=spring-sale-2026、Spring Sale 2026 ではありません。このルールだけで、最も一般的なキャンペーンタブの問題が修正されます。テーブルに facebook 412 と Facebook 38 が表示され、両方が同じキャンペーンで、どちらも本当の数に合計されないという問題です。
ルール 2 — プラットフォームごとに 1 つの語彙、書き出して
各プラットフォームに安定した utm_source 値を選び、決して変更しないでください。facebook、instagram、newsletter(email でもプラットフォーム名でもなく — newsletter はオーディエンスの説明であり、プラットフォーム移行を生き残ります)。utm_medium には、GA4 ネイティブの分類体系を使用してください:email、cpc、social、referral、display、affiliate。Statnive のチャネルグルーピングはこれらのメディウム値を読み取り、セッションを Email / 有料検索 / ソーシャルメディアバケットにマップします。カスタムメディウムは Referral に着地します。語彙を書き出してください — Notion ページ、campaigns フォルダの README、付箋の裏。書き出す行為こそが、未来の自分が午前 2 時に新しいバリアントを発明するのを止めます。
ルール 3 — 内部リンクには絶対に UTM を付けない
これは帰属を最も徹底的に破壊する間違いです。ニュースレターを送り、/spring-sale/ にリンクし、spring-sale ページに /shop/?utm_source=spring-page&utm_medium=internal の「Shop now」ボタンがあります。訪問者がそのボタンをクリックすると、トラッカーは新しい UTM を読み取り、元のニュースレターソースを上書きします。実際に訪問を駆動したキャンペーンが、自サイトのページにクレジットされます。
ルール:**UTM は自サイトの外から到着するリンクにのみ表示されます。**例外なし。内部 A/B テストには別のパラメータ — ?variant=hero-cta — を使い、Statnive はそれをチャネル帰属で無視します。
ルール 4 — シェア可能なリンクをすべてタグ付けする、「自明な」ものでも
罠:「Klaviyo のレポートが既に教えてくれるので、メールに UTM タグを付ける必要はない」。それは Klaviyo の中では問題ありません。しかし、Statnive の訪問ログと WooCommerce の注文ログは、URL が伝えたことしか知りません。タグなしのメールリンクは、Google のブランド検索と区別がつきません。どちらも Direct または Organic に着地します。経験則:URL を制御できる場合は、タグ付けしてください。 ニュースレター、有料広告、自分で書いた Reddit 投稿、Twitter のバイオのリンク。タグなしリンクは制御できない場所には問題ありません。それが Referral バケットの目的です。
ルール 5 — スキームを文書化する。再発明をやめる。
UTM 語彙の単一の真実のソースを保持してください — 1 ページ、4 つの答え:どの utm_source 値が存在するか、どの utm_medium 値が存在するか、新しいキャンペーンの命名方法(kebab-case-description-yyyy-mm)、キャンペーンが正しくタグ付けされたかをチェックする場所(Ask me! → q57)。コストは 1 時間です。これなしでキャンペーンを実行するコストは、帰属レイヤー全体がノイズになることです。この規律の詳細版(プラットフォーム別のリンクビルダー早見表、Klaviyo / Meta / Google Ads 統合パターン)は、既存の WooCommerce 向け UTM キャンペーンガイドにあります。
iOS 17 がリスクを変えた理由
Apple は 2023 年 9 月に iOS 17 / iPadOS 17 / macOS Sonoma をリンクトラッキング保護とともに出荷しました — Safari プライベートブラウジングとメッセージで有効です。ユーザーがリンクをクリックすると、OS はリクエストが送信される前に既知のトラッキングパラメータのセットを取り除きます。
取り除かれるもの: fbclid(Facebook)、gclid(Google Ads)、mkt_tok(Marketo)、HubSpot トークン(_hsenc、_hsmi)、その他 Apple が指紋レベルとして分類するベンダー固有のパラメータ。保持されるもの: utm_source、utm_medium、utm_campaign、utm_content、utm_term。
この除外こそが、2026 年にクリック ID よりも UTM に依存する全理由です。Knak の技術的解説と Segmetrics の詳細分析の両方が同じ結論を確認しています:utm_* は、ユーザーが URL バーで読める標準化された透明なキャンペーン語彙であるため Apple はそれをそのままにします。クリック ID は、Apple がサイレントトラッキングとして分類するベンダー固有の識別子です。実際的には:fbclid だけに依存する Facebook 広告は iOS クリック後に Direct または Referral のように見えます。同じ広告に ?utm_source=facebook&utm_medium=cpc&utm_campaign=spring-sale-2026 があると、無傷で生き残ります。**2026 年にクリック ID 単体を信頼しないでください。**すべての有料リンクをフル UTM タグセットとペアにし、キャンペーンが Safari、アプリ内ブラウザ、そして次のプライバシーアップデートが取り除くものを生き残るようにしてください。
GA4 はどう答えるか
GA4 はデータを持っています。パス:Reports → Acquisition → Traffic acquisition →「+」をクリックして Session campaign を二次ディメンションとして追加 → キャンペーン名でフィルタ → 欠落していたら、主要ディメンションを切り替えて大小文字を再確認。5〜6 クリックで、それでもディメンションを再度切り替えない限り content と term は見えません。GA4 の厳格マッチングでは、facebook と Facebook が合計しない 2 行を生成します。キャンペーンを実行した運営者は、質問に答える前に「実際の」行はどちらかを決めるのに 10 分費やします。
Statnive がキャンペーンを別の見方で見る理由
すべての Ask me! クエリ(キャンペーンカードを含む)について 5 つの主張が成り立ちます:
- AI なし。LLM なし。 117 の質問は手書きであり、答えは手書きの SQL です。
- サードパーティ API なし。 Ask me! の経路から外向きの通信はゼロ件。
AdvisorControllerはwp_remote_*リクエストを行いません。 - サーバーから何も出ません。 REST エンドポイントは同じ WordPress インストール上にあります。リレーなし、プロキシなし、CDN キャッシュエンドポイントなし。
- データはお客様のものです。 Statnive はデータをどこにもホスティング、ミラーリング、シンジケート、バックアップしません。
- Cookie 不要。指紋採取なし。サードパーティトラッカーなし。 毎日ローテーションする SHA-256 ソルトハッシュ。IP はハッシュ化、GeoIP、即座に破棄。
UTM キャプチャは最初のリクエスト時に機能します:トラッカーはクエリ文字列を読み取り、取り込み時に utm_* 値を小文字化するため Facebook と facebook は 1 行に調整され、5 つすべてのパラメータを毎日ローテーションする訪問者ハッシュに対して保存します。Cookie がないので、読み取りをブロックする Cookie バナーはありません。リンクを壊すことになるので、広告ブロッカーはパラメータを取り除けません。Ask me! は質問ライブラリであり、チャットボットではありません。データが質問に答えます。データは旅をしません。
Statnive では:Ask me! を開く → 質問をクリック → 完了
Statnive では:Ask me! を開く →「キャンペーンはトラフィックを送ったか?」をクリック → 完了。

Campaigns タブには 8 つの Live 質問があります:
- q57 — キャンペーンはトラフィックを送ったか? 一致するキャンペーンのセッションカウントとともに、トップラインの Yes/No。
- q58 — どの UTM キャンペーンが最も訪問者を送ったか? キャンペーンランキング、過去 7/30/90 日。
- q59 — どの UTM ソースが最もトラフィックを送ったか? ソースのみのランキング(facebook 412、newsletter 287、reddit 38)。
- q60 — どの UTM メディウムが最もトラフィックを送ったか? メディウムのみのランキング — 予算配分に有用。
- q61 / q64 / q65 — ニュースレター / Facebook / Google Ads キャンペーンはトラフィックを送ったか?
utm_medium=email、utm_source=facebook、utm_source=google&utm_medium=cpcの事前フィルタ済みショートカット。 - q67 — どの UTM 組み合わせが最もトラフィックに効いたか? source × medium × campaign のクロスタブ。
クエリは v1.0.0 の Campaigns タブが既に実行していたものと同じです。Ask me! カードがパスをワンクリックに折りたたみます。
意思決定ルール
ルール、一文で:キャンペーンが効いたのは、タグ付きセッションが目標を超え、かつ直帰率が健全なコホートと一致する場合 — サイト平均ではなく、指定されたランディングページに対して測定すること。
3 つの要素:(1) タグ付きセッション > 目標 — q57 または q58 が数値を表示します。お客様が判断します。(2) 直帰率がコホートと一致 — 商品ページに着地する有料キャンペーンは、サイト全体ではなく、他の有料商品ページのトラフィックと並んで直帰すべきです(チャネル品質ガイドのコホート比較ロジックが同様に適用されます)。(3) 停止前に診断 — ほとんどの「失敗した」キャンペーンは診断可能です:壊れた UTM(q67 がタイプミスを明らかにする)、間違ったランディングページ、ドロップしたオーディエンス。カードはボリュームを表示します。診断は人間のステップです。失敗したボリュームのキャンペーンは通常タグ付け問題(q67 は (direct) に座っていることを示します)、失敗した直帰のキャンペーンはクリエイティブまたはターゲティング問題です。
「5 つの UTM パラメータとは?」
utm_source、utm_medium、utm_campaign、utm_content、utm_term。最初の 3 つが骨格 — どこ、どう、何。最後の 2 つは精緻化 — どのクリエイティブ、どのキーワード。Statnive は取り込み時に 5 つすべてを保存します。v1.1.0 Campaigns タブはデフォルトで最初の 3 つを表示します。
「WordPress で UTM コードを作成するには?」
WordPress 固有のステップはありません — UTM はサイトを指す URL 上にあり、WordPress 内にはありません。Google の Campaign URL Builder で小文字、ハイフン区切りの値でリンクを構築し、メールや広告に貼り付け、Statnive が訪問時に utm_* を読み取ります。ほとんどの運営者が見落とすルール:自サイトのページ間のリンクに UTM を付けないでください — トラッカーは新しい UTM が自サイト内から来たことを判別できず、元のソースを上書きします。
「なぜ UTM が GA4 に表示されないのですか?」
頻度順に 3 つの理由:大小文字の不一致(GA4 は Facebook と facebook を 2 行として扱います。Statnive は取り込み時に utm_* を小文字化、GA4 はしません)、短縮サービスがパラメータを取り除く(誤設定された短縮リンクサービスがリダイレクト時にクエリ文字列を落とす)、iOS 17 がクリック ID のみのリンクを取り除いた(gclid に依存するキャンペーンが Direct にフォールバックします)。修正は同じです:すべての有料リンクをフル UTM タグセットとペアにし、帰属が生き残るようにしてください。
次にすべきこと
- **WordPress.org で Statnive をインストール**してください(まだの場合)。
- UTM 語彙を書き出してください — 1 ページ、4 つの答え、30 分。小文字、kebab-case、プラットフォームごとに 1 つのソース、チャネルタイプごとに 1 つのメディウム。
- 直近 3 つのキャンペーンを Ask me! → q67 で監査してください。同じキャンペーンに対して大小文字またはソース名が異なる 2 行があれば、目の前に教訓があります。
- 次のキャンペーンを開始する前にタグ付けしてください。 キャンペーンビルダーで URL を構築し、メールや広告に貼り付けます。
- プラットフォーム別のリンクパターン(Klaviyo、Meta、Google Ads)については、既存のピラー記事 UTM キャンペーン:広告費の浪費を止めるをお読みください。
- チャネルレベルの質問(UTM はチャネルグルーピングに供給されます)については、姉妹 Post 2 トラフィックは実際どこから来ているか?をお読みください。
それが規律です。5 つのルール、1 つのドキュメント、キャンペーンの質問ごとに 1 つの Ask me! カード。帰属できない次の有料プッシュは、タグを付けなかったものです。オーディエンスのせいにする前に、それを修正してください。
WordPress.org から Statnive 1.1.0 を無料でインストール →
永久無料・セルフホスト・アカウント不要・AI なし・サードパーティ API なし・データはサーバーから外に出ません。