Safe Zones for a kids tracker: implementing geofencing

False safe-zone alerts annoy parents and erode trust in a kids tracker. We implement geofencing turnkey: we select a scheme for the load, remove unnecessary triggers, and bring accuracy to a predictable level. Support receives fewer tickets, and families get relevant notifications.

Development and support of all types of mobile applications:

Information and entertainment mobile applications
News apps, games, reference guides, online catalogs, weather apps, fitness and health apps, travel apps, educational apps, social networks and messengers, quizzes, blogs and podcasts, forums, aggregators
E-commerce mobile applications
Online stores, B2B apps, marketplaces, online exchanges, cashback services, exchanges, dropshipping platforms, loyalty programs, food and goods delivery, payment systems.
Business process management mobile applications
CRM systems, ERP systems, project management, sales team tools, financial management, production management, logistics and delivery management, HR management, data monitoring systems
Electronic services mobile applications
Classified ads platforms, online schools, online cinemas, electronic service platforms, cashback platforms, video hosting, thematic portals, online booking and scheduling platforms, online trading platforms

These are just some of the types of mobile applications we work with, and each of them may have its own specific features and functionality, tailored to the specific needs and goals of the client.

Our competencies:

Frequently Asked Questions

Latest works

  • Development of a mobile application for FEEDME
    Development of a mobile application for FEEDME
    971
  • Development of a mobile application for XOOMER
    Development of a mobile application for XOOMER
    869
  • Development of a mobile application for RHL
    Development of a mobile application for RHL
    1289
  • Development of a mobile application for ZIPPY
    Development of a mobile application for ZIPPY
    1143
  • Development of a mobile application for Affhome
    Development of a mobile application for Affhome
    1076
  • Development of a mobile application for the FLAVORS company
    Development of a mobile application for the FLAVORS company
    677

Why geofencing in a kids tracker fails and triggers false alarms

A safety zone in a kids tracker is a circle with a center and radius, and its entire operation depends on how often the app receives a coordinate.

A parent expects a notification at the moment the child crosses the boundary, but the system reports it minutes later, and sometimes stays silent altogether. The gap between expectation and reality is the source of most complaints.

False triggers most often arise from point drift. In dense urban development, the coordinate wanders by tens of meters: near a building wall, in an underpass, between high-rises, it veers off.

If the child walks along the zone boundary, the point jumps inside and outside, and on a single trip to school the parent receives a dozen notifications — the alarm becomes devalued and people stop reading it.

Background geolocation is the weakest point. System power saving puts the app to sleep and provides coordinates infrequently, and without a network the report accumulates in a queue and reaches the server later, with an outdated timestamp.

Sometimes the app does not wake up to check the boundary at all, and no event is generated — from the server's perspective, the child simply never left the zone.

The cost of an error is twofold. The parent loses trust in the tracker and goes to support with the wording "the zone didn't trigger," while the engineer cannot reproduce the failure: on a test device with power saving disabled, everything works normally.

Increasing the polling frequency is also not an option — the child's phone runs out of battery by midday, and the complaint flips to the opposite one.

We break down how this is addressed: radius hysteresis instead of a single boundary, confirmation of entry and exit with multiple measurements, proper handling of system background restrictions, and storing points with timestamps.

What precise geofencing delivers: four measurable effects

Geofencing seems like a simple task: a circle on the map and an entry handler. In a kids tracker, the cost of an error is higher — a missed event means the parent does not know where the child is, while an extra one teaches them to ignore notifications. After reworking the zone logic, we measure four values.

False alarm rate

The main source is jitter at the boundary: the child is near a fence, and the device alternately leaves the zone and returns. We confirm the event with a series of measurements that check direction and the time spent outside the zone, rather than a single coordinate. The false alarm rate drops from a third to single-digit percentages.

Trigger latency

Latency consists of the background measurement period and the event confirmation time. We balance them for the scenario: on a short route, speed matters more; on a long one, battery consumption matters more. The notification arrives in tens of seconds instead of minutes.

Support load

High-volume requests — "why didn't the notification arrive" and "it arrived even though the child is at home." Both stem from the same cause: the zone logic does not account for signal quality and the system's background restrictions. With event confirmation and an on-device log, the share of such requests decreases.

The class of failures that goes away

Missed events during network loss, battery drain, and app restart are covered by a local queue: the event is saved and sent when connectivity is restored.

