Lagsmith vs. Charles Proxy for throttling
Charles Proxy is a long-standing HTTP debugging proxy, and its throttling is popular with iOS developers. If throttling is what you mostly use Charles for, Lagsmith is a simpler Charles Proxy throttling alternative: per app, no proxy and no certificates.
| Charles Proxy | Lagsmith | |
|---|---|---|
| How it works | HTTP proxy: traffic is routed through Charles | Per-app network control, no proxy |
| Throttling | Throttles everything going through the proxy | Throttles only the apps you choose |
| HTTPS | Install and trust Charles’s root certificate to see HTTPS | Sees simulator requests with no certificate or proxy settings |
| Failures | Rewrite, map and breakpoint requests | Airplane Mode, refused connections, time-outs, dropped connections, outages that come and go, fail or mock one endpoint |
| Offline in the simulator | Not a device-like offline state | NWPathMonitor and SCNetworkReachability report no network |
| Physical devices | Yes, by pointing the device at the proxy | Mac apps and iOS Simulator apps |
When Charles is the better fit
Charles is great for deep HTTP debugging: breakpoints, rewriting, mapping requests to local files, and inspecting traffic from physical devices. Many developers use both.
When to use Lagsmith
- You want to slow down one app, not everything going through a proxy.
- You don’t want to install and trust a root certificate in each simulator.
- You need real offline behaviour, time-outs and dropped connections, not only slow responses.
- You want an AI agent or UI test to control the network.
Lagsmith exports requests as HAR, which opens in Charles. See also Lagsmith vs. Network Link Conditioner and Lagsmith vs. Proxyman.
Slow down one app, not your whole Mac
Free to download, with a 14-day Pro trial. No account, no card. Requires macOS 13 Ventura or later.