Skip to main content
Version: 9.2

Analytics

The library uses analytics to track key user interactions and improve the overall experience. You can listen to the events we send and integrate them into your own analytics systems for tailored insights using window.mealz.analytics.eventSent$. See window.mealz.analytics for more details.

Events

Recipe card

  • recipe.show: When 80%+ of the recipe card is on the screen for 1 second
  • recipe.display: Click on the recipe card to open the details
  • recipe.like: Click on the heart button when recipe is not liked
  • recipe.unlike: Click on the heart button when recipe is liked

Recipe card
Recipe card

Recipe catalog

alt text

  • pageview: Each time you land on the page
  • category.show: When 80%+ of the category is on the screen for 1 second
  • category.display: Click on "See all" on a category
  • basket.display: Click on "X products in your cart"
  • search: When you search for recipes or ingredients

Preferences

  • pageview: Each time you land on the page

Recipe details

  • pageview: Each time you land on the page
  • recipe.like: Click on the heart button when recipe is not liked
  • recipe.unlike: Click on the heart button when recipe is liked
  • recipe.change-guests: Change of guests using the counter
  • recipe.close: Click on the Cross button or the blurry background
  • entry.add-all: Click on 'Add X products (XX,XX€)'
  • recipe.continue: Click on 'Continue'
  • recipe.shopping.display: Click on 'Shopping' tab
  • recipe.cooking.display: Click on 'Cooking' tab
  • home.display: Click on 'See more recipes'

Recipe details
Recipe details

Product card

  • entry.add: Click on the cart button
  • entry.replace: Click on the 'Replace' button
  • entry.delete: Change quantity to zero
  • entry.ignore: Click on the 'Ignore' button

Product cards
Product cards

Store locator (Provider mode only)

  • locator.display: Click on "Change store" in the header of recipe details or basket
  • locator.search: When the search results are available

Onboarding (Provider mode only)

  • onboarding.action: Click on the main CTA of the view
  • onboarding.close: Click on the Cross or the blurry background

Provider mode onboarding
Provider mode onboarding

Basket interactions

  • entry.added: Each time an entry is succesfully added to the basket
  • entry.deleted: Each time an entry is succesfully removed from the basket
  • entry.replaced: Each time an entry is succesfully replaced

Payment

  • payment.started: When the user enter the payment journey
  • payment.confirmed: When the user has succesfully paid the basket
  • basket.confirmed: Once the payment is finished

Event properties

info

Some of the events listed in this section have not yet been implemented. Refer to the Events section to know which ones are.

PageView

  • pageview
    • none
  • search
    • search_term

Recipe

  • recipe.show
    • recipe_id
    • category_id (Optional): ID of the catalog category the recipe is in
  • recipe.display
    • recipe_id
    • category_id (Optional): ID of the catalog category the recipe is in
  • recipe.shopping.display
    • recipe_id
  • recipe.cooking.display
    • recipe_id
  • recipe.like
    • recipe_id
    • category_id (Optional): ID of the catalog category the recipe is in
  • recipe.unlike
    • recipe_id
    • category_id (Optional): ID of the catalog category the recipe is in
  • recipe.add
    • recipe_id
  • recipe.remove
    • recipe_id
  • recipe.change-guests
    • recipe_id
    • guests (Optional): New number of guests
  • recipe.continue
    • recipe_id
  • recipe.close
    • recipe_id

Recipe ordered

  • recipe.ordered.display
    • recipe_id
  • recipe.ordered.close
    • recipe_id
  • sponsor.display
    • recipe_id
  • sponsor.back
    • recipe_id
  • sponsor.close
    • recipe_id

Home

  • home.display
    • none
  • breadcrumb.select
    • step: Index of the step which was clicked

Category

  • category.show
    • category_id
  • category.display
    • category_id
  • category.back
    • category_id

Liked

  • liked.display
    • none
  • liked.back
    • none
  • liked.search
    • search_term

Orders

  • orders.display
    • none
  • orders.back
    • none
  • orders.search
    • search_term

Order

  • order.display
    • basket_id: ID of the order
  • order.back
    • basket_id: ID of the order
  • order.close
    • basket_id: ID of the order

Preferences

  • preferences.display
    • none
  • preferences.close
    • none
  • preferences.reset
    • none
  • preferences.save
    • none
  • preferences.guests
    • guests: Number of guests selected
  • preferences.tags.selected
    • tag_type
    • tag_id
  • preferences.search
    • search_term

