To drive offline sales through the mobile app experience, we implemented location-based push notifications for our retail client. Read about how we implemented this feature and what challenges we encountered. Thanks to our quality assurance experts and lots of research on the part of our developers, we were able to increase both time spent in the app and the retention rate.

We’ve been working with a large electronics retailer for over three years, creating two native Android and iOS apps. To drive offline sales through the mobile app experience, we decided to implement location-based push notifications. In this case study, we describe how we implemented this feature and what challenges we encountered. Thanks to our quality assurance experts and lots of research on the part of our developers, we were able to increase both time spent in the app and the retention rate.

Background

We launched the first application for our client almost four years ago. Our client’s goal was to strengthen the company’s online presence in the electronics retail market and get ahead of competitors.

Over the years, we created a big and complex ecommerce application and gradually added mobile-specific features to create more value for customers. Implementing rich push notifications provided us the best results. You can read more about our experience here.

Recently, we decided to improve the functionality by adding location-based push notifications with the help of a geofencing service that would allow us to send notifications to users who are close to a physical store. In the beginning, the idea was to just notify users that they’re near a store; but then we came up with an idea to provide special offers in each notification.

Our goals

There were several goals we wanted to achieve with this feature:

  • Link our client’s online business with over 250 physical stores around Ukraine
  • Drive offline sales with the help of a mobile app
  • Increase the app retention rate

To achieve these goals, we decided to implement push notifications with the help of geofencing. Location-based push notifications are linked to a user’s location. A user receives a notification only when they’re near a certain location: in our case, a physical retail shop.

We set KPIs for the first three months so we could track the progress of this new feature. To find out if it had potential, we decided to pay attention to the open rate in the first month of deployment and then adjust our KPIs accordingly.

Our goal was to link our client’s online business with over 250 physical stores and drive offline sales. We used location-based push notifications that were triggered once a customer was near a brick-and-mortar store

The challenges

We faced several challenges when planning and implementing this feature.

  • We needed to encourage people to give necessary permissions in order for the feature to work on their devices.
  • Before we started to get data with analytics, we needed to think through the strategies we’d use to increase the push notification open rate.
  • Finding a healthy frequency for push notifications was a challenge, as we needed to avoid users’ blocking this feature but still remind them to use the applications and encourage them to make purchases in physical stores. At the same time, we needed to take into account all other push notifications that aren’t location-based.
  • We needed to make sure the location-based notification feature wouldn’t use too much of a device’s battery because of constantly checking the GPS.
  • The feature didn’t work properly at first, so we needed to configure it. Some of our test devices didn’t always receive push notifications, so our development and QA teams needed to make the feature work as precisely as possible and test it.

The biggest challenge was to get users to give necessary permissions for location-based push notifications to work and also to figure out the frequency of sending the pushes in order to avoid users opting out

Our solutions

We chose a geofencing tool to implement the location-based feature and worked with it through native Android and iOS libraries. As we already had all the data about store locations, we connected our database with a geofencing service to detect every user near a shop within a city.

The Geofencing tool allowed us to set a radius around each shop. When a user entered this radius, the service would locate them with the help of GPS. As the geofencing service sends a notification only if a user’s location is 100% confirmed by its algorithms, it needed to be tweaked for stability.

A geofencing service to detect every user near a shop within a city

To make sure users got notifications, our developers first set a 100-meter radius, which is a recommended distance. But notifications didn’t arrive on some devices because the system couldn’t determine the location with enough precision. We solved this issue by increasing the radius to 200 meters.

We also added two work modes that would trigger the geofencing service for sure: entering and moving within the radius. This way we made the feature more stable, and geofencing delivered push notifications at all times.

To prevent excessive battery use, we used the Android library and optimized battery consumption. Our developers reduced the frequency of location checks and used alternative ways to determine the location: instead of GPS, the geofencing feature gets data from Wi-Fi and mobile networks.

We added two work modes and increased the radius so the geofencing tool would be triggered for sure

To get necessary permissions from users, we presented this feature in the release notes and explained what users would get for opting in. We made push notifications enticing as well. Instead of just informing users that they’re near a shop, we show special offers relevant to a particular shop.

To increase the open rate, we made push notifications rich, adding banners and maps. Upon opening, a push notification leads to a map and one special offer to motivate users to enter the shop.

To get necessary permissions and increase the open rate, we suggested including special offers into push notifications that would attract users to the physical shops

As we didn’t want to annoy users with too many push notifications while they’re walking around the city, we restricted the push notification frequency to once per seven days.

The results

It took our team of developers and quality assurance engineers 45 hours to implement the geofencing feature for Android and 40 hours for iOS. The team that worked on this feature comprised:

  • 1 Android developer
  • 1 iOS developer
  • 1 QA engineer
  • 1 business analyst

In the first month after we implemented location-based push notifications, we saw rather lackluster results: only 15 percent of users opened their push notifications. However, after we included rich media and promotional texts, the open rate increased to 35 percent.

Because users get notifications rarely, there wasn’t any increase in the uninstall rate.

The geofencing tool allowed our client to connect their online business with offline stores and promote each store separately, sending promotions and optimizing their stock in a particular store. For example, if a certain store needs to boost sales of a product they have in stock, location-based push notifications are an effective outreach tool for a promo campaign.

We’re now looking for the most effective way to track the connection between online and offline sales.