A Clumsy alternative for Windows
Clumsy is the tool most people find first, and it is a good one: free, MIT licensed, interactive, and built on the same WinDivert driver this tool uses. If it does what you need, use it. This page is about the cases where it does not.
What to look for, whichever you pick
| Question | Why it decides the tool |
|---|---|
| Can it hit one application? | Otherwise you impair the machine you are working on, including the remote session and the browser you are reading the docs in. |
| Does it have a command line? | A pipeline cannot click a checkbox. Without one, a network test can never be part of the build. |
| Is a run repeatable? | Random loss that cannot be replayed produces bug reports nobody else can reproduce. |
| Does it stop by itself? | A tool that needs you to remember to switch it off will be left running. |
| Can you tell what it actually did? | Counters and a connection list turn "it felt slow" into numbers. |
What this one brings
- Targeting by process, PID, address or port, following the process tree, so a browser with thirty child processes is still one target.
- The same executable is the command line, with an exit code for every outcome and NDJSON output, so it works in CI.
- Seeded runs: the same seed replays the same random loss and jitter.
- Ready profiles - 3G, LTE, satellite, a crowded cafe, in-flight WiFi, a 56k modem - so you start from something believable instead of guessing numbers.
- Timed sessions and scripted scenarios, so impairment can change on its own while you watch the app.
- A live view: chart, counters and a connections table showing which connection was hit.
- English and Polish interface, and no telemetry of any kind.
If you came from another tool
Four names come up whenever this is discussed, and they are not interchangeable.
| You know | What it is | What to expect here |
|---|---|---|
| tc with netem | The Linux answer, built into the kernel and driven from the command line. Often what a search for WAN emulation returns. | There is no
tc on Windows. This is the closest thing in spirit: the same kinds of impairment, a
command line with exit codes, and a driver instead of a queueing discipline. |
| Clumsy | A free, MIT-licensed, interactive Windows tool on the same WinDivert driver. | Reach for it when a window and a filter are all you need. Come here for per-process targeting, seeded runs and a command line a pipeline can call. |
| NetLimiter | A commercial Windows product for managing bandwidth per application, permanently. | A different job. This is a test instrument: switched on for a while, then off, and it degrades far more than speed. |
| Fiddler or Charles | Proxies that can inspect, rewrite and throttle the traffic that goes through them. | Also a different job. A proxy shapes what it proxies and sees the data. This shapes the connection itself, including UDP and anything that never touches a proxy. |
Put plainly: if you want a network emulator for one Windows application, with a command line, this is the shape of tool you are looking for. If you want to read and modify application data, you want a proxy, and if you are on Linux you already have netem.
When to use something else
Being honest about this is cheaper than a disappointed download.
- You are on Linux or macOS. This is Windows only, and it always will be - it
is built on a Windows driver. On Linux,
tcwithnetemis the standard answer and needs no extra software. - You want permanent bandwidth management for the whole machine, per application, as a product feature rather than a test. That is what commercial traffic-shaping tools like NetLimiter are for. This one is a test instrument: it is meant to be switched on for a while and then off.
- You cannot get administrator rights. Capturing packets needs them. There is no way around that, and a tool claiming otherwise is not capturing your traffic.
- You need to inspect and rewrite application data rather than degrade the link. That is a proxy's job.