Entry

  • entry.add, entry.added
    • entry_name: Name of the basket entry
    • item_id: Mealz's item id
    • ext_item_id: Client item id
    • item_ean
    • product_quantity
    • recipe_id (Optional)
  • entry.delete, entry.deleted
    • entry_name: Name of the basket entry
    • item_id: Mealz's item id
    • ext_item_id: Client item id
    • item_ean
    • product_quantity
    • recipe_id (Optional)
  • entry.replace
    • entry_name: Name of the basket entry
    • item_id: Mealz's item id
    • ext_item_id: Client item id
    • item_ean
    • product_quantity
    • recipe_id (Optional)
    • status (Optional): Status of the entry (initial, active, ignored, ...)
  • entry.replaced
    • entry_name: Name of the basket entry
    • new_item_id: Mealz's selected item id
    • new_item_ext_id: Client selected item id
    • new_item_ean
    • product_quantity (Optional): Selected item quantity
    • old_item_id (Optional)
    • old_item_ext_id (Optional)
    • old_item_ean (Optional)
    • search_term (Optional)
    • recipe_id (Optional)
  • entry.ignore
    • entry_name: Name of the basket entry
    • item_id: Mealz's item id
    • ext_item_id: Client item id
    • item_ean
    • product_quantity
    • recipe_id (Optional)
  • entry.change-quantity
    • entry_name: Name of the basket entry
    • item_id: Mealz's item id
    • ext_item_id: Client item id
    • item_ean
    • product_quantity: New quantity
    • recipe_id (Optional)
  • entry.add-all, entry.add-all-again
    • recipe_id
    • entry_count: Number of products added

Item selector

  • item-selector.display
    • none
  • item-selector.back
    • none
  • item-selector.search
    • search_term

Meal planner

  • planner.started
    • budget: Budget entered by the user
    • guests: Number of guests entered by the user
    • recipe_count: Number of recipes entered by the user
  • planner.recipe.deleted
    • recipe_id
  • planner.confirm
    • budget_user: Budget entered by the user
    • budget_planner: Total price of the recipes added to the basket
    • recipe_count: Number of recipes added to the basket
    • guests: Number of guests entered by the user
    • uses_count: Number of times the user has used the feature
    • time_passed: Time passed on whole the feature by the user (starts on planner.started)
  • planner.finalize
    • budget_user: Budget entered by the user
    • budget_planner: Total price of the recipes after user changes in the basket preview
    • recipe_count: Number of recipes after user changes in the basket preview
    • guests: Number of guests entered by the user

Store locator (Provider mode only)

  • locator.display
    • none
  • locator.map.display
    • none
  • locator.list.display
    • none
  • locator.back
    • none
  • locator.close
    • none
  • locator.search
    • search_term
    • stores_found_count: Number of stores returned by the search
  • locator.filter
    • supplier_name: Name of the supplier selected by the user
  • locator.select
    • pos_id: ID of the store selected by the user
    • pos_name: Name of the store selected by the user
    • supplier_name: Name of the selected store's supplier

Onboarding (Provider mode only)

  • onboarding.action
    • steps_completed: Number of steps viewed by the user before confirming
  • onboarding.close
    • steps_completed: Number of steps viewed by the user before closing

Basket

  • basket.display
    • none
  • basket.recipes.display
    • none
  • basket.products.display
    • none
  • basket.close
    • none
  • basket.entry.add
    • none
  • basket.confirmed
    • basket_id: Mealz's basket id
    • miam_amount: Mealz amount in the basket
    • total_amount: Client's basket total amount
    • pos_id: Store ID
    • pos_name: Store name
    • recipe_count: Number of recipes in the basket
    • miam_products: Number of products pushed by Mealz in the basket
    • total_products (Optional): Total number of products in client's basket
    • client_order_id (Optional)
  • basket.transfer (Provider mode only)
    • basket_id: Mealz's basket id
    • miam_amount: Mealz amount in the basket
    • pos_id: Selected store ID
    • pos_name: Selected store name
    • supplier_id: ID of the selected store's supplier

Payment

  • payment.started, payment.confirmed
    • basket_id: Mealz's basket id
    • miam_amount: Mealz amount in the basket
    • total_amount: Client's basket total amount
    • pos_id: Store ID
    • pos_name: Store name
    • recipe_count: Number of recipes in the basket
    • miam_products: Number of products pushed by Mealz in the basket
    • total_products (Optional): Total number of products in client's basket
    • client_order_id (Optional)

If you would like another event to be covered, feel free to contact us.