ホテル予約アプリ向けの推奨イベント

概要:ホテル予約アプリで推奨されるアプリ内イベントを記録して、ユーザージャーニー全体を通じてユーザーの質を計測しましょう

InApp_Events_hotel.png ホテル予約

ホテル予約アプリを使用すると、簡単にホテルを予約できるだけでなく、最も優れた割引価格を選ぶことができます。計測をお勧めする一般的なイベントは、検索、購入、旅行の予約、ウィッシュリストへ追加などです。

これらのイベントを計測することで、次のような判断に役立ちます。

  • どのキャンペーンやメディアソースが実際に旅行を予約するユーザーをもたらしているか
  • どのキャンペーンやメディアソースが最も多く予約し、収益性の高いユーザーをもたらしているか

ホテルの評価、季節、国、子供の数などの設定を、特定のメディアソースから訪れるユーザーに紐づけることができます。そして、それらのユーザー設定をターゲティングすることでキャンペーンを最適化できます。

アプリ内イベント計測の詳細については、リッチアプリ内イベントガイドを参照してください。

Flowchart_for_recommended_events_hotel_booking_app_user_journey

規定イベントで推奨される構造

次のセクションでは、ホテル予約アプリで一般的なイベント構造のリストを示しています。各構造には、既定のイベント名と推奨されるイベントパラメーターが含まれています。アプリ内イベントには、ビジネスニーズを満たす任意のイベントパラメーターを含めることができます。

登録完了 (af_complete_registration)

目的

アプリをインストールしてサインアッププロセスを完了したユーザー数、ユーザーが好むサインアップ方法、実際にサインアップするユーザーを引き付けるメディアソースについて理解しましょう。

トリガー

ユーザーがサインアップ手順を完了したとき

イベントパラメータ

カラム名 説明 値の例:
af_registration_method サインアップ方法のタイプ Email、Facebook

コードの例

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.REGSITRATION_METHOD, "Facebook");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.COMPLETE_REGISTRATION, eventValue);

ログイン (af_login)

目的

登録ユーザーのリテンションを理解しましょう

トリガー 

ユーザーが正常にログインしたとき

イベントパラメータ

パラメーターなしで送信できます

コードの例

Android iOS - Objective C iOS - Swift Unity
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), 
AFInAppEventType.LOGIN, null);

検索 (af_search)

目的

ユーザーが探しているものを知り、どの検索結果が最も関連性が高く購入に繋がったかを理解しましょう。さらに、特定の地域のユーザーが何を検索しているかを確認し、これに応じて、さまざまなメディアソースでターゲットを定めることができます。

トリガー

ユーザーが検索を実行したとき

イベントパラメータ

名称 説明 値の例:
af_date_a チェックイン日 2018/07/26
af_date_b チェックアウト日 2018/08/01
af_destination_a ユーザーロケーション London
af_destination_b ホテルの場所 Madrid
af_num_adults 宿泊者数 2
af_num_children 子供の数 0

コードの例

Android iOS - Objective C iOS - Swift Unity

Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.DATE_A, "2018/07/26");
eventValue.put(AFInAppEventParameterName.DATE_B, "2018/08/01");
eventValue.put(AFInAppEventParameterName.DESTINATION_A, "London");
eventValue.put(AFInAppEventParameterName.DESTINATION_B, "Madrid");
eventValue.put(AFInAppEventParameterName.NUM_ADULTS, 2);
eventValue.put(AFInAppEventParameterName.NUM_CHILDREN, 0);
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.SEARCH, eventValue);

コンテンツ表示 (af_content_view)

目的

このイベントは、次のような判断に役立ちます。

  • 検索結果が検索キーワードと関連性があるかを把握します。
  • ユーザーが探しているプロパティの種類
  • 季節的なトレンド
  • 人気のある場所
  • 広告やプロモーションでユーザーを引き寄せ、そのユーザーをリターゲティングするメディアソースはどれか

トリガー

ユーザーが物件を閲覧しているとき

イベントパラメータ

名称 説明 値の例:
af_price ホテルの定価 674
af_content_id ホテルID ODIRNH
af_date_a チェックイン日 2018/07/26
af_date_b チェックアウト日 2018/08/01
af_destination_a ユーザーロケーション London
af_destination_b ホテルの場所 Madrid
af_class 客室タイプ デラックス
af_num_adults 宿泊者数 2
af_num_children 子供の数 0
af_hotel_score ホテルのレビュー評価 9.6
af_preferred_star_ratings 希望するホテルの星評価 5
af_preferred_neighborhoods ホテルが位置するエリア 中心部

