Beekon is a small, focused SDK for capturing where your users go — in the foreground, in the background, and after the app has been swiped away. It runs on the device, keeps a rolling history, and respects the battery. No servers to wire up. No surprises in production.
We build the Android and iOS libraries ourselves, in their native languages. Flutter and React Native get the same SDK through a thin language wrapper — same behaviour, same battery, same history. Pick whichever stack your team is on; we keep them in step.
The shape of the API is the same on every platform: one config object, one start call, and a stream of locations to listen to. The naming follows whatever feels natural in your language — Kotlin Flow on Android, AsyncStream on iOS, Streams in Dart, event listeners in TypeScript. Nothing exotic to learn.
import com.getbeekon.sdk.Beekonimport com.getbeekon.sdk.BeekonConfig// Optional — defaults are a 30s / 100m gate plus an auto-resolved notification.Beekon.configure(BeekonConfig.SelfManaged(minTimeBetweenLocationsSeconds = 30,minDistanceBetweenLocationsMeters = 100.0,accuracyMode = AccuracyMode.Balanced,whenStationary = StationaryMode.Pause,),)Beekon.start() // suspends until the foreground service is running// Stream gated locations on the caller's scope.Beekon.locations.onEach { fix -> render(fix) }.launchIn(scope)
Where your location data goes is a one-line config choice, not a rebuild. Keep everything on the device, send it to a backend you own, or let Beekon Cloud manage it for you — the same native tracking core runs underneath every mode.
accuracyMode, measured on real phones:Low 3–8%/hrBalanced 5–10%/hrHigh 15–25%/hrMost location SDKs cut a corner somewhere — a shared core that pretends to be native, a smoothing layer that hides what the phone actually saw, or a server you didn’t ask to depend on. Beekon doesn’t. These are the choices that make continuous tracking actually work in the wild.
Free for indie and open-source teams. Everyone else takes a one-time license per app — no subscription. Each license covers one app and unlimited builds, with a year of updates and priority support. To get a license, just get in touch — we’ll set you up.
The questions we get most often — and a few you should ask before picking any location SDK. If something here doesn’t match what you need, the Business tier is where we get into the details.