If you are developing an iOS, iPadOS, or watchOS application in Xcode using SwiftData, Core Data, GRDB, or raw SQLite, debugging local data storage is an everyday necessity.

However, Apple deliberately obfuscates where simulator application sandbox data is stored on your Mac. Finding that elusive .sqlite file buried deep inside nested CoreSimulator directories - and opening it without corrupting the active WAL journal - often wastes valuable engineering time.

In this tutorial, we show you how to quickly locate your app’s SQLite file inside the iOS Simulator and how to inspect, query, and edit it live using SQLOZ on macOS.

SQLOZ Responsive Data Grid and Table Inspection View


1. Locating the iOS Simulator Sandbox Path

Every time you install or run an app in the Xcode Simulator, macOS creates an isolated sandbox directory inside:

~/Library/Developer/CoreSimulator/Devices/[DEVICE_UUID]/data/Containers/Data/Application/[APP_UUID]/

Because device and app UUIDs are random 36-character alphanumeric strings, hunting for them manually in Finder is tedious.

Fast Method: Print Path from Swift Code

In your iOS app’s AppDelegate.swift or App.swift:

if let documentsURL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first {
    print("📍 SQLite Document Path: \(documentsURL.path)")
}

Fast Method: Terminal xcrun simctl

You can get the exact application container path from Terminal using simctl:

xcrun simctl get_app_container booted com.yourcompany.yourapp data

Navigate to that folder, and open Documents or Library/Application Support/ to find your .sqlite file (along with the -wal and -shm auxiliary journal files).


2. Inspecting and Editing the Database in SQLOZ

Once you locate your app’s SQLite database file:

  1. Drag and Drop into SQLOZ: Simply drag the .sqlite file from Finder directly into SQLOZ.
  2. Real-Time WAL Sync: SQLOZ automatically recognizes Write-Ahead Logging (-wal) files, ensuring you see the most recent uncommitted in-memory simulator writes.
  3. Inspect Core Data & SwiftData Models: SQLOZ parses Core Data schema metadata (Z_PRIMARYKEY, Z_METADATA, entity tables prefixed with Z...) and displays your models in a clean, human-readable data grid.
  4. Live Cell Editing: Modify cell values, test edge cases (e.g. set an account balance to 0 or trigger an error flag), and click Apply Changes (⌘S). Your running iOS Simulator will instantly reflect the modified data!

3. Creating Snapshots for Unit Testing

Need to save a clean starting database state for your automated UI tests?


Summary

Debugging iOS Simulator databases shouldn’t require complex terminal navigation or clunky command-line tools.

With SQLOZ, iOS and Mac developers can drag, inspect, and modify SQLite and Core Data stores in seconds with pure native Apple Silicon performance.

Download SQLOZ for macOS and supercharge your iOS app development workflow today.