テーマ更新、アプリ追加、Customer eventsの設定変更、同意バナーの切り替えをした直後は、広告予算や入札戦略を変える前に購入計測を確認します。この順番が必要なのは、購入が送られていない「欠損」と、同じ購入が複数回送られる「二重計上」では、取るべき対応が反対になるためです。
たとえば欠損した状態でCPAだけを見ると、広告の成果を過小評価するおそれがあります。一方、二重計上した状態で自動入札に購入を渡すと、実際より多いコンバージョンを学習させることになります。
ここで目指すのは、Shopify、GA4、Google広告の売上額や件数を完全一致させることではありません。計測対象、同意、アトリビューション、集計時刻が異なるためです。変更後に確認すべき合格条件は、テストした同一注文について、必要なイベントが、意図した送信元から、意図した回数だけ送られたことです。
調査資料の確認時点は2026年8月27日です。画面名や機能は変更される場合があるため、作業時にはリンク先の公式資料も確認してください。
計測検証では、Shopify管理画面の注文を事実確認の起点にします。ただし、これはShopifyの注文数をGA4やGoogle広告へそのまま転記する、という意味ではありません。
1件のテスト注文ごとに、少なくとも次を記録します。
| 確認対象 | 台帳に残す値 | 確認目的 |
|---|---|---|
| Shopify | 注文番号または管理画面で確認できる注文識別子、注文時刻、金額、商品 | 注文が実際に成立した基準を残す |
| GA4 | purchase の transaction_id、value、currency、商品情報、受信時刻 | 購入イベントの有無と一意性を確認する |
| Google広告 | 対象の購入コンバージョンアクション、検証時刻、タグの発火元 | 広告最適化に渡す設定を確認する |
| ブラウザ・同意 | ブラウザ、シークレットウィンドウ使用の有無、同意前後の状態 | 同意状態や既存Cookieの影響を分ける |
GA4のWebデータストリームでは、同じtransaction_idを持つpurchaseイベントを重複排除する仕組みがあります。ただし、これは「実装上の重複を放置してよい」という意味ではありません。Googleは、transaction_idを注文ごとに一意にし、空文字にしないよう案内しています。送信元が複数残れば、GA4以外のツールやGoogle広告側を含め、調査しにくい構成になります。
次の状態は、媒体間の差異ではなく、公開前に止めるべき異常として扱います。
purchaseがGA4 DebugViewで確認できないtransaction_idで複数のpurchaseが送られる一方で、Google広告の管理画面で見えるコンバージョン件数とShopify注文数の差だけでは異常と判断しません。広告クリックへの帰属条件や計測対象が異なるためです。まず注文単位の発火を確認し、その後に媒体レポートの差を用途別に説明できる状態にします。
検証を始める前に、「どこが何を送っているか」を1枚にします。ここを飛ばすと、テストでイベントが見つかっても、それが意図した実装によるものか判定できません。
Shopifyの公式資料では、手動ピクセルから移行した後に差異があれば、イベントが期待どおり発火するか、実装ロジック、イベントが1回だけ追跡されているか、プライバシー設定と同意取得を確認するよう案内しています。テーマ、アプリ、Customer eventsに以前の実装が残っていないかを確認する工程です。
| 項目 | 記入例・確認方法 |
|---|---|
| 変更チケット・公開日時 | テーマ公開、アプリ有効化、ピクセル変更の日時 |
| イベント名 | view_item、add_to_cart、begin_checkout、purchase |
| 送信先 | GA4、Google広告、その他の広告媒体 |
| 送信元 | Google & YouTubeアプリ、カスタムピクセル、アプリピクセル、テーマコード、追加スクリプト、タグ管理ツール |
| 発火条件 | ページ表示、Shopify Customer events、注文完了、同意取得後など |
| 同意との関係 | 同意前は待機、同意後に送信、設定未確認など |
| 残す/削除する判断 | 今回の正とする実装、移行完了後に削除する実装 |
Google & YouTubeアプリでGA4またはGoogle広告の計測を設定する場合、Googleはストアフロントやカスタムピクセルに重複するタグがないかを確認し、移行後は旧タグを削除するよう案内しています。
ここでの注意点は、「テーマ内にGoogleタグらしいコードがない」だけで完了にしないことです。確認対象には、次も含めます。
削除が難しい既存実装は、いきなり本番で消さず、ステージングテーマや公開時間帯、切り戻し方法を含めて変更単位を分けます。計測を直す変更と、テーマの大規模改修を同時に行うほど、原因の特定コストは上がります。
1回のテスト注文だけで「計測できた」と結論づけないようにします。最低限、変更内容に応じて同意状態と購入導線を分け、結果を台帳に残します。
Shopify Pixel Helperでは、カスタムピクセルが受信したイベントをリアルタイムで確認できます。Shopifyは商品閲覧、カート追加、チェックアウト開始、配送情報入力、チェックアウト完了までをテスト対象として案内しており、同意待ち状態や同意同期の不具合も確認対象です。
| ケース | 操作 | 期待結果の書き方 |
|---|---|---|
| A:同意ありの通常購入 | 新しいシークレットウィンドウで同意し、商品閲覧から購入完了まで進む | 各イベントが意図した送信元から1回、purchaseには一意のtransaction_id |
| B:同意しない状態 | 同意しない、または設定した拒否操作をして同じ導線を進む | 自社の同意設定で定めた送信可否どおり。送らない設計なら、その不送信を期待結果に明記 |
| C:再訪・再読み込み | 注文完了後のページを再読み込みし、可能なら再訪する | 同じ注文の購入が再送されない。送信の有無とtransaction_idを記録 |
| D:変更箇所の導線 | 変更したテーマセクション、アプリ経由のカート、割引、配送選択などを通す | 変更箇所を通ってもイベント名・回数・商品情報が崩れない |
決済手段やテスト注文の可否はストアの契約・設定に依存します。実購入を避ける必要がある場合は、ストアで利用可能なテスト方法を先に確認してください。注文をキャンセル・返金した場合も、台帳には「テスト注文」「キャンセル等の後処理」を残します。購入計測の検証と、返金イベントまでの要件確認は別作業として扱うと混乱を減らせます。
同意なしのテストで「GA4に購入がない」ことは、直ちに不具合を意味しません。どの目的のCookie・ピクセルを、どの同意状態で動かす設計なのかを先に台帳の期待結果欄に書きます。期待が未定義のまま結果だけを見ると、適法性・計測要件・広告要件を混同します。
ブラウザの発火、Shopifyの受信、GA4の受信は、同じ画面では確認できません。役割を分けて確認します。
Shopify Pixel Helperを開き、テスト導線を進めます。カスタムピクセルを使っている場合は、イベントの受信状況をリアルタイムで見ます。
確認する項目は次のとおりです。
これはShopify側のイベント確認です。GA4やGoogle広告への送信結果まで、Pixel Helperだけで合格にしません。
Google & YouTubeアプリを利用する構成では、Google Tag Assistantでテスト購入を確認します。Googleの案内でも、アプリ以外からタグが発火していないこと、ストアフロントまたはカスタムピクセルとの重複がないことを確認対象としています。
特に確認したいのは、購入完了時に複数のGoogleタグや複数のpurchase送信経路が見つからないかです。見つかった場合は、タグIDだけでなく、そのタグを読み込んだ送信元を送信元台帳へ戻って特定します。「同じIDだから問題ない」とは判断せず、意図した実装が1つかを確認します。
purchaseの内容を注文単位で確認するGA4のDebugViewで、テスト操作中のイベントを確認します。GA4の公式資料では、ECイベントのリアルタイム検証にDebugViewを使え、通常レポートへの反映には最大24時間かかる場合があると案内されています。そのため、公開直後に通常レポートだけを見て欠損と結論づけないようにします。
purchaseを開き、少なくとも以下を台帳へ転記または証跡として保存します。
purchaseであることtransaction_idが空ではなく、当該テスト注文に対応づけられることvalueとcurrencyが意図した値であることtransaction_idの購入イベントが複数ないことShopifyの注文番号とGA4のtransaction_idが必ず同一の文字列になるかは、採用している実装に依存します。文字列の一致を前提にせず、テスト時点では両方の値を台帳に記録し、「どの注文に対応するイベントか」を人が追える状態にします。
検証結果をチャットや口頭だけで残すと、数週間後に広告数値の変化が起きた際、どの変更が原因か追えません。変更ごと・テスト注文ごとに、次のような台帳を残します。
| テストID | 変更内容 | 同意状態 | Shopify注文参照 | GA4 transaction_id | Pixel Helper | Tag Assistant | GA4 DebugView | 判定・対応 |
|---|---|---|---|---|---|---|---|---|
| T-001 | Googleタグ移行 | 同意あり | 注文参照を記録 | 値を記録 | 各イベント1回 | 意図したタグのみ | purchase 1件 | 合格/要修正 |
| T-002 | 同上 | 同意なし | 注文参照を記録 | 該当時に記録 | 設計どおり待機等 | 設計どおり | 設計どおり | 期待との差を記録 |
| T-003 | 完了ページ再読込 | 同意あり | T-001と同一注文 | 同一値を確認 | 再送有無を記録 | 重複有無を記録 | 再送有無を記録 | 重複なら公開停止 |
purchaseと必須パラメータを確認するpurchaseの回数とtransaction_idを確認するGA4の重複排除に期待して広告判断を進めるのではなく、重複を発生させた実装を取り除くのが基本です。GoogleもGoogle & YouTubeアプリへの移行後、重複タグを削除し、テスト購入で確認するよう案内しています。
Google広告の購入コンバージョンを主要コンバージョンにすると、その値は入札やレポート上の重要な判断に使われます。したがって、設定画面でコンバージョンアクションが作成できたことだけを公開基準にしません。
Google & YouTubeアプリ経由のGoogle広告コンバージョン設定について、GoogleはTag Assistantでの検証、重複タグ確認、旧タグの削除を行い、新しいコンバージョンを主要コンバージョンに設定する前に確認するよう案内しています。
公開判定は、次のチェックをすべて満たしてから行います。
purchase再送がないtransaction_idが空でなく、注文単位で追跡できるこの確認を通過した後に、広告予算、目標CPA、入札戦略、クリエイティブの評価へ進みます。計測変更の直後は、通常レポート反映の時間差も考慮し、テストのリアルタイム証跡と後続レポートを分けて保管すると判断根拠が明確になります。
記事では答えきれない個別の状況にもお応えします。