Pulsate Academy

Get the top mobile marketing
webisodes straight to your inbox!

Geofencing for Mobile Apps: 7 Things You’ll Kick Yourself for not Knowing

So I’d like to start off by describing geofencing. A geofence can be looked upon as a virtual perimeter that you can draw around any location on a map, and then target customers that enter that location. One of the powerful things that you can do with geofences is combine geographic location and user behaviors to personalize in-app marketing.

In last week’s video, we talked about beacons and how you can add this hardware to your location and target customers as they arrive, as they leave, or as they dwell. So we look at beacons as really being the micro-locations, and geofences as being macro. They’re used for very different use cases.


1. What is a Geofence?

Beacons are great for proximities and knowing at a very granular level that someone is near a certain object or product, and geofences are generally for larger areas where you want to know if someone is walking by your store, by a competitor’s, or coming into a particular location.

You would go onto a Google Map or some kind of other mapping product, you would identify the area that you want to geofence, and then the idea is you’re creating these circular regions, or in some cases, creating shapes or polygons or in the buildings or locations you want to target.

Then the phone or your app is monitoring for that geofence, and as I go about my business, day to day, it’s tracking that location in the background. You know immediately when someone breaches a fence, when they dwell there, or as they are about to leave.

Geofences can be used to target customers in physical locations, allowing you to trigger the right message, the right campaign, at the right time and place.

2. What are the benefits of Geofencing to my app?

Some of the benefits include increasing your sales and loyalty, and this can be done by bringing in your CRM data.

So when you know customers are near, that haven’t been in your store, haven’t been in your location, or haven’t transacted in a while, this might be a great time to do a win-back campaign and say, “Hey, we’ve missed you, we want to show you the love, come on in for a free coffee.” Remind them what their loyalty balance might be. Or tell about new lines that have come in to the store, new products that might interest them, based on that past purchase data that you’ve brought in.

3. Can you give me ideas for my app for using Geofencing?

In terms of use cases, and you can do incentives, you can remind them of rewards, you can also survey customers when they leave. So when you get an exit event for your geofence, it’s an excellent time to say, “Hey, first name, thank you for coming in to our business today. What was your experience like? How would you rate us? Is there anything that we could have done better?” Don’t forget to offer some kind of an incentive or reward for completing the survey.

Tracking competitors is something that’s kind of interesting as well. You can’t really bug out your competitors’ stores with beacons, but you sure can add a virtual perimeter, a geofence.

You do need to put this in your privacy policy, that you’re geofencing not only your own locations, but possibly other locations that don’t relate to your business. Maybe you don’t have to list them specifically as competitors, but I would mention something.

You can do the geofences around your competitor’s store and around the locations, so then you know, out of your loyalty base, what customers also frequent your competitors’ businesses.

You can use this to again score, increment or decrement a score on your customer table or database. Then you can use that, bring that back into your strategy to inform future action as to what way you would interact with that customer.

4. What are the technical requirements of Geofencing and how has it evolved?

This all works using a combination of usually GPS, cellular data, and also Wi-Fi data combined. Historically, it’s more about the cellular data. You could even go to your operator, you could geofence a certain area and then they’ll actually send a text message out to customers when they’ve breached that location. Of course, they haven’t opted in for that.

So that’s being phased out and being replaced by applications that can actually do the geofencing where you opt in for location services, you want to get some kind of push notifications, and you are aware that there is this value exchange going on.

We’ve moved from, as I said, the cellular, to doing the “in” at the application level geofencing, of which there is mainly two types. So we have active geofencing, and that’s when you have the application open on your device, you’re engaged in that experience.

You can use things like a high-accuracy GPS, so you can connect to a satellite, get a really high-accuracy lat and long of where that customer is. The problem is, using the GPS radio, the very high-power consumption, so you’re going to wear down the user’s battery.

Another problem with that is you can’t really use GPS in the background, and of course, your customers are not going to walk by your company or by your business with the app open. They’re not going to be that helpful.

The app is probably going to be in the background state so they’re not actively engaged. So this was another type of geofencing that we saw.

We have moved towards geofencing being passive, being working in the background, being always on, and always being low-power consumption and not using GPS.

How do the operating systems handle geofencing? In terms of both iOS and Android, on the iOS side we have a thing called “region monitoring”, which is a part of Core Location. You could do some basic geofencing, but really, the operating systems in a default way don’t handle geofencing very well. It’s known to be buggy, it’s known to be very inaccurate as well.

So think about it. Can you afford to do active geofencing and use GPS? What is the opportunity cost if customers realize you’re not doing a very good job of your geofencing and you’re wearing down their battery? That app is probably going to be deleted off their devices, ruining the opportunity for you, completely, as a business.

If you can’t engage with them in passive mode when the application is in the background, what are the opportunities that you’re missing as a company? Of all those customers that are walking on by your business, you don’t even know they’re there, you’re not reaching out.

It’s an opportunity that you’re missing to reach out, connect, and engage, and bring them back into your business, create that loyalty, and deepen the relationship.