コードの例

Android iOS - Objective C iOS - Swift Unity

Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.CURRENCY, "GBP");
eventValue.put(AFInAppEventParameterName.PRICE, 674);
eventValue.put(AFInAppEventParameterName.CONTENT_ID, "ODIRNH");
eventValue.put(AFInAppEventParameterName.DATE_A, "2018/07/26");
eventValue.put(AFInAppEventParameterName.DATE_B, "2018/08/01");
eventValue.put(AFInAppEventParameterName.DESTINATION_A, "London");
eventValue.put(AFInAppEventParameterName.DESTINATION_B, "Madrid");
eventValue.put(AFInAppEventParameterName.CLASS, "Deluxe");
eventValue.put(AFInAppEventParameterName.NUM_ADULTS, 2);
eventValue.put(AFInAppEventParameterName.NUM_CHILDREN, 0);
eventValue.put(AFInAppEventParameterName.HOTEL_SCORE, 9.6);
eventValue.put(AFInAppEventParameterName.PREFERRED_STAR_RATINGS, 5);
eventValue.put(AFInAppEventParameterName.PREFERRED_NEIGHBORHOODS, "Centro");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.CONTENT_VIEW, eventValue);

ウィッシュリストに追加 (af_add_to_wishlist)

目的

ユーザーが予約に関心のあるホテルと目的地を記録します。例えば、ユーザーが探しているホテル、地域、評価が分かれば、このデータを使用してユーザーをリターゲティングできます。

トリガー

ユーザーがウィッシュリストにリストを追加したとき

イベントパラメータ

名称 説明 値の例:
af_price ホテルの定価 674
af_content_id ホテルID ODIRNH
af_date_a チェックイン日 2018/07/26
af_date_b チェックアウト日 2018/08/01
af_destination_a ユーザーロケーション London
af_destination_b ホテルの場所 Madrid
af_class 客室タイプ デラックス
af_num_adults 宿泊者数 2
af_num_children 子供の数 0
af_hotel_score ホテルのレビュー評価 9.6
af_preferred_star_ratings 希望するホテルの星評価 5
af_preferred_neighborhoods ホテルが位置するエリア 中心部
purchase_method 購入方法 クレジットカード
af_coupon_code プロモーションコードまたはロイヤルティー報酬ポイント SUM2018
property_type 物件タイプ ホテル

コードの例

Android iOS - Objective C iOS - Swift Unity

Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.CURRENCY, "GBP");
eventValue.put(AFInAppEventParameterName.PRICE, 674);
eventValue.put(AFInAppEventParameterName.CONTENT_ID, "ODIRNH");
eventValue.put(AFInAppEventParameterName.DATE_A, "2018/07/26");
eventValue.put(AFInAppEventParameterName.DATE_B, "2018/08/01");
eventValue.put(AFInAppEventParameterName.DESTINATION_A, "London");
eventValue.put(AFInAppEventParameterName.DESTINATION_B, "Madrid");
eventValue.put(AFInAppEventParameterName.CLASS, "Deluxe");
eventValue.put(AFInAppEventParameterName.NUM_ADULTS, 2);
eventValue.put(AFInAppEventParameterName.NUM_CHILDREN, 0);
eventValue.put(AFInAppEventParameterName.HOTEL_SCORE, 9.6);
eventValue.put(AFInAppEventParameterName.PREFERRED_STAR_RATINGS, 5);
eventValue.put(AFInAppEventParameterName.PREFERRED_NEIGHBORHOODS, "Centro");
eventValue.put("purchase_method", "credit card");
eventValue.put(AFInAppEventParameterName.COUPON_CODE, "SUM2018");
eventValue.put("property_type", "hotel");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.ADD_TO_WISH_LIST, eventValue);

チェックアウト開始 (af_initiated_checkout)

目的

購入者がチェックアウトを開始する際の行動を理解しましょう。このイベントは、次のような判断に役立ちます。

  • クレジットカードやeウォレットなど、どのような購入方法が使用されたか
  • ユーザーがチェックアウトを完了したかどうか

トリガー