Zones fit within platform limitations — Apple allows tracking no more than twenty zones per app, so priorities are set explicitly.

Geofencing modes: on-device, server, and hybrid scheme

Geofencing in a kids tracker is not "a point inside a circle," but a question of where exactly to calculate the boundary crossing.

On-device checking produces an event immediately and does not depend on connectivity, but in power-saving mode the system cuts background wake-ups — entry into the zone may not be recorded in time.

Server-side checking calculates the crossing from tracks sent by the app.

It is predictable and does not consume battery, but accuracy depends on the frequency of coordinate sending: with infrequent packets, the segment between two points "jumps" over the boundary, and the event is lost.

Option When it fits Limitations
On-device checking Need fast reaction to entry and exit, connectivity is stable Power-saving mode suppresses background events
Server-side checking App is rarely active, priority is battery and traffic Event delay, missed short entries into the zone
Hybrid scheme The tracker's primary scenario Two event sources must be coordinated so they don't duplicate
Polygon zone Complex-shaped contour: school, yard, route Requires careful geometry and coordinate quality
Manual zones Parent sets the area manually without automation Does not work without user involvement

In practice, the working scheme is hybrid: the device emits fast events, the server confirms them from the track and covers gaps, while a polygon zone describes contours such as a schoolyard.

At the same time, the tracker does not lose zone entry when connectivity is weak and does not drain the phone with unnecessary wake-ups.

How we implement safety zones: stages of engineering work

We start with a telemetry audit: we look at how frequently coordinates arrive, how location determination behaves in the background, and what happens with a weak signal.

Geofencing accuracy rests precisely on this data — with infrequent points, a zone entry event is recorded only after exit.

  1. Telemetry audit. We analyze coordinate sources, app behavior in the background and on a locked screen, and discard points with obviously large error.
  2. Zone scheme. We agree on the number of zones, their radius, and names; we define what counts as entry and what counts as a brief touch of the boundary.
  3. Check rules. We describe trigger conditions: a confirming series of points, a delay for jitter at the boundary, zone priority when intersecting.
  4. Implementation. We embed geofencing in the app and on the server side: local checking provides instant reaction, server-side provides history and notifications to the parent.
  5. Test routes. We run walking and driving routes, passes along the boundary, trips in the subway and underground parking lots where the signal is lost.
  6. Change acceptance. We compare the event log with actual movements, verify the absence of false triggers, and hand over the project with documentation.

The order of stages cannot be rearranged: check rules written before the telemetry analysis produce false triggers on the very first test route.

What you keep: configurations, schemes, and procedures

Project handover is not access to a repository, but a set of artifacts that your team can use to change geozones, analyze triggers, and pass checks without our involvement. Below is what exactly you keep.

Each artifact is tied to a maintenance scenario: editing a zone, a new rule, analyzing a false trigger. The wording is descriptive — an engineer who did not participate in development can understand it.

  • Zone and rule configurations — coordinates, radius, zone type (safe, alarm, home), active schedule; edited without rebuilding the app.
  • Data flow scheme — from coordinate determination to notification to the parent: where buffering happens, where "jittery" points are filtered out, where an entry or exit event is generated.
  • Access policies — roles (parent, child, support), scope of visible data, track retention periods, and the procedure for providing history on request.
  • Zone documentation — naming conventions, maximum sizes and intersections of zones, behavior when signal is lost.
  • Incident investigation procedure — how to reproduce a missed or false trigger, which logs to review, and how quickly to respond.
  • Rule update procedure — editing, validation on a test set of tracks, rollback to the previous configuration version.
  • Test matrix — which geofencing scenarios are covered by automated tests, what remains manual, and what counts as acceptance.

Kids tracker case study: how we eliminated false zone triggers

A parent sets a zone around a school or home and expects a notification when the child leaves it.

On a live fleet of devices, the false alarm rate reached 34 per thousand trips: the phone at the boundary jumped between "inside" and "outside," and the alarm went out before the child took a step.

The average notification delay was about 90 seconds, and complaints like "he left but I didn't get a notification" accounted for a noticeable share of support requests.

What we changed

We rewrote the geofencing logic: a single measurement is no longer grounds for an alarm — the event is confirmed by a series of consecutive measurements, and points with poor accuracy are filtered out before calculation.

