Shopifyの顧客管理画面でユーザーを絞り込める「顧客セグメンテーション機能」は、様々な顧客情報を元にグループ化でき、かつグループ化の条件を保存しておくことで自動更新もされていくので非常に便利です。
この「顧客セグメンテーション機能」に、潜在顧客へのメルマガやLINE配信に活用できそうな新しい関数が追加されていましたので、その内容と実際の利用シーンを紹介します。
そもそもShopifyの顧客セグメンテーション・お客様セグメントとは
Shopifyの顧客セグメンテーションとは、「顧客情報から特定の条件に合致した顧客の群(セグメント)を作成する機能」です。
顧客セグメントの概要や使い方は下記記事で解説していますので、顧客セグメント機能に慣れてない方はまずこちらをご一読ください!
関数・絞り込み名の紹介
絞り込み条件として利用可能になった「新たな関数・絞り込み名」を紹介します。(2023年11月)
- 記念日 anniversary(date:)
- コレクション / 商品が表示されました storefront.EVENT()
- アプリIDで作成されました created_by_app_id
「記念日」は誕生日などの絞り込みに、「コレクション / 商品が表示されました」は特定の商品ページを見た方などの絞り込みに、「アプリIDで作成されました」は会員登録フォームを編集するアプリなど、Shopifyの代わりに会員を作成する機能を有したアプリ経由で作成されたユーザーの絞り込みに利用できます。
下記にてそれぞれの絞り込みの詳細を解説します。
記念日 anniversary(date:)
▼記念日で絞り込む方法
日付系のデータを参照して絞り込むことができます。anniversary() の () の中で指定できるのは、参照したい日付データが格納された「絞り込み名(Shopifyが標準で用意しているもの) 」あるいは「DATE型で定義されたメタフィールド」です。
参照する日時データは、BETWEEN という要素を使うことで ”2つの日付の間” を指定できるようになっています。
例えば、”誕生日が今日から前後30日のユーザーを絞り込みたい”場合には下記の条件になります。
anniversary(date:'metafields.facts.birth_date') BETWEEN -30d AND +30d
date:’metafields.facts.birth_date’ で標準メタフィールドの生年月日 (birthday) を参照し、 BETWEEN で -30d と +30d を指定することで、今日 (today) から数えて30日前〜30日後の月日が誕生日として登録されている人を絞り込めます。
なお、-30d という指定の仕方では、今日という日付からの相対的な日付を指定しているため、毎日日付が変わるごとに基となる今日(today)の日付が変わってしまうため、静的な条件として指定することはできません。この部分には、YYYY-MM-DD と言った絶対的な日付を指定することも可能なので、絞り込みたい状況に応じて使い分けると良さそうです。
また、anniversary() には、条件として入力した日付の年 (YYYY) の部分を無視する特性があります。
anniversary() が追加されるまでは、日付関係で絞り込みを行いたい場合には YYYY-MM-DD という形で年月日を具体的に指定しなければなりませんでした。例えば11月の誕生日の人を絞り込みたい場合には、下記のように1年ずつ条件を入れる必要があり、現実的ではありませんでした。
metafields.facts.birth_date BETWEEN 1997-11-01 AND 1997-11-30 OR
metafields.facts.birth_date BETWEEN 1998-11-01 AND 1998-11-30 OR
metafields.facts.birth_date BETWEEN 1999-11-01 AND 1999-11-30…
しかし、anniversary() を使うことで 年 は無視されるので、例えば下記のような1行の記載だけで【全ての年の11月1日~11月30日に当てはまるユーザー】を絞り込むことが可能になりました。
anniversary(date: 'metafields.facts.birth_date') BETWEEN 2023-11-01 AND 2023-11-30
これまで、Shopifyには公式に誕生日データを格納する場所の指定がなかったため、「顧客メモ」や「顧客タグ」「メタフィールド」など、ストアが各々に保存場所を用意していることが多かったのですが、今回Shopifyが「標準メタフィールド」という形で公式の格納場所を定義したので、メタフィールドの日付データを参照できる anniversary() は今後も活躍しそうです。
コレクション / 商品が表示されました storefront.EVENT()
▼ストアフロントイベントで絞り込む方法
ユーザーのオンラインストアでの閲覧履歴を参照して絞り込むことができます。現状(2023年12月時点)では collection_viewed (コレクションページ) と product_viewed (商品)の閲覧履歴に対応しています。
例えば、「過去2ヶ月以内に新商品(New Arrival)ページを閲覧した人にメッセージを配信する」ための顧客セグメントを作成したい場合、下記のような条件で作成できます。
storefront.collection_viewed(id: (275914883279), since: -60d , until: today) = true
storefront.collection_viewedに対して id:( にコレクションidを指定します。,(カンマ)で区切って、いつからいつまでに商品ページを閲覧した人を対象にするかを指定します。今回は過去2ヶ月間なので since: -60d , until: today と指定して、これまで設定した条件に当てはまるユーザーを絞り込みたいので ) = true で締めます。
コレクションidは、入力のタイミングになると下部に候補が表示されるのでそこから選択するか、
Shopify 管理画面 > 商品管理 > コレクション から任意のコレクションを開くと、URLからコレクションidを確認できます。
storefront.product_viewed( (商品が表示されました)に関しては、id: (商品id)以外にも tag: (商品タグ) も要素として指定することができます。
なお、実際にこの顧客セグメントを対象にメッセージを配信したい場合には、直近すでに購入している方は配信対象外にした方がいいですよね。除外設定は下記のような条件で行うとよさそうです。
AND orders_placed(since: -7d) = true
ストアフロントのイベントは、APIベースではその他のページの閲覧履歴を参照することもできるので、顧客セグメント機能にもstorefront.〇〇 の要素は増えていきそうな予感がします。ぜひ触ってみてください。
アプリIDで作成されました created_by_app_id
ユーザーを作成したアプリを参照して絞り込むことができます。
弊社のアプリ「CRM PLUS on LINE」でもソーシャルログイン経由で会員を作成する機能がありますが、その他にも会員登録フォームを編集するアプリなど、Shopifyの代わりに会員を作成する機能を有したものがあります。それらのアプリ経由で作成されたユーザーを絞り込む時に利用できます。
例えば、CRM PLUS on LINEで作成されたユーザーを絞り込みたい場合、下記の条件で絞り込めます。
created_by_app_id = 4653451
ここで指定する app_id は全ストア共通のもの(Shopifyからアプリに割り振られるグローバル ユニークID)です。よく参照されるものを下記に例示します。
- オンラインストア (app_id: 580111)
- CRM PLUS on LINE (app_id: 4653451)
- Helium Custmer Fields (app_id: 960624)
- Bonify Customer Account Fields (app_id: 2549845)
- Matrixify (app_id: 1758145)
終わりに
本記事では、メルマガやLINE配信に活用できそうな「顧客セグメンテーション機能」のアップデート情報をまとめました。
本ブログでは、今後もShopifyと連携したLINE配信関連のアップデート情報をお伝えしていきます。最新情報はSNSなどでも発信しているので、ぜひご登録ください!
◆ソーシャルPLUS メルマガ登録フォーム
https://www.socialplus.jp/newsletter
♦ソーシャルPLUS LINE公式アカウント
https://lin.ee/pLL9lBZ
♦ソーシャルPLUS 公式X
https://twitter.com/SocialPLUSjp