Network Conditions
Add latency and jitter, cap bandwidth and inject connection failures, globally or for a single host.
Network Conditions lets you test the bad network from a good one. Pick a profile for all traffic, add rules that give particular hosts their own profile, and watch how the app copes with a slow API, a flaky connection or no connection at all.
Profiles#
Start from a preset and adjust it. The presets use conservative, reproducible numbers rather than pretending to model a particular carrier.
| Preset | Download | Upload | Latency | Jitter | Loss |
|---|---|---|---|---|---|
| Offline | — | — | — | — | 100% |
| Very Bad Network | 128 kbps | 64 kbps | 800 ms | 400 ms | 5% |
| 2G / EDGE | 250 kbps | 100 kbps | 400 ms | 80 ms | 1% |
| Slow Network | 780 kbps | 330 kbps | 200 ms | 40 ms | 0% |
| 3G | 1.6 Mbps | 750 kbps | 150 ms | 30 ms | 0% |
| Medium Network | 4 Mbps | 1 Mbps | 100 ms | 20 ms | 0% |
| 4G / LTE | 12 Mbps | 5 Mbps | 50 ms | 10 ms | 0% |
| Wi-Fi | 30 Mbps | 15 Mbps | 20 ms | 5 ms | 0% |
| Wi-Fi 802.11ac | 240 Mbps | 120 Mbps | 5 ms | 2 ms | 0% |
Offline is modelled as every connection failing, not as a bandwidth of zero, so the app sees a real failure rather than a request that hangs forever.
Global profile and host rules#
- The global profile applies to everything WireLens captures.
- Host rules give a matching host its own profile. Rules are checked in order, so put a specific host above a broad wildcard.
A common setup: leave the global profile unthrottled and give only your payments or upload host a Very Bad Network profile.
Where each setting applies#
WireLens shows this on screen too, under How this is applied:
- Latency, jitter, loss and upload speed apply to every exchange, plain HTTP and decrypted HTTPS alike, before WireLens connects to the server. Loss means the exchange is reset, since there is no individual packet to drop once the connection is terminated at the proxy.
- Download bandwidth is shaped on plain HTTP. Decrypted HTTPS reuses upstream connections across requests, and per-request shaping there would slow down unrelated requests on the same connection, so download limits are not applied to it.
Free and Pro#
The free plan shapes one thing at a time: the global profile, or one host rule. Pro lets you throttle as many hosts independently as you need.
From the command line and MCP#
wirelens rules throttle --delay 400
The MCP tools are set_network_condition_profile for profiles and host rules, and set_throttle for a simple delay.
Something here is unclear, or wrong for your setup? Contact support or write to support@wirelens.app.