ユーザーがクレジットカード情報を追加、またはeウォレットを接続したとき

イベントパラメータ

名称 説明 値の例:
af_price ホテルの定価 674
af_content_id ホテルID ODIRNH
af_date_a チェックイン日 2018/07/26
af_date_b チェックアウト日 2018/08/01
af_destination_a ユーザーロケーション London
af_destination_b ホテルの場所 Madrid
af_class 客室タイプ デラックス
af_num_adults 宿泊者数 2
af_num_children 子供の数 0
af_hotel_score ホテルのレビュー評価 9.6
af_preferred_star_ratings 希望するホテルの星評価 5
af_preferred_neighborhoods ホテルが位置するエリア 中心部
purchase_method 購入方法 クレジットカード
af_coupon_code プロモーションコードまたはロイヤルティー報酬ポイント SUM2018
property_type 物件タイプ ホテル

コードの例

Android iOS - Objective C iOS - Swift Unity

Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.CURRENCY, "GBP");
eventValue.put(AFInAppEventParameterName.PRICE, 674);
eventValue.put(AFInAppEventParameterName.CONTENT_ID, "ODIRNH");
eventValue.put(AFInAppEventParameterName.DATE_A, "2018/07/26");
eventValue.put(AFInAppEventParameterName.DATE_B, "2018/08/01");
eventValue.put(AFInAppEventParameterName.DESTINATION_A, "London");
eventValue.put(AFInAppEventParameterName.DESTINATION_B, "Madrid");
eventValue.put(AFInAppEventParameterName.CLASS, "Deluxe");
eventValue.put(AFInAppEventParameterName.NUM_ADULTS, 2);
eventValue.put(AFInAppEventParameterName.NUM_CHILDREN, 0);
eventValue.put(AFInAppEventParameterName.HOTEL_SCORE, 9.6);
eventValue.put(AFInAppEventParameterName.PREFERRED_STAR_RATINGS, 5);
eventValue.put(AFInAppEventParameterName.PREFERRED_NEIGHBORHOODS, "Centro");
eventValue.put("purchase_method", "credit card");
eventValue.put(AFInAppEventParameterName.COUPON_CODE, "SUM2018");
eventValue.put("property_type", "hotel");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.INITIATED_CHECKOUT, eventValue);

購入 (af_purchase)

目的

ホテル予約アプリの購入トレンドを理解しましょう。このイベントを計測すると、次のことに役立ちます。

  • アドネットワークと広告代理店間のユーザーのLTV(顧客生涯価値)とキャンペーンのROIを判断します。
  • どのようなオファーがユーザーに最も人気があるのかを特定します。
  • キャンペーンのターゲティングを最適化するために、購入されたアイテムとキャンペーンを相互参照します。

トリガー

購入が正常に完了しユーザーに「ありがとうございました」が表示されたとき

イベントパラメータ

名称 説明 値の例:
af_revenue 購入による収益の予測 1205.99
af_price 全体の購入金額の合計 4000
af_content_id 商品ID 121
af_content_type 商品カテゴリ hotel
af_currency Currency code AUD
af_quantity カート内の商品の数 1
af_order_id 購入後に生成されるオーダーID X123ABC
af_receipt_id CRITEOとGoogle AdWordsのリターゲティング連携に必要なオーダーID X123ABC

コードの例

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.PRICE, 4000);
eventValue.put(AFInAppEventParameterName.CONTENT_ID, "121");
// for multiple product categories, set the param value as: // new String {"121", "262"}
eventValue.put(AFInAppEventParameterName.CONTENT_TYPE, "hotel");
// for multiple product categories,, set the param value as: new String {"hotel", "meals"}
eventValue.put(AFInAppEventParameterName.CURRENCY, "AUD");
eventValue.put(AFInAppEventParameterName.QUANTITY, 2);
// for multiple product categories, set the param value as: new int {2, 5}
eventValue.put(AFInAppEventParameterName.RECEIPT_ID, "X123ABC");
eventValue.put("af_order_id", "X123ABC");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.PURCHASE, eventValue);

旅行の予約 (af_travel_booking)

目的

アプリの全体的な予約率を決定します。このイベントを計測すると、次のことに役立ちます。

  • 予約から発生した収益を記録
  • 子供と一緒にホテルを予約するユーザー数を把握
  • 季節的なトレンドを理解
  • 人気のあるホテルを決定

