How to get network usage of every process on Windows

  1. Download and run the AppNetworkCounter tool. If you have 64-bit system, it's recommended to download the 64-bit version of this tool.
  2. In the Options menu, open the 'Group By' sub menu and then choose 'Process ID'. If you don't choose to group by process ID option, AppNetworkCounter will merge the network usage information of processes with the same .exe file.
  3. Optionally, you can turn on the 'Hide Inactive Items' option (Under the Options menu) in order to automatically hide inactive processes.
  4. Choose the desired bytes counter unit from Options -> Bytes Counter Unit. You can choose one of the following units: Bytes, kB, KiB, MB, MiB.
  5. Choose the desired speed unit from Options -> Speed Unit. You can choose on of the following speed units: Mbps, MiB/Sec, MB/Sec, KiB/Sec, kB/Sec
  6. AppNetworkCounter displays the network usage information for every process, in the units you selected. For every process, the following network usage information is displayed: Received Bytes, Sent Bytes, Received Packets, Sent Packets, IPv4 Received Bytes, IPv4 Sent Bytes, IPv6 Received Bytes, IPv6 Sent Bytes, Receive Speed, Send Speed, Maximum Receive Speed, Maximum Send Speed.

    Process Network Usage Information

  7. You can also get the network usage information of every process from command-line and export the information to a file. For example, the following command captures the process network usage for 15000 milliseconds and then saves the data to comma-delimited file:
    AppNetworkCounter.exe /CaptureTime 15000 /scomma c:\temp\process_network_usage.csv
  8. It's also possible to sort the process network usage information by any column you need. For example the following command will sort the data by the 'Received Bytes' column (The largest value will be in the top of the list):
    AppNetworkCounter.exe /Sort "~Received Bytes" /CaptureTime 15000 /scomma c:\temp\process_network_usage.csv