Tutorial : Understand & Test Geofencing


It is a SDK feature that allows you to pro-actively send push message when a user enters an area that has been defined as a trigger. In order to use geofence, two actions are required : 

  • its activation in the SDK 
  • the user needs to Optin to the location sharing even if the app is not in foreground.



Create the geofence areas on the Accengage Dashboard

There are two ways to create geofence zone :

  • by adding them directly on our platform
1. Select "Targeting" in the toolbar menu and "Geofence/iBeacons"
2. Click on the "Add geofence" to add a new zone 
3. Enter the required fields
4. Click on "save"


  • by importing a csv file

1. Select "Targeting" in the toolbar menu and "Geofence/iBeacons"
2. Click on the "Import geofence" button
3. Links the fields from the first line of you csv file (UTF-8 whitout BOM) with a separator ;
4. Confirm the import
5. A confirmation message will appear on our platform 


You'll find more information in our user guide here. Note that the geofence can take up to 1h before being eligible to trigger campaigns.


You may need these credentials to connect to our User guide:

Login: accengage-doc
password: *sk!24HC]yR6j%qs


Note that iOS and Android impose a limitation toward the number of geofences on which a device can subscribe at the same time (including geofences & iBeacons) :

  • iOS : 20 areas
  • Android : 100 areas

If you have more geofences than this limit for your campaigns, our SDK manages a way to update the subscribed geofences without having the user to open the app.


Common questions

- Accengage limits the number of geofences to 25.000 areas maximum per apps.

- 100 goefences will represent take approximately 10Ko of data storage on the app.


Create the scheduled alarm campaign 

1. Create a scheduled alarm
2. Define the geofence zone as a trigger (cf : screenshot below)
3. Select a segment
4. Click on "activate"
5. Direct yourself to the geofence zone defined and enter in it
6. Check if you receive the scheduled alarm


The user must open the app and be eligible in the segment and to the trigger in order to receive the alert. Therefore, we recommend anticipating the creation of the alert and the upload of the geofecence, so when your campaign goes live it will already have some eligible audience.

In order to test the campaign, you need to first activate the campaign on the dashboard, wait a few minutes, then kill and open the app.



  • In order to avoid possible double sending of the alert for once entrance, we recommand to define a minimum delay between two alert display higher than 30 minutes.
  • If the radius of the geofence is too small, it may happen that the device does not have the time to notice the entrance in the area. Therefore, we recommend the following minimum radius : 
    • 100 m for pedestrian
    • 300 m for drivers
  • The detection of the entrance in an area is managed by the location services of iOS & Android systems. Therefore, it may happen that :
    • The device network can impact on the location precision
    • The alert reception can be delayed if the entrance is not detected right away (up to 15 minutes delays have been observed)



  • If the user is already inside the geofence area and the alert has not been triggered yet, opening the app will also act as a trigger
  • The overlay of areas is possible. If the user enters a first area, then a second, he will receive 1 alert for each area (based on the capping & display delays defined in the alert settings). The minimal timing to receive an alert after entering an area is 20 seconds.
  • If new areas, have been added to a campaign, the user must open the app after their upload in order to get eligible.



The Persistent message parameter allows the display of alerts even if the device hasn't recovered the last configuration from the server. 

Please see below the conditions that will apply :

  • It will still be mandatory to have network in order to allow the app to detect the entrance in the area.
  • If the connection is lost after the entrance in the area, the persistent messages will get displayed.
  • If the alert uses some dynamic fields to personalize the message, it may be possible that the displayed values will not be the latest stored in the Accengage database because of the impossibility to retrieve the server configuration.


How do Persistent Messages work?

For example, a user enters a geofence zone then leaves without receiving the alert. 

With the persistent message, the notification would still be sent even if the user is no longer in the zone because he is eligible. 

However, if the option is not activated, the alert won't be sent because the user won't be eligible.




In order to get eligible for this channel, the user needs to Accept the official OS permission for his location data sharing even if the app is no longer in the foreground.

We recommend triggering this popup after explaining what you'll use this data for, or only if the user visit a store locator page (or any other page using the location data).


iOS submission

Here are the different location sharing available on iOS :

  • Never : no location tracked
  • Active app : only when the app is in foreground
  • Always : even if the app is in background or killed (this is mandatory in order to work with beacons & geofences)
  • Background modes - location service need to be ticked.
    • It's activated by the mobile developer and justified to Apple
    • Don't activate it for geofences otherwise the app may be rejected by Apple.



In the device settings, the location service must be activated in order to enable the geofencing (PRIVACY section).

When accessing the 'Share My Location' settings, we recommend sharing the device location instead of the User location.


RECOMMENDATION: The location precision is higher when the Wi-Fi is activated on the device as this feature uses Triangulation between Wi-Fi networks.


iOS - Location Indicators

  • On the nav-bar the location icon means that the app is/was on the process of tracking location data.
  • In the device settings icon shows additional information about the tracking for each app 

iOS - Low Power mode

The Low Power mode limits the location tracking of the application in the foreground. Therefore, the geofence will be deactivated.


iOS - Geofence optin reminder

It may happen that the user will be reminded that an app is using the background location data. This is automatically triggered by iOS, and we have no possibility to control it. iOS does not share any information on the triggers for this reminder.



You need to enable the High accuracy (default settings) of the Battery saving mode in order to get eligible to geofencing. It is also necessary to have data network in order to get eligible.


Android - Devices restrictions

We noticed that on some ASUS and HUAWEI devices, a system app : Auto-start Manager can block the geofence alerts even if the user is geofence optin. Generally, some brands of providers overlay can add additional constraints to the geofence alerts receptions that we may have not yet noticed. 

Due to the high number of different Android brands & devices it is not possible for us to identify 100% of the possible limitations. Accengage follows and respect all the Google/Android guidelines in order to warranty a compatibility with the maximum different devices on the market.



The storage of location data in our database needs to comply with the current legislation if the user does not open the app for some time :

  • The users geofencing data will only be stored for 3 days/device maximum
  • After 3 days, the geofence data will be aggregated at an app level : you'll be able to see the traffic in your geofences in our geofence statistics (STATISTICS > GEOFENCING)
  • The storage of the user last location when the app was opened will be stored and kept available for segmentation during 6 months.
Was this article helpful?
0 out of 0 found this helpful
Submit a request