GPS Setter — Set Your Android Location, System-Wide or Per App
GPS Setter is a free Xposed module that changes the location your Android device reports. It hooks the location system itself, so apps receive the coordinates you choose instead of your real position.
Use it to test location-based apps, protect your privacy from over-curious software, or check how an app behaves in another city. No mock location setting is involved.
About the software
What GPS Setter actually does
Most fake GPS apps work through Android's mock location setting. That setting was built for developers, and apps can easily see when it is on. Many simply refuse to work.
GPS Setter takes a different route. As an Xposed module, it hooks the Android location APIs themselves, including Location and LocationManager. The coordinates you set are supplied at that level.
That design gives you two modes. Hook the system, and every app sees the set location. Hook selected apps only, and each one can report a different place at the same time.
The original GpsSetter project was written by Android1500 for Android 8.1 to 13. Maintained forks have since carried it forward, adding Android 14 and 15 support and new controls.
This site is a guide to that software, not the developer's own page. Every fact here is checked against the module's own LSPosed listings, and the download buttons send you to those listings.
GPS Setter at a glance
| Type | Xposed / LSPosed module |
|---|---|
| Purpose | Set the location a device reports |
| Modes | System-wide, per app, or both |
| Builds | Full (Google) and FOSS (MapLibre) |
| Root | Needed for LSPosed; LSPatch route exists |
| Price | Free, GPL-3.0-only |
Project lineage, honestly labelled
- Publisher (this site's brief): Jack
- Original project: Android1500 — GpsSetter
- Maintained forks: jqssun, varma322, kovag1978-oss
- Listing: LSPosed Module Repository
Key features
Features built around one job: the right location
GPS Setter stays focused. It does not bundle a VPN, a cleaner or a store. Every feature below serves the single job of setting a believable location and keeping it under your control.
System-wide or per-app locations
Set one location for the whole device, or give selected apps their own coordinates. Each mode can be used alone, and both can run at the same time.
A live map of every active location
The map shows the system location and every managed app's location together. Markers move when coordinates change and disappear as soon as spoofing stops.
Randomised points near your chosen spot
A fixed pin can look artificial to software that watches movement. GPS Setter can report a live, slightly random location in the vicinity of the point you set.
Favourites you can reuse and move
Save the places you test most as favourites, then apply one with a single tap. Favourites export and import cleanly, so a new phone keeps your list.
Ongoing notifications while it runs
A foreground service keeps spoofing active and visible in your notifications. You always know a set location is running, and stopping it removes the notice.
A joystick and voice options in forks
Some current forks add an on-screen joystick for small movements on the fly. Another adds Quick Settings voice control, so saved favourites can be applied hands-free.
Interface
One map, every active location
Open GPS Setter and the map is the app. Your system location and each managed app's location appear as separate markers, in colours you assign yourself.
Nearby markers group into clusters. Tap a cluster and its markers spread out around the centre, joined by lines to their true positions, so dense areas stay readable.
Below the map, the exact latitude and longitude are always shown as numbers. That matters for testing, where a pin that looks right can still be a street away from the point you need.
When spoofing is active, an ongoing notification names the set location. It cannot be swiped away by accident, which prevents the common mistake of testing against a stopped module.
Choosing a build
Full vs FOSS: the only choice you must make
GPS Setter ships in two builds that do the same job with different parts underneath. Pick once, at download time. Your favourites and workflow stay the same either way.
| Part | Full build | FOSS build |
|---|---|---|
| Maps | Google Maps | MapLibre, with open map data |
| Fused location | Google Play services | microG |
| Best for | Phones with normal Google services | De-Googled phones and microG setups |
| Scope extra | Enable Play services in LSPosed scope | Enable the microG package when needed |
| File | app-full arm64 APK | app-foss arm64 APK |
Not sure which you run? If your phone has the Play Store and Google Maps, choose Full. If you deliberately removed Google services, choose FOSS. Our Full vs FOSS guide walks through edge cases.
Real use cases
Who sets a location, and why
App developers and QA teams
Location features usually get tested in one office, in one city. GPS Setter lets a tester check check-ins, delivery zones, local pricing and regional content from the desk, on a real device, in any city the app serves.
Privacy-conscious owners
Some apps demand location permission yet offer nothing that needs it. A set location gives those apps an answer without giving away where you live. Per-app mode is ideal here: only the nosy apps are redirected.
Students and researchers
Coursework and research often need repeatable locations: the same pin, every run, on demand. Saved favourites make experiments repeatable, and the exported list lets a whole class or lab start from identical points.
One boundary matters. A set location should never be used to fake attendance, evade a safety check, or break the rules of a service you agreed to. The disclaimer explains responsible use in full.
How it works
From download to a set location in five steps
Download the APK
Open the LSPosed listing from the download section below. Choose the Full or FOSS arm64 build that matches your setup.
Enable the module
Install the APK, then switch GPS Setter on inside LSPosed or Vector. Tick System Framework for system-wide results.
Set the scope
Add Android System for a device-wide location. Add each target app, plus Play services on Full builds, for per-app control.
Pick a point
Search or tap the map to drop a pin anywhere in the world. Save it as a favourite if you will use it again.
Apply and check
Apply the location, then reopen the target app. It now reads the set coordinates until you tap stop.
Stuck at any step? The step-by-step install guide covers scope settings, reboots and the separate-control options in detail.
Download
Download GPS Setter for Android
GPS Setter is distributed through the LSPosed Module Repository, the official listing place for modules like this one. The listing links onward to the release APKs, so you always get the current build.
Clicking the button opens that listing in a new tab. From there, download the arm64 APK for the build you chose, Full or FOSS, and install it like any other APK file.
After installing, nothing happens until you enable the module. Open LSPosed or Vector, switch GPS Setter on, set its scope, and reboot if the manager asks you to.
There is no Windows, iPhone or desktop version. GPS Setter is an Android module, and any site offering a PC edition of it should be treated with suspicion.
| Software | GPS Setter |
|---|---|
| Version | Latest |
| System | Android 8.1 or later |
| Architecture | arm64 |
| File type | APK (Full or FOSS build) |
| Licence | GPL-3.0-only |
| Publisher | Jack |
| Source | LSPosed Module Repository |
External download — opens the module's LSPosed listing, which links to the publisher's release APKs.
Also listed: the per-app fork listing, with voice control and separate app profiles.
System requirements
What your phone needs
| Android | 8.1 or later (12+ best for system-wide live updates) |
|---|---|
| Framework | LSPosed or Vector; LSPatch for the unrooted route |
| Root | Required for LSPosed on most devices |
| Architecture | arm64 device |
| Services | Play services (Full) or microG (FOSS) |
| Internet | Needed to download; map tiles load online |
Compatibility notes
Read these before you install
- Run only one location-spoofing module at a time. Two modules hooking the same call will fight, and the last one loaded wins.
- Apps protected by strong anti-tamper checks can crash when scoped. Leave them out of scope and rely on the system hook instead.
- Upgrading across a changed application ID needs care. Uninstall the old build first; Android treats the new ID as a separate app.
- During an emergency call, real location behaviour takes priority on supported forks. Never rely on a set location in an emergency.
- Battery savers can kill the foreground service. Whitelist GPS Setter if locations stop applying after the screen sleeps.
Best practices
Getting clean, believable results
Start system-wide if you are new. One location, everywhere, is the easiest setup to verify. Add per-app profiles only when a real need appears.
Verify in a maps app you trust before opening the app you actually care about. The pin, street and coordinates should all agree with the point you set.
Change one thing at a time. If a result looks wrong, adjust the scope or the build first, then retest. Random tapping makes faults almost impossible to trace.
Keep favourites tidy. Named, dated test points beat a long list of unnamed pins, especially when a team shares the same exported file.
Troubleshooting
When the location will not move
- Nothing changes: the module is off, or System Framework is missing from scope. Enable both, then reboot.
- One app is unaffected: it reads Play services. Add Play services (Full) or microG (FOSS) to the scope.
- Real location flashes first: update your fork. Current releases spoof the cached last location as well as live fixes.
- Location stops overnight: battery optimisation killed the service. Whitelist the app and reopen it.
- An app crashes when scoped: remove that app from scope. Use the system-wide hook for it instead.
Full walkthroughs live in the GPS Setter not working guide.
Download safety
Where the file really comes from
GPS Setter is open source under GPL-3.0-only. Its code, releases and issue lists are public, so anyone can check what a build does before installing it.
This website hosts no APK file. Every download button here opens the LSPosed Module Repository listing, and the APK itself comes from the release pages linked there.
Three checks before you install
- Download only from the LSPosed listing or its linked releases.
- Match the build to your phone: Full for Google services, FOSS for microG.
- Back up your device before rooting or changing frameworks.
That is the whole safety story. No scan badges, counters or certificates are shown here, because none were supplied to us.
Guides & tutorials
Guides that solve one problem each
Featured guide
How to Install GPS Setter with LSPosed: Step-by-Step
From APK to a working set location: enabling the module, choosing scope, and the reboot most people skip.
GPS Setter Full vs FOSS: Which Build Should You Download?
Same module, different foundations. A clear comparison of maps, location providers, and which phones each build suits.
How to Set a Location with GPS Setter (System-Wide and Per App)
Dropping the pin is the easy part. This guide covers system-wide mode, per-app profiles, favourites and stopping cleanly.
GPS Setter Without Root: The LSPatch Route, Explained Honestly
The unrooted route is real, but narrower. What LSPatch embedding does, its limits, and when root is still the better answer.
FAQ
GPS Setter questions, answered straight
What is GPS Setter?
GPS Setter is an Xposed module for Android that sets the location your device reports. Instead of changing a system setting, it hooks Android location APIs. Apps then receive the coordinates you chose, system-wide or per app.
Is GPS Setter free to download?
Yes. GPS Setter is free, open-source software released under the GPL-3.0-only licence. You download the APK from its LSPosed module listing or the linked release pages. There is no paid tier, subscription or in-app purchase.
Does GPS Setter need root access?
Usually, yes. The standard setup uses LSPosed or Vector, which normally needs a rooted device. An unrooted route also exists: LSPatch can embed the module into a target app, with a manually set location.
Which Android versions does GPS Setter support?
GPS Setter needs Android 8.1 or later. Current forks are tested well beyond that, up to Android 16 beta builds. System-wide spoofing of live updates works best on Android 12 and newer, including Android 14 changes.
What is LSPosed, and why does GPS Setter need it?
LSPosed is a framework that lets modules hook Android system and app code. GPS Setter is one of those modules, so it cannot run alone. You install the APK, enable it inside LSPosed or Vector, then set its scope.
What is the difference between the Full and FOSS builds?
Both builds do the same job and ship as arm64 APKs. The Full build uses Google Maps and Google Play services for maps and fused location. The FOSS build uses MapLibre and microG instead, with no Google components.
Does GPS Setter use the mock location setting?
No. That is its main difference from ordinary fake GPS apps. Mock location apps use a developer setting that apps can detect. GPS Setter hooks the location APIs directly, so no mock location provider needs to be selected.
Can I set a different location for each app?
Yes, in current releases. You can keep one system-wide location and give selected apps their own coordinates. Each app profile can also have its own marker colour, and active locations are shown together on the map.
Can I save favourite locations in GPS Setter?
Yes. Locations you use often can be saved as favourites and reused in one tap. Favourites can be imported and exported, which helps when you move to a new device or reinstall the module after an update.
How do I stop GPS Setter and restore my real location?
Open GPS Setter and tap stop, or disable the module inside LSPosed and restart the affected apps. A system-wide change may need a reboot. Once the module is off, Android reports your real GPS position again.
Why does one app still show my real location?
The app is probably outside the module scope, or it reads location through Google Play services. Add the app, and Play services for Full builds, to the LSPosed scope. Then force-stop and reopen the app.
Does GPS Setter work on Android 14, 15 and 16?
Current forks handle the location-service changes introduced in Android 14 and later. One fork was the first open-source module to support Android 15 and above. Check your fork's listing page for its latest tested version.
Is GPS Setter safe to install?
It is open source, so its code can be inspected before you install it. Download only from the LSPosed repository or its linked releases, never from random APK mirrors. Rooting itself carries risk, so back up your device first.
Does GPS Setter change my IP address or work like a VPN?
No. GPS Setter only changes the location your device reports through Android location APIs. Your IP address stays the same, so websites that locate you by IP can still see your real region. It is not a VPN.
Ready to set your location?
Download GPS Setter from its LSPosed listing, enable it, and drop your first pin. The install guide takes about ten minutes to follow.