Slide background


All in one simple SDK

Slide background

All in one simple SDK


A native, iOS and Android library that makes it easy to add always-on geo-capabilities such as Geo-Fence, Motion detection and Social location to your app.

It’s sort of “regions” for iOS and “Google play services” for Android with GPS like resolution (~5M / 16 feet) in one simple and consistent to implement SDK.


Always-on location for your app

24/7 location tracking for your app enables you to easily deploy advanced geo-capabilities like geo-fences, motion detection and social location, enabling new standard of services and engagement for your users.

Native iOS and Android sdk

Offering simple and easy deployment of native libraries for iOS (Objective C) and Android Jar (Java), supporting all devices and systems from 4.3 and 2.2 respectively.

The lowest power consumption of any location sdk!

24/7 location tracking on a mobile device is power hungry task. At kitlocate we’ve got it down to less than 1%/hr. Using our proprietary power management algorithms, intelligently sampling location sensors only when it is needed and managing data communication responsibly.

Unlimited # of geo-fences

Offering unlimited number of geo-fences, smartly updated in the background based on users location. Easily managed (create / delete) from the cloud with advanced features such as geo fence validation.

Geo-fence trigger

Send push notification based on geo-fence / geo location triggers events using our push notification platform to engage your users at the right time and place.

Location data perfection and error-free sampling

Proprietary multi sensor location detection and perfection algorithms enable us to provide reliable data efficiently, sift out and fix false location readings.

Location tested – not your ordinary qa!

Location is all about being out there and getting it right – exploring every scenario requires extensive field-testing. We’ve done it all for you and will continue to do so on new devices and os versions.

Push notification

Use our integrated location based push notification solution – using local notification (made possible by our always-on background service) or remote notification to communicate with your users when they need you.

Unified backend to manage your apps location needs

Manage your native iOS and Android app location capabilities from one unified backend in the cloud. Control your apps and the way your users and locations relate and interact via push notification.

Analytics and reports

Get the bigger picture. Our dashboard offers a range of predefined reports and the ability to create your own using our reports systems.


Download iOS/Android
Sample Projects

Framework / Jar

Full Framework / Jar


Example of Periodic Location

Geo Fencing

Example of GeoFencing

Driving Detection

Example of Driving Detection



What’s the main benefits of using Kitlocate’s geo-location SDK?

Creating a geo-location framework is one of those tasks that seem easy at first, but prove to be awfully tricky after a few weeks of development.

A good geo-location framework needs to handle the battery efficiently, manage large amount of geo-fences on the device and in the cloud, be consistent across platforms (and hopefully use the same dashboard across them), and use multiple sensors for when the GPS is off or inaccurate. And that’s just getting the raw data. In addition, a production grade system should perform some statistical cleansing to avoid false positives. After all, welcoming your user to your restaurant when they are really stuck in traffic on the highway near by is not a good customer experience.

Why KitLocate is more suitable for my project ? how is it different than iOS Regions and Android Fused?

Regions and Fused are great API’s but they also offer a very raw capability that requires a lot of work and has its respective limitations, KitLocate offers:

  • Easier and faster implementations – Regions on iOS and Fused on Android work very differently and require expertise and time to master. KitLocate provide one consistent and simple way to deploy location for your app
  • Unified dashboard for your iOS and Android apps
  • Battery efficiency – KitLocate offers the lowest power consumption in the industry
  • Continues support of new and old devices – as new devices and OS versions rolls into the market, some API break, some just do not work as they should, we keep it running making sure your app will continue to work.

Kitlocate is not just an SDK – it offers complete location platform for your app, combining location SDK, cloud management tools and a robust push notification solution.

What sensors are used to get the geo-location from the device?

Kitlocate uses the following sensors:

  1. GPS
  2. WiFi
  3. Cell tower
  4. Movement sensors

We developed a smart algorithm that optimizes the use of each sensor based on a few parameters. This is our secret sauce.


How much does it cost to use KitLocate?

We offer a FREE basic plan that should suit a small/medium sized project of up to 150K active users per month. This should be sufficient for most users.
We also offer a PRO plan for up to 500K/month users for $299 and an Enterprise plan for VIP partners.
Registration to our service is free and you can at any stage for assistance.

We need to update our Point of Interest every day. what is the price to use your webservice to update these Points remotely?

Pricing information is available at the pricing page on our site.

Do you have a special plan for non-profit organizations?

If you are an early stage startup or not-for-profit organization doing something to make this world a better place, for special pricing.


What Platforms Does KitLocate Support?

We support iOS (4.3 and up) and Android Froyo (2.2) and up.

Does KitLocate requires a connection to the net in order to work?

Yes, In order to allow the SDK to communicate with our servers, the handset should be connected to the Internet.

