はじめに:同梱チラシ・クーポンの効果が「なんとなく」で終わっていませんか
ECサイトを運営していると、商品の箱の中にチラシやクーポンを同梱する施策をよくやります。
- 次回使える割引クーポンを紙で同梱する
- 関連商品やシリーズ商品を紹介するチラシを入れる
- レビュー投稿や会員登録を促すカードを入れる
これらは「リピートを増やしたい」「ファンになってほしい」という気持ちから生まれる、とても自然な施策です。実際、配送のついでに紙を1枚足すだけなので、コストの割にやれることが多いのも魅力です。
ところが、いざ効果を振り返ろうとすると、ほとんどの現場で同じ壁にぶつかります。「で、あのチラシ、結局どれくらい効いたの?」という問いに、誰も数字で答えられないのです。
オンライン広告ならクリックやコンバージョンが自動で記録されますが、紙のチラシはユーザーが箱から取り出して、後日あらためてサイトを訪れて、初めて行動につながります。この「オフラインからオンラインへの再訪」をつなぐ仕組みを用意しておかないと、効果は永遠に「なんとなく良さそう」のまま終わってしまいます。
この記事では、同梱チラシ施策に識別子を仕込み、GA4のオフラインコンバージョン連携と受注データをBigQueryで突合することで、再購入率やLTVといった「本当に知りたい数字」まで測定する設計を解説します。
識別の設計:まず「誰がチラシ経由か」を区別できるようにする
効果測定でいちばん大事なのは、SQLでも分析手法でもありません。チラシを見て戻ってきた人を、そうでない人と区別できる識別子を最初に仕込んでおくことです。ここが甘いと、後からどんなに頑張っても測定はできません。
紙のチラシからオンラインの行動に橋を架ける方法は、主に3つあります。
専用クーポンコード
いちばん手軽で確実なのが、チラシ専用のクーポンコードを発行する方法です。
- 通常の販促とは別の、その同梱チラシ専用のコードにする(例:
THANKS2026) - できれば施策・期間・封入ロットごとにコードを分ける
- 受注データのクーポン利用履歴に、そのコードが必ず記録されるようにする
専用コードのいいところは、紙のチラシを見て、実際に購入まで進んだ人だけが確実に記録される点です。受注データ側に証拠が残るので、突合の起点として非常に強力です。
QRコード
チラシにQRコードを刷り込み、読み取った先を計測対象にする方法です。
- スマホで読み取ってもらえるので、入力の手間がない
- 読み取り先URLにキャンペーン情報を持たせれば、流入そのものを計測できる
- クーポンと組み合わせれば「読んだ人」と「買った人」の両方が追える
QRはユーザーの手間が少なく、再訪のきっかけになりやすいのが利点です。一方で「読み取ったけど買わなかった」人も含まれるため、購入の証拠としては専用クーポンほど強くありません。両方を併用するのがおすすめです。
専用LP・UTMパラメータ
QRや短縮URLの遷移先を、チラシ専用のランディングページ(LP)にする方法です。このとき、URLにUTMパラメータを付けておきます。
https://example.com/lp/insert-thanks/?utm_source=insert_flyer&utm_medium=offline&utm_campaign=thanks_2026q3
こうしておくと、GA4側で「どの施策から来た流入か」をチャネルとして区別できます。utm_source に insert_flyer、utm_medium に offline のように、オンライン広告とは混ざらない命名を決めておくのがコツです。命名ルールを最初にスプレッドシートで一覧化しておくと、後から見返したときに混乱しません。
3つのうちどれか1つでも測定は始められますが、理想は「QR付き専用LP(UTM)でサイトに呼び込み、専用クーポンで購入を確定させる」という組み合わせです。流入と購入の両方に印が付くので、再訪から再購入までの流れをきれいに追えます。
オフラインの再訪・再購入をGA4×受注データでBigQueryに突合する
識別子を仕込んだら、次はデータをつなぎます。ここで登場するのが、GA4のデータと受注データをBigQuery上で突合する考え方です。
GA4と受注データの役割分担は、ECの売上分析全般で共通する基本です。詳しくは BigQueryでEC受注データ×GA4データを結合して正確な売上帰属分析をする で解説していますが、ここでもポイントだけ押さえておきます。
- GA4:流入チャネルや行動(QR経由でLPに来た、などのオフライン由来の流入)が強い
- 受注データ:正確な売上金額、クーポン利用、顧客ID、キャンセル・返品の反映が強い
同梱チラシの測定では、この2つを次のように使い分けます。
- 「チラシのQR/LPから戻ってきた」という再訪は、GA4のUTM付き流入で捉える
- 「チラシのクーポンで再購入した」という成果は、受注データのクーポン利用で捉える
GA4のオフラインコンバージョン連携を使う場面
GA4には、オンラインの計測だけでは取りこぼす成果を、外部のデータとして取り込む「オフラインコンバージョン」の考え方があります。同梱チラシのように、紙という計測しづらい接点を起点にする施策では、ここが効いてきます。
具体的には、受注データ側で確定した「チラシクーポン経由の購入」を、計測の世界に持ち込んでつなぎ直します。これにより、サイト内のオンライン行動だけでは見えなかった「紙→再訪→再購入」の線がつながります。なお、GA4の計測タグをまたいで広告側まで成果を戻す場合の流れは、BigQueryを使ったGoogle広告のオフラインコンバージョンインポート で詳しく扱っています。
BigQueryでの突合イメージ
実際の突合は、識別子を結合キーにして行います。ここでは「チラシ専用クーポンを使った受注」と「GA4で観測したチラシ由来の流入」を、顧客単位で結びつける例を示します。
-- チラシ施策に反応した顧客を、流入(GA4)と購入(受注)の両面から特定する
WITH flyer_sessions AS (
-- GA4:チラシ由来のUTMで流入したセッション
SELECT
user_pseudo_id,
MIN(event_date) AS first_flyer_visit_date
FROM `your_project.analytics_123456789.events_*`
WHERE
_TABLE_SUFFIX BETWEEN '20260801' AND '20260930'
-- 流入元(utm_source)は event_params ではなく collected_traffic_source に入る
AND collected_traffic_source.manual_source = 'insert_flyer'
-- 必要なら manual_campaign_name = 'thanks_2026q3' でキャンペーンも絞る
GROUP BY user_pseudo_id
),
flyer_orders AS (
-- 受注データ:チラシ専用クーポンが使われた注文
SELECT
customer_id,
order_id,
order_date,
coupon_code,
net_sales -- キャンセル・返品控除後の正味売上
FROM `your_project.ec_mart.orders`
WHERE coupon_code = 'THANKS2026'
)
SELECT
o.customer_id,
o.order_id,
o.order_date,
o.net_sales,
s.first_flyer_visit_date
FROM flyer_orders AS o
LEFT JOIN flyer_sessions AS s
ON o.customer_id = s.user_pseudo_id -- 実際はユーザーIDの対応表を介して結合する
ORDER BY o.order_date;
なお、GA4 BigQueryエクスポートの流入元は event_params ではなく collected_traffic_source.manual_source / manual_campaign_name(セッション単位で見るなら session_traffic_source 系)に格納されます。カラム名や階層は変わることがあるため、フィールドは最新の公式スキーマで確認してください。
実務では、GA4の user_pseudo_id と受注データの customer_id は直接は一致しません。ログイン時に発行されるユーザーIDをGA4側に渡しておくなどして、両者をつなぐ対応表を別途用意するのが一般的です。上のSQLはあくまで突合の骨格を示すもので、結合キーの整備こそが本番の作業になります。
効果(再購入率・LTV)を測定する
突合できたら、ようやく「本当に知りたい数字」にたどり着けます。同梱チラシの目的はリピート促進なので、見るべき指標は再購入率とLTVです。
-- チラシ接触あり/なしで、再購入率と平均売上を比較する
WITH base AS (
SELECT
c.customer_id,
-- チラシ専用クーポンを一度でも使ったか
MAX(IF(o.coupon_code = 'THANKS2026', 1, 0)) AS touched_flyer,
-- 初回以降の購入回数(再購入の有無を見る)
COUNT(o.order_id) AS order_count,
SUM(o.net_sales) AS total_net_sales
FROM `your_project.ec_mart.customers` AS c
LEFT JOIN `your_project.ec_mart.orders` AS o
ON c.customer_id = o.customer_id
GROUP BY c.customer_id
)
SELECT
IF(touched_flyer = 1, 'チラシ接触あり', 'チラシ接触なし') AS segment,
COUNT(*) AS customers,
-- 2回以上購入した人の割合を再購入率とみなす
ROUND(AVG(IF(order_count >= 2, 1, 0)) * 100, 1) AS repeat_rate_pct,
ROUND(AVG(total_net_sales)) AS avg_ltv
FROM base
GROUP BY segment;
このクエリで、チラシに接触した顧客とそうでない顧客の再購入率・平均売上(簡易LTV)を並べて比較できます。「チラシ接触ありのほうが再購入率が高い」という傾向が出れば、施策に意味があったと判断する材料になります。
ただし、ここで出る差をそのまま「チラシの効果」と断言するのは危険です。そもそも熱心な顧客ほどチラシに反応しやすい、という選択バイアスが混ざるからです。厳密に効果を見たいなら、封入するロットを分けて比較する、期間をずらして検証するなど、比べる条件をそろえる工夫が要ります。まずは傾向をつかむ指標として使い、断定は慎重にするのが現実的です。
⚠️ 識別子設計が肝・計測漏れに注意
この施策の成否は、技術というより最初の設計でほぼ決まります。つまずきやすいポイントを挙げておきます。
- 識別子を仕込まずにチラシを刷ってしまう:これが最大の失敗です。専用クーポンもQRもUTMもないチラシは、後から効果を測る手段がありません。刷る前に「どの印で追うか」を必ず決めてください。
- クーポンコードを他施策と共用してしまう:通常セールと同じコードを使うと、チラシ経由かどうかが区別できなくなります。同梱チラシ専用のコードを切りましょう。
- UTMの命名がバラバラ:
utm_sourceの値が施策ごとに揺れると、GA4で集計できません。命名ルールを先に決めて一覧化します。 - ユーザーIDの対応表がない:GA4と受注データをつなぐ鍵がないと、突合そのものが成立しません。ログインユーザーのIDをGA4へ渡す設計を事前に入れておきます。
- QRを読んだだけの人を購入者と取り違える:読み取り=購入ではありません。流入(QR/UTM)と購入(クーポン)は別物として集計します。
- 計測漏れを成果ゼロと誤解する:印が付いていなかったぶんの成果は、データに現れません。「数字が小さい=効果がない」ではなく「測れていないだけ」の可能性を常に疑ってください。
これらはすべて、チラシを刷る前に手を打てば防げるものばかりです。逆に言えば、刷った後では取り返しがつきません。
まとめ
同梱チラシやクーポンは、配送のついでにできる手軽で価値あるリピート施策です。ただし「なんとなく良さそう」で終わらせず、きちんと効果を測るには、次の順番で設計するのが近道です。
- まず識別子を仕込む:専用クーポンコード、QRコード、UTM付き専用LPで「チラシ経由」を区別できるようにする
- GA4と受注データをBigQueryで突合する:流入はGA4、売上は受注データという役割分担で、紙→再訪→再購入の線をつなぐ
- 再購入率とLTVで評価する:チラシ接触あり/なしを比較し、傾向をつかむ。ただしバイアスに注意して断定は慎重に
紙の施策は「測れない」とあきらめられがちですが、最初にひと手間かけて印を仕込んでおけば、オンライン広告と同じ土俵で効果を語れるようになります。次にチラシを刷るときは、刷る前に「どの印で追うか」を一度立ち止まって決めてみてください。