# LocationSimulator: spoofing an iPhone location from a Mac without a jailbreak

> A GPL-3.0 macOS app that pushes mock coordinates to iOS, iPadOS and iPhoneSimulator devices over the developer disk image protocol. It is built for testing location-aware apps, and it stops at iOS 17.

**Schlaubischlump/LocationSimulator** — MacOS application to spoof / fake / mock your iOS / iPadOS or iPhoneSimulator device location.  WatchOS and TvOS are partially supported.

- Repository: https://github.com/Schlaubischlump/LocationSimulator
- Website: https://locationsimulator.net
- Stars: 3,134 · Forks: 243
- Language: Swift
- License: GPL-3.0
- Published: 2026-09-24 · Updated: 2026-09-24 · Language: en
- Canonical page: https://hysenlabs.com/projects/schlaubischlump-locationsimulator

## What LocationSimulator solves for iOS developers

Testing a location-aware feature on real hardware is awkward. The iOS Simulator lets you set a location, but the Simulator is not the device, and it will not reproduce behaviour that depends on the actual GPS stack, on a paired Apple Watch, or on a network device reached over Wi-Fi. Changing the physical location of a test device is not practical when the bug only appears inside a specific geofence.

LocationSimulator targets that gap. The README states the audience plainly: developers who want to test their location-service-based applications. It spoofs the location of an Apple device without a jailbreak and without installing anything on the device itself. The author also writes that he does not encourage using it to cheat in iOS games and provides no support for that use, so the project draws its own boundary around what it is for.

The scope covers iOS, iPadOS and iPhoneSimulator, with watchOS and tvOS described as partially supported. That word matters: the DeveloperDiskImage path in the README lists watchOS and tvOS as platforms, but the feature list only promises spoofing for iOS devices and the iPhoneSimulator. Treat the watch and TV targets as untested territory rather than a supported workflow.

## How the spoofing actually reaches the device

There is no companion app on the phone. The README says spoofing works without a jailbreak or an app install, which means the mechanism runs through Apple's own developer channel. The app needs DeveloperDiskImage.dmg and DeveloperDiskImage.dmg.signature for the target iOS version, and the author notes he cannot legally distribute those files, so LocationSimulator tries to download the matching pair from GitHub on its own.

That mount is the whole trick. Once the developer disk image is mounted on the device, the developer services Apple exposes for debugging become reachable, and LocationSimulator drives them through libimobiledevice, the one third-party binary dependency the author says he kept. The backend is not in this repository: location spoofing lives in the separate LocationSpoofer package, with low-level frameworks in XCF and logging in CLogger. The app you download is the AppKit front end over that stack.

The visible data flow is a map. A long-click on the map sets the device location, arrow keys drive movement, and the README lists custom and predefined Walk, Cycle and Drive speeds plus a navigate-to-destination mode. Devices can be attached over USB or over Wi-Fi, and network devices are listed as a feature. Underneath, each of those interactions becomes a coordinate update pushed to the device through the mounted developer image.

## Installing LocationSimulator with Homebrew and setting a first location

The README offers two routes: download the latest release build from GitHub, or install the cask. The cask route needs Homebrew first, and the README repeats Homebrew's own install command.

```bash
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
```

With Homebrew present, the cask is a single command. The README gives it as:

```bash
brew install --cask locationsimulator
```

After that, connect the device over USB or Wi-Fi and select it in the app. If the device runs iOS 16 or later, the README's usage tip says you must enable Developer Mode first, and that the option appears in Settings the first time you try to use the device with LocationSimulator, after a warning tells you to turn it on.

On first use the app will attempt to fetch the DeveloperDiskImage files for your iOS version. If that download fails, the README's fallback is to install Xcode and copy or link the two files into a versioned folder. Note the path change: since v0.1.8 the folder moved, and since v0.1.9 the DeveloperDisk preferences tab can manage these files instead of you doing it by hand. The README gives the folder as:

```text
~/Library/Containers/com.schlaubi.LocationSimulator/Data/Library/Application Support/LocationSimulator/{YOUR_PLATFORM}/{MAJOR_YOUR_IOS_VERSION}.{MINOR_YOUR_IOS_VERSION}/
```

where YOUR_PLATFORM is iOS, watchOS or tvOS. Once the image is mounted, a long-click on the map sets the location. Arrow keys move the device from there, and the speed presets decide how fast.

## iOS 17 is the wall, and the README says so

The most important limitation is stated at the top of the repository in a warning block: iOS 17 and later are not supported by the LocationSimulator source code in this repo. That is not a bug report, it is the project's current ceiling. Anyone planning to test on a current device should read that line before installing anything.

The same note points at a closed-source beta of LocationSimulator2, which the author offers for testing. So the open repository and the thing that might work on newer iOS versions are not the same codebase, and only one of them is GPL-3.0. If your test matrix is iOS 18 or later, this repository is the wrong tool and the README says as much.