Moving on to how we can actually put this to work and how we’ve done it in Pulsate. But that’s a pretty good primer in terms of the geofence being this virtual perimeter, you being able to target all sorts of notifications based on loyalty, based on transactions, based on segment data. We’ve talked about a range of use-cases in terms of surveying, tracking competitors.

You could even do a campaign that when you walk into a competitor’s fence, it says, “Hey, what are you doing here? We’ll give you a discount or we’ve got a better offering than this company.” A little bit spooky, and you may want to just track that they’ve been there and take action later with it. Delay, you may not want to do it in real time.

Then we’ve talked about how you can do geofencing in both an active and a passive mode, and that you want to combine them and that you want to have that opt-in.

So remember, geofences are virtual, you can create them in any location. They’re about macro location and you don’t need to deploy any hardware. They’re obviously very cost-effective because you can just fire up a map, create geofences all around the world, and instantly your app can begin monitoring for those locations.

Of course, it’s not always that easy that you can turn on geofencing and that it works. There are a lot of issues.

5. How does pulsate use Geofencing and what do you require from me?

So up next, we have how Pulsate has actually done this. I’m not going to really talk too much about the Pulsate product, but a little bit about what our requirements were for geofencing and the kind of checklist we had, our dream list, our vision for building geofencing.

What should this do, what way should it work, and what are the attributes that we absolutely did not want?

We wanted no hardware. If you go on a SlideShare at Google, people talk about geofencing using NFC and beacons. Technically I guess, it is a geofence, but it’s more micro-location, there are more proximities.

We see geofencing as being the virtual, so we wanted absolutely no hardware requirements for geofencing other than the actual consumer’s mobile device itself, that is the one prerequisite.

It should work passively in the background. We didn’t want this active state and it could be terminated in memory, the customers did not have to have the app open.

There should be very, very, very little battery drain. This is a huge issue. We wanted to do it in a low-voltage way that did not need GPS at all.

We wanted customers to be able to update our fences remotely, to change them, to manage them. With geofencing, if you do it in your own app, unless you use some kind of third-party tool, you’re probably going to have to bake all of your fences and locations hard-coded into your app.

So that means that you have to resubmit your app every time you want to add a new geofence, which is kind of impractical. Usually you want to have a database of them, an API that feeds your app, and then after then monitors for those locations.

You can use the default operating system API, so then take those locations and monitor for them, but you’re going to run into all sorts of reliability and accuracy issues. I’m probably going to cover this in another video. I could talk for hours just about the default APIs and all of the things that are wrong.

So we wanted that remote management, we wanted better accuracy, robustness, and we wanted to combine all of the centres on the device that we could use, the geofence. So we ended up taking cell-tower data and Wi-Fi data. The reason we used this primarily instead of GPS is GPS is something you power up on occasion, you get very high-accuracy location, but I have mentioned it’s a battery drain, and we didn’t want much battery drain as part of our geofencing solution.

In order for a phone to be a phone, has to connect the cell towers, otherwise when you get a phone call it’s not going to light up, when you get a text message. Your mobile phone also sends out Wi-Fi pings every couple of seconds. It says, “Hey, I’m looking for nearby Wi-Fi routers.” and they will respond, and that’s how when you’re in the settings of your phone and you’re looking for Wi-Fi networks to join, that you can see a list of all nearby Wi-Fi networks.

What happens is every Android, every iPhone in the world, if you read your terms and conditions, you’re actually helping Apple and Google to crowd source and enumerate all of those Wi-Fi networks and where they actually exist in the real world.

When a new Wi-Fi router or SSID is sighted, your operating system of your device will power up GPS in the background, take a high-accuracy lat and long of where that location is in the real world, building up their database.

What Pulsate does is, it piggybacks on those Wi-Fi pings already, and we just get that out of the callback, we listen to that thing that the phone is already doing. We have a database of all those Wi-Fi routers and where they are. Then also, for a phone to be a phone, it’s connecting to the cell towers already, so then we’re piggybacking on that existing connection, and there is a database of all cell-tower known locations.

We’re combining the cell tower known locations with the Wi-Fi known locations, which you can actually do very accurate geofencing with, right down to, on average, 100 meters and even below that in some situations. That means we don’t have to run GPS. It means we can do it in the background, and we’re not going to upset the user by draining their battery. So they were our requirements.

6. What are the FAQ’s of Geofencing?

In terms of best practices, what do you want the geofences to do in terms of use case, and where do you want to put them?

If you’re positioning geofences in an urban location it’s fine, you can have them pretty granular, pretty small, right down to 100 meters. If you’re out in the countryside, you’re not going to have the same density of Wi-Fi routers and cell towers, so you want to make those fences a little bigger, maybe several hundred meters, 500 meters, you can bring them up to several kilometers as well.

