Background location tracking that doesn't kill the battery.

The Background Geolocation SDK runs in 20,000+ production apps across 140 countries. Accurate, durable, and built to survive everything the OS throws at it.

Why teams choose this SDK

  • Offline‑first

    Offline‑first

    Every location is written to SQLite before any upload attempt. If the network is down for hours or days, nothing is lost. Locations upload automatically when connectivity returns.

  • Motion Aware

    Motion Aware

    An accelerometer-driven state machine decides when to poll GPS. The device uses near-zero battery when stationary and scales tracking frequency to speed when moving.

  • Survives termination

    Survives termination

    Tracking continues even after the OS kills the app. With headless background execution and a boot receiver, the SDK restarts automatically on reboot with no user interaction required.

  • Geofencing at scale

    Geofencing at scale

    Monitor unlimited circular or polygon geofence regions. Triggers fire reliably even when the app is terminated — no foreground process required.

We evaluated four different location APIs, but this plugin was the only one that didn't bloat our build. The latency is practically non-existent and the documentation made integration a one-day job. It just works.

Sarah T. , Lead Engineer at OrbitLogistics

Data durability

Your data survives the network.

Every location is written to SQLite the moment it's recorded — before any upload attempt. If the network drops for minutes, hours, or days, nothing is queued in memory and nothing is lost. When connectivity returns, the HTTP queue drains automatically with exponential back-off. No polling. No manual retry logic in your app.

Always-on tracking

Tracking doesn't stop when the app does.

When the OS terminates your app under memory pressure, most location SDKs stop. This one doesn't. With headless background execution on Android and silent push on iOS, the SDK continues tracking and executing your location callbacks with no foreground process running. Set \`startOnBoot: true\` and tracking resumes automatically after a device reboot — no user interaction required.

Motion intelligence

Accurate tracking. Not a battery drain.

Continuous GPS polling is what kills batteries and gets apps rejected from the App Store. This SDK uses an accelerometer-driven state machine instead. When the device is stationary, GPS is off and sensor polling draws near-zero power. When motion is detected, GPS activates and scales to the device's speed. The result is full location history without your app appearing at the top of the user's battery screen.

SDK features

  • GeoConfig

    defines all geolocation-related options for the BackgroundGeolocation SDK.

  • AppConfig

    start/stop behavior on terminate and reboot, headless/background behavior, periodic heartbeats, scheduler windows, foreground notifications, and the Android background-permission rationale dialog.

  • HttpConfig

    Controls how recorded locations are uploaded to your server. It defines the endpoint, HTTP verb, headers, params, batching behavior, and request timeouts.

  • PersistenceConfig

    The database acts as a durable buffer between data producers (locations, geofences) and consumers (your app code and the HTTP service).

  • ActivityConfig

    The ActivityConfig object defines options related to motion and activity detection for the BackgroundGeolocation SDK.

  • Scheduled Location

    A highly configurable, cross‑platform background location‑tracking plugin implementing the latest native APIs.

Plans & pricing

Choose the plan that fits your build. Licenses are per app identifier.

  • Studio

    For building 100 apps

    $999
    • 100 application keys
    • Perpetual license
    • Priority support via Slack/GitHub
    • 1 year access to updates
  • Pro

    For building 25 apps

    $749
    • 25 application keys
    • Perpetual license
    • Priority support via Slack/GitHub
    • 1 year access to updates
  • Starter

    For building 1 app

    $399
    • 1 application key
    • Perpetual license
    • Priority support via GitHub
    • 1 year access to updates

* Plans are easily upgradable after purchase.