SalesNest CRM is now included free with every LeadNest plan. Get started free
Location-triggered campaigns

Marketing that knows when someone's standing outside your door.

GeoNest fires email, SMS, and push campaigns the instant a phone enters, dwells in, or leaves a boundary you draw — using the phone's own native geofencing, not a battery-draining background app.

See a fence trigger

No SDK to ship — fences update from your dashboard, no app release needed.

Read the API docs
GeoNest fence builder: drawing a polygon fence with a 200m wake-up circle around Madhapur Store, scheduling a 5-minute dwell trigger with a 720-minute cooldown, choosing email, SMS and app push channels, and the resulting welcome push notification when a shopper enters and later exits

Trusted by agile startups and fast-scaling brands

Precision & control

More precise, more flexible, fully enforced.

Polygon-precise, not just circle-close

iOS and Android only wake a device for circular regions. GeoNest draws the real footprint as a polygon and auto-computes a bounding wake-up circle around it — the circle wakes the app cheaply, the polygon then confirms the device is actually inside, not just near.

Circle or polygon, drawn on the map

Fences are configured from the dashboard, not compiled into your app. Redraw a shape, adjust the schedule, or launch a new fence entirely — none of it needs an app release.

Every event re-validated server-side

Cooldown, active hours, and the date window are enforced on the backend for every single event, not just checked once on the device — so a stale rule on a phone can't fire a stale campaign.

From the dashboard

Launch a fence in three steps.

No release cycle, no engineering ticket for the next campaign — this is what a marketer actually does.

Draw the boundary

iOS and Android only wake a device for circular regions — and your storefront usually isn't one. Draw a polygon that traces the real footprint, and GeoNest automatically computes a bounding circle around it: that circle wakes the app cheaply at the OS level, then the precise polygon confirms the device is actually inside, not just near.

CirclePolygonAddress searchAuto bounding circle
Map view of a store fenced with a precise polygon inside a circular wake-up region, next to circle and polygon shape options

Set the rule

Pick enter, dwell, or exit, add a dwell threshold and cooldown, and set the dates and hours the fence should be live. Cooldown is enforced server-side per device, so a repeat trigger inside the cooldown window simply doesn't send — dwell and cooldown are tracked separately on purpose: how long someone has to stay, and how long before they can trigger it again, are two different questions.

EnterDwellExitCooldown minutesActive hoursDate window
Fence rule diagram: entering triggers the campaign after a dwell threshold and cooldown, exiting doesn't, and the active-hours/date schedule gates when it can fire

Watch it dispatch

The fence goes live immediately. No app release — devices pick it up on their next check-in with GET /geofences, and the campaign fires through whichever channels you've turned on, reusing your existing email and SMS infrastructure plus Firebase Cloud Messaging for push — with optional delayed follow-ups after the first message.

EmailSMSApp pushDelayed follow-upsNo app release
The fence event dispatching from GeoNest's backend to email, SMS, and app push in sequence

By the numbers

The whole integration, in four facts.

3
REST endpoints — that's the whole integration
0
SDKs to bundle — native OS geofencing only
3
channels dispatched from one trigger
2
fence shapes — circle and polygon, both wake-ready

The event lifecycle

Three states. One decision each time.

Every fence you draw watches for exactly these three events — nothing else needs polling, and nothing else drains a battery.

A visitor's phone entering a hospital's geofence, triggering a 'Welcome to CityCare Hospital' notification
ENTER

Crosses the line

The OS wakes the app the moment a device crosses into the fence. Good for instant "welcome" offers and check-in style triggers.

A visitor dwelling inside the geofence for 5+ minutes counts as a visit, while a car just passing by on the road outside does not
DWELL

Stays a while

Fires once your app reports a device has stayed inside the fence past the dwell threshold you set — so a car passing by on the highway never counts as a visit.

A visitor's phone leaving the geofence, triggering a 'Thanks for visiting' notification
EXIT

Leaves the area

Catches the moment someone walks out — the right trigger for "come back" nudges or post-visit feedback requests.

Use cases

The foundation for every fence you draw.

Entry and exit detection

Know the moment someone crosses your fence

Fire an email, SMS, or push campaign the instant a device enters or exits your fence — both events are reported by the phone's own native geofencing and re-validated on the backend before anything dispatches, so you know exactly when they crossed the line.

Explore geofences
A polygon fence around an event venue next to a phone lock screen showing a welcome push notification fired on entry

Place visit detection

Detect real visits to the places you fence

Set a minimum dwell time on any fence you draw — your own storefront, a competitor's, or any location you can put a boundary around — and only a genuine stop counts as a visit, not someone stuck at a red light outside.

Explore visit detection
A phone lock screen showing a nearby-store push notification inviting a shopper in to find their signature fragrance

Multi-channel dispatch

Reach them on whichever channel they're on

The same enter, dwell, or exit event dispatches through your existing email and SMS infrastructure, plus Firebase Cloud Messaging for push and WhatsApp — one trigger, no separate channel vendor to wire up per campaign.

Explore dispatch
A map showing a route to a store with a distance and drop-off time callout

On-premise detection

Know someone is physically inside, not just nearby

Circular regions are all iOS and Android will wake a device for — a wide circle around an irregular building can catch someone on the sidewalk outside. Draw the real footprint as a polygon instead, and GeoNest auto-computes a bounding wake-up circle around it: cheap to wake on, precise to confirm they're actually inside.

Explore geofences
A phone lock screen showing a 'you're near the store' notification next to a map of the precise polygon fence drawn around the storefront

Under the hood

Three REST calls. Native OS geofencing does the rest.