トリガー

ユーザーがホテルを予約した後で予約完了ページが表示されたとき

イベントパラメータ

名称 説明 値の例:
af_revenue 予約による収益 647.95
af_currency Currency code GBP
af_price ホテルの定価 674
af_content_id ホテルID ODIRNH
af_date_a 2018/07/26 チェックイン日
af_date_b チェックアウト日 2018/08/01
af_destination_a ユーザーロケーション London
af_destination_b ホテルの場所 Madrid
af_class 客室タイプ デラックス
af_num_adults 宿泊者数 2
af_num_children 子供の数 0
af_hotel_score ホテルのレビュー評価 9.6
af_preferred_star_ratings 希望するホテルの星評価 5
af_preferred_neighborhoods ホテルが位置するエリア 中心部
purchase_method 購入方法 クレジットカード
af_coupon_code プロモーションコードまたはロイヤルティー報酬ポイント SUM2018
property_type 物件タイプ ホテル
new_booking ユーザーの初回予約 true

コードの例

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.REVENUE, 647.95);
eventValue.put(AFInAppEventParameterName.CURRENCY, "GBP");
eventValue.put(AFInAppEventParameterName.PRICE, 674);
eventValue.put(AFInAppEventParameterName.CONTENT_ID, "ODIRNH");
eventValue.put(AFInAppEventParameterName.DATE_A, "2018/07/26");
eventValue.put(AFInAppEventParameterName.DATE_B, "2018/08/01");
eventValue.put(AFInAppEventParameterName.DESTINATION_A, "London");
eventValue.put(AFInAppEventParameterName.DESTINATION_B, "Madrid");
eventValue.put(AFInAppEventParameterName.CLASS, "Deluxe");
eventValue.put(AFInAppEventParameterName.NUM_ADULTS, 2);
eventValue.put(AFInAppEventParameterName.NUM_CHILDREN, 0);
eventValue.put(AFInAppEventParameterName.HOTEL_SCORE, 9.6);
eventValue.put(AFInAppEventParameterName.PREFERRED_STAR_RATINGS, 5);
eventValue.put(AFInAppEventParameterName.PREFERRED_NEIGHBORHOODS, "Centro");
eventValue.put("purchase_method", "credit card");
eventValue.put(AFInAppEventParameterName.COUPON_CODE, "SUM2018");
eventValue.put("property_type", "hotel");
eventValue.put("new_booking", true);
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.TRAVEL_BOOKING, eventValue);

カスタムイベントで推奨される構造

次のセクションでは、カスタムビエント名と推奨されるイベントパラメーターのイベント構造リストを示しています。アプリ内イベントには、ビジネスニーズを満たすどんなイベントパラメーターを含めることができます。

初回購入 (first_purchase)

目的

購入イベントと同じです。さらに、このイベントは次のことを判断するのに役立ちます。

  • 新規購入者が購入するまでにどれくらいの時間がかかるのか
  • どの商品が初回購入時に購入されやすいか
  • 初回購入の平均的な価格と収益

トリガー

ユーザーが最初の購入を完了したとき

イベントパラメータ

名称 説明 値の例:
af_revenue 購入からの収益 1205.95
af_price 全体の購入金額の合計 4000
af_content_id 商品ID 121, 262
af_content_type 商品カテゴリ hotel
af_currency 通貨 AUD
af_quantity カート内の商品の数 1
af_order_id 購入後に生成されるオーダーID X123ABC
af_receipt_id

CRITEOとGoogle AdWordsのリターゲティング連携に必要なオーダーID

X123ABC

コードの例

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.PRICE, 4000);
eventValue.put(AFInAppEventParameterName.CONTENT_ID, "221");
// for multiple product categories, set the param value as: new String {"221", "124"}
eventValue.put(AFInAppEventParameterName.CONTENT_TYPE, "hotel");
// for multiple product categories set the param value as: new String {"hotel", "meals"}
eventValue.put(AFInAppEventParameteName.CURRENCY, "USD");
eventValue.put(AFInAppEventParameterName.QUANTITY, 2);
// for multiple product categories, set the param value as: new int {1}
eventValue.put(AFInAppEventParameterName.RECEIPT_ID, "X123ABC");
eventValue.put("af_order_id", "X123ABC");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), "first_purchase", eventValue);
この記事は役に立ちましたか?