How to Configure HTTP Proxy in iOS Simulator: The 2026 Guide (Without Breaking Zoom)
If you've tried to set up a proxy in the iOS Simulator recently (2025–2026), you’ve likely hit two roadblocks:
- The Wi-Fi Proxy menu inside the Simulator settings is gone.
- The old terminal hacks (like
export HTTP_PROXY) no longer work because Apple has completely isolated the Simulator's network stack.
The only reliable method today is using the macOS System-Wide Proxy. But there's a catch: enabling a system proxy usually kills your internet for tools like Zoom, Slack, and Spotify.
In this guide, we’ll show you how to set up a "smart" proxy configuration. Your daily tools will keep running smoothly, while your Simulator app traffic gets intercepted for debugging.
Android Developer? Check out our parallel guide on How to Set Proxy on Android Emulator.
Step 1: Configure macOS Network (The Smart Way)
Since the Simulator shares the Mac's network interface, we must modify the system settings. The secret to keeping your workflow alive is the Bypass List.
- Open System Settings -> Network.
- Select your active interface (Wi-Fi or Ethernet) and click Details... -> Proxies.
- Toggle on two switches: Web Proxy (HTTP) and Secure Web Proxy (HTTPS).
- Enter your Chaos Proxy credentials:
- Server:
chaos-proxy.debuggo.app - Port:
11997 - Username/Password: (Required if authentication is enabled).
- Server:
🛡 Saving Your Internet (Crucial Step)
To prevent your Mac from routing everything through the proxy, copy the following list into the "Bypass proxy settings for these Hosts & Domains" field:
What does this do?
- Zoom, Slack, Spotify, System Updates: Bypass the proxy and go directly to the internet. No more lag during meetings.
- Your App (api.your-startup.com): Since it's not in the bypass list, its traffic goes through Chaos Proxy for inspection and throttling.
Step 2: Install the SSL Certificate (The Trust Dance)
Without this step, your app's HTTPS requests will fail with SSL Handshake errors.
- Launch the iOS Simulator.
- Open Safari inside the Simulator.
- Download the certificate. You have two options:
- Easy Method: Go to chaos-proxy.debuggo.app/cert
- Direct Download (for Automation):
https://chaos-proxy.debuggo.app/api/v1/certs/ca.pem
- Click Allow when prompted to download the configuration profile.
Installing a certificate on iOS is a two-part process. Most developers forget the second part.
- Install: Go to Settings -> General -> VPN & Device Management. Tap the downloaded profile and click Install.
- Trust: Go to Settings -> General -> About -> Certificate Trust Settings (at the very bottom). Find your certificate under "Enable full trust for root certificates" and toggle the switch ON.
Your app is now ready for debugging.
Why use this over Charles Proxy?
You might ask: "If I have to configure the system proxy anyway, why not just use Charles or Proxyman?"
Technically, the setup is similar. However, Chaos Proxy (Cloud) offers three major advantages that local desktop apps cannot provide:
1. Automation & CI/CD 🤖
Charles is a desktop GUI application. You can't run it inside a GitHub Actions pipeline. Chaos Proxy is cloud-native. You can write a UI Test (XCUITest) that:
- Configures the Simulator proxy (via scripts).
- Calls the Chaos Proxy API: "Enable 100% packet loss".
- Asserts that the app correctly displays the "No Internet Connection" screen.
This allows you to automate network resilience testing instead of manually toggling buttons every time.
2. Instant Log Sharing 🤝
No more exporting .xml or .chls files and uploading them to Slack. Found a bug? Copy the Session URL from your browser and send it to the backend developer. They open it and instantly see the headers and JSON body.
3. Team Consistency
Instead of every QA engineer configuring their own local Map Local and Rewrite rules (which often leads to "it works on my machine" issues), you create a Chaos Preset in the cloud (e.g., "Slow 3G + Payment Errors"). The entire team connects to the same project and tests under identical network conditions.
Ready for modern debugging?
Stop fighting with local software configurations. Set up your proxy once and manage your traffic from the cloud.
Want to verify your setup? Try running a curl test on your Mac first to confirm the proxy is reachable.