At the boundary, we introduced different thresholds for entry and exit, so the jitter disappeared when the device fluctuates at the edge of the zone.

We added deduplication: one crossing — one notification, repeated triggers are suppressed on the device without waiting for synchronization with the server. We calculate the zones themselves on polygons via Google Maps Platform, so the zone shape remains familiar to the parent.

What the result was

False alarms — 2.6 per thousand trips instead of 34, notification delay — 8–12 seconds instead of 90. The share of support requests on the topic of zones decreased almost fourfold.

We did not check by eye: we ran the archive of tracker records through the new logic and compared triggers with the complaint history, and after release we spent two weeks matching automated metrics with manual trip verification.

How on-device geofencing differs from server-side geofencing

The boundary crossing can be calculated on the device or on the server after receiving coordinates. Both options are workable, but you pay for them differently — with battery consumption, event delay, or logic complexity. Which is more critical: instant reaction or completeness of history.

Option When it fits Limitations
On-device checking Alarm is needed immediately, connectivity is unstable Battery consumption; boundary depends on coordinate accuracy
Server-side checking Need audit, reports, editing geozones without a new app build Event delay on poor connectivity
Hybrid: event on device, confirmation on server Kids trackers where both speed and reliability matter Requires re-synchronization and conflict resolution

On-device checking keeps geozones locally and compares the coordinate with the polygon on every update. Device autonomy is paid for with battery: constant polling of sensors consumes it faster than reacting to a cell tower change.

The second cost is boundary jitter: near home the child crosses it dozens of times, and without smoothing there are false alarms.

Server-side checking stores geozones centrally: editing a polygon and schedule applies to all devices without a new build, and audit and entry-exit history also live there.

But until the coordinate reaches the server, there will be no alarm — in a basement or outside the city, this means minutes.

Therefore, the working scheme for a tracker is a hybrid: the device raises an event immediately and queues it, the server confirms it, recalculates missed segments, and maintains the final picture.

Re-synchronization removes discrepancies in time and accuracy, and on Android the system limits background work — this is accounted for separately from the geozone logic.

Technical questions about safety zones and their analysis

Safety zones break not on the map, but at the intersection of coordinate accuracy, the system's background mode, and connectivity quality. We have collected the doubts that most often come up during estimation and a technical answer for each.

What happens when the network is weak?

The boundary crossing is determined on the device and placed in a local queue. When connectivity returns, events go to the server with the original timestamps — the chronology is not broken, but the notification arrives with a delay. We limit the queue size.

Why does the marker "wander" when the child is at home?

In dense development, the signal reflects off buildings, and the coordinate shifts even when the phone is stationary. We suppress this with hysteresis: entry into the zone and exit are calculated using different thresholds, and a single outlier waits for confirmation.

How to choose the zone radius?

The radius depends on the location: smaller near home, larger near school — a zone that is too tight jitters with coordinate drift. We process intersecting zones by priority so that exiting one is not read as entering another, and we test on real tracks.

Can zones be added to an already released app?

Yes, there is no need to release a separate product — the update arrives in the usual way, through the app store. We roll it out in stages: first to part of the audience, monitor the share of correctly processed events, and revert to the previous build if failures increase.

How much will battery consumption increase?

Geozones are the most economical mode available: the system itself monitors the boundaries and wakes the app only on entry and exit. There is no continuous background location determination, so zones do not add noticeable consumption.

Tell us about your task — we will come back with a plan and estimate

To come back with a work estimate rather than a wide range, a short description of your tracker is enough for us. Send the platforms the app is being built for, how coordinates are currently stored, and what should happen when the child enters and exits the zone.

The analysis takes one call: we go through geofencing from setting boundaries to rolling back changes and define the scope of work. Then you receive:

  • safety zone scheme: how radius and shape are set, what the zone is called, and how it behaves;
  • staged implementation plan with checkpoints — from testing on a single device to release;
  • scope of work and boundaries of responsibility: what we cover, what remains on your side;
  • rollback policy and update procedure for already installed apps;
  • list of checks on live devices: false triggers, battery consumption, behavior without network;
  • documentation and project handover: support instructions, access, training for your team.

Describe the task in text, voice, or chat — whichever is more convenient. We will come back with an estimate, an implementation plan, and a list of questions that should be resolved before the start.

We discuss the terms of project handover and post-launch support at the same stage so that the architecture does not have to be redone after the fact.