My Geofences aren’t working. I keep being put in and out of a Geofence constantly!

You need to have Wifi turned on for Geofences to work properly. If you don’t have Wifi turned on, the only way your phone can know your position is with Cell towers, and those are way unprecise.

Also, I recommend first doing a very simple test just to see if it works:
Create a very big geofence around your location and use that in a profile condition in Tasker. Then in the task just show a popup with “Success”. Exit tasker, make sure the geofence monitor is on, and see if the popup shows up. If it does, try to make simple changes to the profile to see when/if it stops working, so you know exactly what the part is that makes it not work.

 What’s the difference between the “Geofence Monitor”, the “Location Monitor” and the built-in Tasker location condition?

  • The Google Fuse Location monitor powers both my “Geofence Monitor” and “Location Monitor”.
  • The “Geofence Monitor” doesn’t use your GPS. It uses other location data like wifi networks or cell towers. It’s designed to be a low power monitoring mode with the sole purpose of knowing if you’re inside a geofence or not. My guess (there’s no description about it on the developer API) is that it uses the equivalent of the “Balance Power/Accuracy” mode in the “Location Monitor”
  • The “Location Monitor” may or may not use GPS (or even any power at all) depending on what setting you use in the “Update Type” setting in Tasker. The purpose of this is to find out the latitude and longitude of your location.
  • The Tasker built-in method uses Tasker’s developer’s own algorithm to find out if you’re in a given geofence. The difference here is that it doesn’t use the Fuse Location monitor to do this.

Why do I need to turn Wifi on for Geofences to work? That’ll drain my battery!

If you want any kind of reliable location service to work on your device, you’ll have at least a bit of battery drain, there’s no way around that. 🙂

The reason you need to have Wifi on is this:

  • Google knows where Wifi networks are located
  • When monitoring Geofences, your phone will look for nearby Wifi networks, and send that info to Google
  • Google will check their data base and see where those Wifi networks are located
  • Google will report back your approximate location on your phone based on that info

So, your locations will only be accurate if:

  • Your Wifi is turned on
  • You have an active data connection (3G/LTE/connected to Wifi)
  • There are Wifi networks around you
  • Google knows about these Wifi networks

If any of these conditions are not met, your location may be way off.

What location settings should be selected on Android KitKat?

In your Android System Location Settings You should select “High Accuracy” mode if you want to use the location monitor in “High Accuracy” mode or “Battery Saving” mode otherwise.


Also, if you are using AppOps or another permission manager: Please make sure that “Google Play Services” has the permission to access location data. It is required to provide more accurate location data.

Geofence monitoring drains my battery! What can I do?

There will sure be more battery drain with Geofencing enabled, but it is supposed to be better than other methods of location tracking. I really don’t control that directly, since all Geofence reports come from a Google service, but that’s how they describe the service anyway. For what it’s worth, I don’t think the battery drain is linear, which means, if you stay at home all day for instance, it will probably use less battery than if you move around all day.

I can’t get the “Driving” activity to work consistently. What can I do?

You should put your Android device on a hard surface in your car if possible. This will make it so that it better detects the car’s vibrations and more can more easily find out that you’re driving.


 The Activities Monitor drains my battery! What can I do?

The activities monitor will drain your battery if you keep it on all day. No doubt about it. With this in mind, you should use it sparingly, and only when you really need it.

For instance, if you want to know if you’re really home, and not just passing by on the street, you could activate the Activities monitor to detect if you’re still, only when connected to your wifi network, and turn it off otherwise. Or, like in my Video Tutorial for AutoLocation, activate it only when near the store when you want to detect you’re walking (and not driving) by the store.

How do I correctly use the “ignore” functionality in AutoLocation Activities profiles?

When you select that you want to ignore a certain activity, you are saying that that activity won’ t matter at all for that profile. This is different than just not selecting the activity in the first place.

To give you an example, if you want to detect you’re in a vehicle you probably should:

  • Check the “Vehicle” checkbox in the “Activity Reported Options” section
  • Check the “Ignore Tilting” and the “Ignore Unknown” checkboxes in the “Ignore Activities for this Condition” section

This way, if by any chance there’s an unkown activity while you’re driving, you driving dependent profiles will not be deactivated.

A common mistake would be to ignore all activities besides the “Vehicle” activity, but this wouldn’t work  because then the profile will never become inactive once it detects Vehicle mode for the first time.

 What happens if youdo that is the following:
  •  Vehicle detected -> Activate profile
  • You get out of the car and walk: “walking” detected -> ignored; profile still active
  •  You get home: “staying still” detected -> ignored; profile still active

As you can see the profile will always remain active once it first detects you are in a vehicle.


 How can I monitor multiple Geofences in a single Tasker profile? And how do I know which geofence I entered/exited in the Task?

You can use the manual geofence name “.+” (without the quotes) and check the regex option. This will match any Geofence with at least 1 character in its name. 🙂
Then in the task you’ll have the variable %algeofence that contains the name of the geofence you entered/exited.


Why do I need the Location Monitor? What’s the difference between that and the Geofence Monitor?

If all you want is to track your Geofences, the Geofence monitor is enough most of the times. It has its own internal refresh rate that tries to save the most battery possible and still be fairly accurate. My guess is that it uses the equivalent of the “Moderate” Location Monitor setting in terms of accuracy.
The Location Monitor can be used in 2 situations:
  • You may simply want to get your location in terms of latitude and longitude
  • You may want to manually control the refresh rate and accuracy of the Geofence Monitor
Because Android will always use the best available values for location (and thus geofence) tracking, if you start the Location monitor with a 5 second refresh rate and High-Accuracy, then the Geofence Monitor will also take advantage of these higher accuracy values and have better reporting.
That’s why in the AutoLocation Tutorial I use the Location Monitor to aid the Geofence Monitor when I know I’m almost near the store.

Why does the location monitor let me input a name?

It works like this:
– You request your location with the “AutoLocation Location” action.
– After a few seconds you get your location with the “AutoLocation Location” trigger

When you get your location you may want to do different stuff with it.

For instance, if you just parked your car, you may want to ask for your location and then create a geofence on that location. For this, you can create a location request named “create geofence” (or any name you want) and then in the location trigger have the same name. This trigger will create a geofence in the resolved location.

Now you got home and want to go for a bike ride. You want to track you location and save it to a log. You now create a location request with the name “bike” and create a trigger with the same name. That trigger will add an entry to the log with the current location. The parked car trigger will not trigger because it has a different name.

How do I get an accurate high-precision location with the Location monitor?

  • Set the “Update Type” to “High Accuracy”
  • Set the “Expiration Time” to some value that you think will be enough to get a GPS lock, usually 60 seconds will suffice
  • Set the “Interval” to something low like 3 seconds, because otherwise android might turn off your GPS between updates, making you lose your GPS lock
  • Don’t set the “Number of Updates” field.
  • Don’t set the “Smallest Displacement” field.
  • In the task that handles the location updates, the first time it updates will have the most recently stored location. Only the second update will have your real current location.

Can I turn wifi off and still have Geofences working on Android KitKat?

Yes you can. Go to Wi-Fi settings-> Advanced -> and enable “Scanning always available”

Why does the AutoLocation free 7 day trial put me in a subscription?

Unfortunately there’s no other official way of creating a free trial on Google Play. The only way I can unlock the app for free for a certain period of time is by creating a subscription with that free trial. Be sure to unsubscribe before the 7 days are up! You can then purchase the app for a one-time fee and unlock it forever. If you don’t unsubscribe you’ll be charged monthly which is probably not what you want.