GeoNest is a REST API, not an SDK. Your app registers the device, pulls the active fences, and reports the events the phone's own location system already detects.

geonest — integration flow
1
POST/register GET/geofences

Register the device once, then pull every active geofence and campaign rule — circle or polygon, schedule, dwell, cooldown — straight from the dashboard. No fence is ever hardcoded into an app build.

2
OSGeofencingClient · CLLocationManager

Enter, dwell, and exit are detected by Android's and iOS's own built-in geofencing — not a custom background service — so there's no extra battery drain.

3
POST/geofence/event

The app reports the event the instant the OS fires it, and the backend re-validates it before dispatching to any channel.

// backend processing on event received

Validate API key
Validate device
Validate geofence
Check campaign status
Check date & active hours
Check cooldown
Dispatch channel Email · SMS · Push · WhatsApp
Read the full integration guide

Built for your industry

The same fence, a different reason to draw it.

Enter, dwell, and exit mean something different depending on what's behind your door. Here's how that plays out by industry.

One trigger. Every channel that matters.

Beyond the trigger

See what a fence actually did.

Every enter, dwell, and exit is logged against the campaign it triggered — so "we set up geofencing" turns into "this fence drove real dispatches this week, mostly via SMS."

No separate analytics tool to wire up — it's the same event log that decided whether to fire the campaign in the first place. Numbers below are an illustrative example, not a specific customer's data.

Illustrative example dashboard showing events detected, campaigns sent, dispatches by channel, and fence coverage

Why not just build it

The hard parts are already solved.

Geofencing looks simple until you hit the details — bounding-circle math, cooldown logic, per-channel wiring. Here's what that comparison actually looks like.

Building it in-house

  • Bounding-circle math for polygons, written and tested from scratch
  • Separate integration work for each channel — email, SMS, push
  • Cooldown, dwell, and active-hours logic reinvented per app
  • Ongoing maintenance as OS geofencing APIs change

Generic push tools

  • Triggers on app open or scheduled send — not on location
  • No native concept of enter / dwell / exit
  • Usually one channel, bolted onto separate tools for the rest
  • Fine for broadcast messages with no location context

GeoNest

This one
  • Bounding circle computed automatically for every polygon
  • One trigger dispatches to email, SMS, and push
  • Dwell, cooldown, and active hours built into every fence
  • Three REST endpoints, reusing your existing messaging infrastructure

Platform & security

Every app's fences stay scoped, confirmed, and yours alone.

GeoNest sits alongside SalesNest, LeadHub, and the rest of the LeadNest.ai platform — each app in your organization gets independently scoped geofences and campaigns, authenticated with its own API key.

See the full API reference
  • Every fence, device, and campaign is scoped to a single app — nothing is visible across apps in your organization.
  • A polygon fence is confirmed against the precise boundary before an event is accepted — the wake-up circle only starts that check, it never triggers a campaign by itself.
  • The backend re-checks cooldown, active hours, and the date window on every event — a stale rule on the device can't fire a stale campaign.
  • API-only: three endpoints, called from the native geofencing already built into iOS and Android — no SDK to bundle, no separate vendor to onboard.
Diagram showing per-app isolation (pharmacy, fitness, and retail apps under one organization) and geofence triggers dispatching to email, SMS, and push on enter, dwell, and exit

The short version

The proof is in the platform.

Native accuracy, not an approximation

Every fence runs on your phone's own GPS-based geofencing — Android's GeofencingClient, iOS's CLLocationManager — the same location stack Maps apps use, not a third-party SDK layered on top.

Three REST calls, nothing else to install

Register the device, fetch the active geofences, report the event — that's the entire integration surface. No SDK to bundle, no separate vendor to onboard.

Every fence scoped, every event re-checked

Fences and campaigns stay isolated per app, and cooldown, active hours, and the date window are re-validated on the backend for every single event — not just checked once on the device.

Reuses the channels you already pay for

Dispatches through your existing email and SMS infrastructure, plus Firebase Cloud Messaging for push — no new per-channel vendor contract to negotiate.

Questions

Before you draw the first fence.

Does this drain the device's battery? +

No. GeoNest hands fences to the phone's own geofencing APIs — GeofencingClient on Android, CLCircularRegion on iOS — which are built to wake the app efficiently on real motion. There's no continuous polling loop running in the background.

Do I need to ship an app update to add or change a fence? +

No. Fences are fetched from GET /geofences each time your app checks in, so anything you change on the dashboard reaches devices without an app-store release.

What happens with an irregularly shaped location, like a mall or a campus? +

Draw it as a polygon. GeoNest automatically computes a bounding circle around it for the OS-level wake-up, then checks the device against the precise polygon once it wakes — so the shape you drew is the shape that counts.

Can I send more than one message after a trigger? +

Yes — chain an immediate message with one or more delayed follow-ups on the same trigger (for example, an SMS right away, then a follow-up email 30 minutes later). Each send is logged separately against the event that caused it.

Can this work for a web visitor who doesn't have our app? +

True OS-level geofencing needs a native app — that's an OS capability, not something a browser can do. A browser-based fallback using the Geolocation API is on our roadmap for web-only visitors; it isn't shipped yet.

Do all channels need separate setup? +

No — GeoNest reuses the email and SMS infrastructure your app already has, plus Firebase Cloud Messaging for push. One fence, one rule, and the channel it dispatches through is a configuration choice, not a separate integration.

Real fence performance

A visit isn't a metric. A dispatched campaign is.

See exactly which fence, which event, and which channel turned a walk-by into a customer — then draw the next one.

Get Started Now
Or just read the docs