AppNetworkCounter is a free Windows utility from Nir Sofer that measures network usage for individual applications. It counts TCP and UDP bytes and packets, displays transfer speeds, and separates IPv4 from IPv6 totals. The main table combines these measurements with information about each application’s executable file.
One application or individual processes
Monitoring begins when AppNetworkCounter runs, and applications appear as they send or receive network data. The default grouping combines multiple processes of the same application into one entry. Closing and reopening a monitored application continues its existing counter entry.
Grouping by Process ID instead gives each process a separate row. This mode also displays the process’s user, full command line, and associated services. Application names and paths identify the executable, while its version resource supplies the product name, version, description, and company.
Reading the counters
Each row shows incoming and outgoing byte totals, packet totals, and current receive and send speeds. Separate columns count IPv4 and IPv6 bytes. Combined counters add the incoming and outgoing quantities, and an optional Total row sums TCP and UDP usage across all applications.
Maximum-speed columns retain the highest receive and send rates. First Activity Time and Last Activity Time mark the boundaries of an application’s observed activity. Average-speed columns calculate rates across that interval. Speed-unit and byte-unit controls change how the table presents these values.
Starting another measurement
Reset Selected Counters restarts the counters for particular rows. Clear All empties the entire list, allowing a new set of measurements to begin.
The localhost exclusion option leaves local loopback activity out of the totals. It covers both the IPv4 loopback address and its IPv6 equivalent. Hide Inactive Items removes idle entries from view after an inactivity threshold, which the configuration file can change.
Keeping a row in view
Users can sort by clicking a column header or choosing a column from the sorting menu. Repeating the selection reverses the order, and Shift adds a secondary sort. Sort On Every Update reapplies sorting as measurements change.
Keep Selected Item Visible maintains the selected row’s visibility during updates. With the tray icon active, its tooltip summarizes that selection’s application name, incoming and outgoing bytes, and receive and send speeds.
Reports from the list
Save All Items exports the complete list. CSV and tab-separated exports can include a header row, and a separate control chooses file encoding. Copying data to the clipboard also transfers table values.
AppNetworkCounter’s command-line reporting collects activity for a specified capture period and writes a report without displaying the interface. Output choices include plain text, tab-separated text, CSV, horizontal or vertical HTML, XML, and JSON. Sort parameters choose columns and direction, with multiple parameters applying more than one sorting level.
A configuration-file parameter loads settings from a chosen file. Other command-line settings can change individual configuration values, such as the speed unit, for the reporting run.




