Feature Overview

We are currently seeing a high rate of abandoned baskets, we have multiple hypotheses as to why this is; distraction, choice paralysis, guilt and cost. With this experiment we are trying to see if merely reminding a user about an order they started placing will help remind them and increase conversion. Longer term we are looking at other areas that contribute to the abandon rate such as filtered on-boarding so we can recommend more accurate restaurants based on your tastes.



If we send a user a push notification for an abandoned basket

we hypothesise it will encourage users to complete the order and turn into an active customer that day


Metrics to impact

  • Conversion rate
  • Retention rate
  • WACs


Experiment goal

  • To test the impact of prompting an dropped user shortly after they abandon an order



Abandoned basket: Definition

We define a basket as "abandoned" when a user has added a least one item into their basket, and has subsequently either backgrounded or killed the app.


Time to send push

tl;dr - we should send the push 15 minutes after the basket is abandoned

If we leave it too long it is less likely that we'll convert users as they will have made other plans by this point. And if send it too soon it has a higher risk of being annoying and could lead to a higher rate of uninstalls.


1. Server side solution

In the push we can include:

  • Restaurant name or an item in the basket
  • Time the restaurant can deliver in e.g. "within 20 mins"

If we want to use a specific item and/or time in the notification, it will need to be server driven. Also this would enable us to ensure we don't send the notification if the restaurant or zone has since closed.


2. Client side only solution (in case of no backend support)

In the push we can include:

  • Restaurant name

On the client side we can send the name of the restaurant but we wouldn't be able to know if it was open or if the zone had closed.

Caveat : We may be able to get the time using appboy



Still hungry? {resto_name} is waiting to take your order.
Still hungry? {resto_name} can deliver to you within [x] minutes.


Copy hypothesis

  • Using the restaurant name moves the focus away from us, meaning it's less likely to seem irritating or repetitive.
  • It's also an easy win in terms of personalising the message for the user.