Can I get my users’ data from your servers?

It depends on the type of data in question. KitLocate supplies web services, that give you access to some of your users’ data – please contact support from the developer’s site and we will be happy to help you.

How Accurate Is KitLocate Location?

We provide accuracy of about 5 meters (16 ft). The accuracy depends on the device sensors and the user’s geographical location (in the real world). The location detection mechanisms depend on the quality of the sensors in the user’s device, the coverage of GPS, WiFi and cell-towers in the user’s area, as well as on other sensors at the user’s specific location.

Does KitLocate have an API, e.g. for integration with other systems?

Currently, KitLocate supports API calls for managing geo-fences. A more comprehensive API support is under active development.

How many times geofenceIn or geofenceOut Callbacks can be triggered?

y default, a geofence callback is triggered only once.
However, it’s easy to change this behaviour to unlimited times.
You can do it by changing the trigger property of the geofences you create to ‘-1′, for example:

KLGeofence myGeofence = new KLGeofence( 28.6139f, 77.2303f, 800,KLGeofence.Type.IN).setTrigger(-1);

By doing that, you should get the geofencesIn callback once every few minutes


I’ve implemented the KitLocate delegate, and for some reason it doesn’t broadcast the location. Any suggestions?

Please make sure that:

  • You pass a valid API key to initKitLocate.
  • The application bundle in your application and the application bundle on the dashboard are identical. Names are case-sensitive!
  • The application bundle and the API key match. The correct API key for a given application bundle can be viewed at the dashboard.

I’ve set up a few geo-fences, but when I enter them nothing happens. I was expecting to receive a push notification. What went wrong?

In order to avoid false positives, the geo-fencing module waits a bit before triggering an in/out event.
Please make sure you wait about 2–3 minutes at each side of the geo-fence in order provide the mechanism enough time to respond. We recommend using our verification module, which verifies user locations, a couple of times before triggering a geo-fence in/out event.

What does error 103 mean? (didFailInitKitLocate error: 103)

This error code indicates that background app refresh is not allowed on your device. Please turn it on and check again? (Settings -> General -> Background App Refresh).

Power consumption, hardware and sensors

How does KitLocate’s power consumption compares to other geo-location systems?

KitLocate consumes less than 1% of the battery per hour. This is a considerable improvement over the industry standard of up to 12% battery per hour. A naive solution of keeping the GPS always on would consume about 33% of the battery per hour.

Which device sensors does KitLocate Use to track users location?

Our location SDK uses multiple sensors on the phone (GPS, WiFi, Cell towers, accelerometer, etc.).

Can I get the user’s location even when the App isn’t on?

Yes, Most of the apps are actually turned off by the OS (“running the background”) 99% of the time. Our services are fully operational even if the app is running in the background.

What happens when users turn the GPS off? Will KitLocate SDK still work?

Yes, our technology uses various sensors and we never rely on only one sensor.


What Is Geo-Fencing?

Geo-fencing is user-defined virtual perimeter for a geographic area around a specific point of interest.

Why is geo-fencing useful?

Geo-fencing allows your app to react to your user’s environment, offering a platform for increasing user engagement. A chain store can use geo-fences around its branches to notify users of new sales when they are near a store. A tourism bureau can place geo-fences around historic locations to prompt tourists when they approach one. What will you use it for?

What data is needed in order to define a geo-fence around a point of interest (POI)?

The coordinates of the POI (latitude and longitude), and a radius. We recommend a minimum of 120 meters (about 400 feet) for the radius.

Is there a limit to the number of geo-fences KitLocate’s SDK users can create?

Nope, you can add an unlimited number of geo-fences – for both iOS and Android

Can geo-fences overlap?

Yes. When a user enters a few geo-fences at once, your KitLocateDelegate receives a list of all geo-fences entered.

Does KitLocate SDK geo-fence mechanism work only when the user stays at the geo-fence or even if the user is passing by?

We support both. However, if you want to ensure that the user is dwelling in the geo-fence, we recommend that you use our geo-fence verification service. This service verifies that the user is indeed inside the geo-fence before triggering a notification.

When should I set periodicMinimumInterval?

The periodic minimum interval matters when your application listens to periodic locations (by calling [KLLocation registerPeriodicLocation] and implementing the callback gotPeriodicLocation).
You can set it by calling setPeriodicMinimumTimeInterval. This method takes the minimum length of the interval, in seconds.

Is It Possible To Identify When Someone Starts / Stops Driving Using the KitLocate SDK?

Yes, we have a motion detection module that provides indication when your users start and stop driving.

Still got questions? Contact Us

    Request a demo

    Please fill up the form and we will get back to you shortly.






      * Mandatory field