The second constraint is the developer disk image itself. The author cannot legally ship DeveloperDiskImage.dmg, so the app depends on downloading a file that Apple controls, matched to a specific iOS version. When that download fails, spoofing fails, and the fix is manual file placement in a path that has already changed once. That is a real operational cost for a team, not a cosmetic one.

Third, the platform support is uneven. watchOS and tvOS are labelled partial, and the feature list only commits to iOS devices and the iPhoneSimulator. If your product ships on watchOS, do not assume this covers it.

## LocationSimulator against Xcode's built-in location simulation

The obvious alternative is the location simulation already inside Xcode. It requires no extra download, no developer disk image management, and no separate app, because it is part of the toolchain you already have. For pure Simulator work, that is usually enough.

The difference is the target. Xcode's simulation applies to the Simulator, while LocationSimulator's stated purpose is spoofing an actual Apple device over USB or Wi-Fi, plus the Simulator. If your bug only reproduces on physical hardware, or involves a network-attached device, the built-in route does not get you there. The trade is that LocationSimulator takes on the developer disk image dependency and the iOS 17 ceiling that Xcode does not have.

There is also a build-from-source path for people who want to modify the app rather than use the cask. The README lists macOS 10.15+, a macOS 11.x+ SDK, Swift 5.0+, Swift Tools 5.2+ and jekyll for the helpbook, then cloning with submodules and opening the Xcode project:

```bash
git clone --recurse-submodules https://github.com/Schlaubischlump/LocationSimulator
```

That route pulls in eight Swift packages the author maintains separately, including LocationSpoofer, XCF, CLogger, SuggestionPopup, Downloader and GPXParser. Building it yourself means tracking all of them.

## Licence, releases and the cost of upgrading

LocationSimulator is GPL-3.0. If you fork it or ship a modified build inside a product, the copyleft terms apply to the code you distribute; that is a question for your own legal review, not something this article can settle. The DeveloperDiskImage files are a separate matter entirely, and the README is explicit that the author cannot distribute them for legal reasons.

On releases, the newest listed version is v0.2.2 from 2023-05-22, following v0.2.1 and v0.2.0 earlier in 2023. The repository itself is not archived, and the last push was on 2026-09-18, so there is activity on master even though no release has been cut since v0.2.2. That split is worth understanding before you plan an upgrade: the release you install through Homebrew may be older than the source on master, and the README's own note about iOS 17 tells you which direction the supported code is heading.

The practical upgrade cost is the developer disk image. Every new iOS version you add to your test matrix is a new pair of files to obtain, and the automatic download is the part most likely to break. Budget for the manual fallback path rather than treating it as an edge case.

## Conclusion

Adopt LocationSimulator if you maintain a location-dependent iOS app and need to reproduce geofence, route or region-monitoring bugs on a real device running iOS 16 or earlier. Do not adopt it for iOS 17 and later, for tvOS beyond the partial support the README claims, or for anything that needs to keep working after Apple changes the developer disk image protocol. Before committing, verify that the automatic DeveloperDiskImage download succeeds for your exact iOS version, and check the DeveloperDisk preferences tab that v0.1.9 added, because if the download fails you are copying the dmg and its signature into the Application Support folder by hand.

## FAQ

### What is the best app to mock a live location?

The README positions LocationSimulator as a macOS app for developers testing location-service-based applications, spoofing iOS, iPadOS and iPhoneSimulator devices without a jailbreak or an app install on the device. It also states that using it to cheat in iOS games is not encouraged and not supported.

### Is location spoofing possible on iPhone?

LocationSimulator does it without a jailbreak and without installing an app on the device, by mounting the DeveloperDiskImage for the target iOS version. The repository warns that iOS 17 and later are not supported by the source code in this repo.

### How do I use LocationSimulator?

Connect the device over USB or Wi-Fi, select it in the app, then long-click on the map to set the location. Arrow keys control movement, with custom and predefined Walk, Cycle and Drive speeds, and on iOS 16 or later you must enable Developer Mode first.

### What is the best fake location app?

The README does not compare LocationSimulator with other apps. It describes what this one does: spoofing an Apple device location from macOS, with network device support, location search, dark mode and automatic DeveloperDiskImage download.

## Sources

- [License: GPL-3.0](https://github.com/Schlaubischlump/LocationSimulator/blob/master/LICENSE)
- [Project website](https://locationsimulator.net)
- [README](https://github.com/Schlaubischlump/LocationSimulator/blob/master/README.md)
- [Releases](https://github.com/Schlaubischlump/LocationSimulator/releases)
- [Schlaubischlump/LocationSimulator on GitHub](https://github.com/Schlaubischlump/LocationSimulator)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/schlaubischlump-locationsimulator
