mitmproxy vs Surge
mitmproxy
mitmproxy.orgSurge
nssurge.comSide by side
| Figure | mitmproxy | Surge |
|---|---|---|
| Price from | Free | — |
| Free plan | Yes | — |
| Free trial | — | — |
| Open source | Yes | — |
| Web | Yes | — |
| Windows | Yes | — |
| macOS | Yes | Yes |
| Linux | Yes | — |
| iOS | — | Yes |
| API | Yes | — |
| Self-hosted | Yes | — |
| Plans published | 2 | 4 |
| Spec score · Proxy Software | 8.7 (#5) | 7.2 (#29) |
| Support | Usage questions and bug reports are directed to GitHub Discussions and the project repository. | The purchase page says the products are designed for professional users and do not include technical support; customer service handles billing issues. |
Plans
Surge
- Surge iOS Pro Personal License$49.99, paid once
- Surge Mac License — 1 Device$49.99, paid once
- Surge Mac License — 3 Devices$69.99, paid once
- Surge Mac License — 5 Devices$99.99, paid once
In their own words
mitmproxy
mitmproxy is a free set of tools for inspecting and changing traffic sent through a proxy. It handles HTTP/1, HTTP/2, WebSocket, and SSL/TLS traffic, and can intercept HTTP and HTTPS requests and responses for editing. Conversations can be saved for later analysis, and users can replay client requests or recorded server responses. The project provides an interactive console, a browser-based GUI, and non-interactive terminal output through mitmproxy, mitmweb, and mitmdump. Proxy modes include regular, local capture, WireGuard, reverse, transparent, TUN, upstream, SOCKS5, and DNS. Python addons can alter behavior in response to events and expose commands. WireGuard mode can capture traffic from external devices or individual Android apps. A built-in certificate authority generates interception certificates as needed. Installation options cover Windows, macOS, Linux, PyPI, and official Docker images. The project says it does not phone home or check for updates. Documentation notes that HTTP/3 client replay is currently broken; dependencies in precompiled binaries and Docker images are fixed at release and cannot be updated in place.