In urban locations, 100 meters is what we generally lock our customers down to, so you can’t go any lower than that. In certain situations, on specific streets that you know have a really high density of Wi-Fi routers and SSIDs that we have in the database, well then we can tune the fences and we get them down 50, 30, maybe even 20 meters. Well, this is something that you need to consider on a case-by-case basis and really test your fences.

If you’re doing 100-meter fences in any urban location, you can be pretty sure it’s going to work without testing the area. You can just plonk your fence down on the map, hit save, and you can target that location.

In terms of overlap, you really don’t want your fences to overlap unless you have some kind of unusual use case that calls for it. So generally separate your fences out, put a couple of hundred meters of distance between them. Remember, we’re not using GPS, right, so we don’t have that incredible sharp accuracy.

If you’ve got fences that are very near to each other, the operating system of the device and our SDK it’s probably not going to be able to understand, using cellular and Wi-Fi alone, whether someone is at this fence or they could be in between this fence or whether they’re at the second fence. So try to space them out, 500 meters or so, between each fence.

You want to consider as well that you really need Wi-Fi turned on on the consumer’s device for this to work. So if they’ve got Wi-Fi turned off, it’s not going to work. Cell towers are not enough to do accurate geofencing. We rely on the Wi-Fi data, take the resolution down as accurately plot users inside or outside of a fence.

Sometimes people would say, “Hey, I didn’t get the geofence. Is your Wi-Fi turned on?” If it’s not, it’s very difficult, it’s impossible, almost, to plot them inside of a geofence.

Some customers will have it on, some won’t, but the ones that have it on, you’ve still got a new way of targeting them that you didn’t before. It’s still a very, very valuable technology and a technique.

Bring segmentation into it as well. Don’t just rely on, “Hey, I’ve geofenced my store, I’m sending the same crap to people that walk by”. Segment, segment, segment. So use that path purchase data, use the behaviors, use the interest that you have on customers to really segment out your campaigns.

Instead of having one generic geofence campaign, have 5, 10, 20 campaigns that address all those different personas that you have in your customer base, making sure that you’re reaching out not only at the right place, but also at the right time, with the right message as well.

7. Geofencing, privacy and consumer perceptions.

So in terms of privacy, customers do have to opt in and this is not the type of cell-tower geofencing that you could do at an operator level and you send everyone an SMS. This requires customers to download your application, to opt in for location services, meaning that you can track that they were there. Of course, if you want to send them a push notification, you’re going to have to ask them to opt in for push as well, on top of location.

People ask us, “If we do geofencing, does that mean that I’m constantly tracking our customers’ locations and then we have all that data in our database, and then we just know when they hit a geofence? And then we reach out and target them?”

Actually, if you’re doing this, that’s something you really want to have in your privacy policy, and we don’t recommend constantly tracking users’ locations in the background. You can do this on iOS, it’s called a “Significant Change Location API.” So every time they change cell tower, you can actually fire up the app in the background and take a location of where they were last seen.

Unless you really need that, I wouldn’t do it. It’s a more strenuous privacy policy that you’re going to need, you’re going to have to explain that on opt-in.

With geofencing, the way it works is your app is monitoring for that specific location, and it only lets your server or your platform know when they’ve breached that specific location. So it’s not every location up until that point.

On opting in for things like location and push, remember, guys, this is a value exchange. Don’t just ask for location or push, probably don’t do it the first time they open the application, not on the first date. Maybe the second, third, or even fourth time they launch that application would be probably the best time to ask for location and then push. Do it in a way that you’re explaining why you want to do it, communicating the value proposition to them.

If they opt in, they get location-based rewards and treats based on their interests. You promise not to abuse this feature, and only use it at the right moment in time. That’s good value for the user. So remember to get that opt-in, do it in the right way.

We covered what a fence is. We’re going to go into, a few later episodes and videos, we’ll discuss in more technical detail how you can implement geofencing, getting around some of the issues of the operating system, and how to build it into your own SDK.

We’ve covered how you can target customers in physical locations, what the benefits to doing this are, within your business. I mentioned earlier that over 80% of your customers want to receive location-based rewards, offers, and notifications.

We’ve talked about some of the use cases in terms of surveying customers, tracking when they go to competitor locations, the way to do it and not do it, the constraints around active and passive fencing.

Remember, when you’re selecting a geofencing provider, make sure they’re not into battery drain and using GPS. Make sure it works in the background and passively, so that you’re maximizing your opportunities as a business. When customers walk by, you can reach out to everyone because they’re not going to have your app open all of the time.

We’ve talked about the best practices, the sizes of the fencing, not to overlap them, how to bring in your segment data, and of course, how to get good opt-in from your customers, to be up front and very explicit in everything that you do.

I hope today’s episode has been valuable and interesting in how you implement geofencing in your business. If you have any questions, don’t be afraid to send me a tweet, leave a comment below the video, and I look forward to seeing you next week


10 things to Ask Geofencing Companies Before You Buy Their Software – Pulsate Academy

August 21, 2018

[…] our earlier posts, we go over the basics of what a geofence is  and we cover some of the best practices that you should consider when using them with your mobile […]




Request Demo