Routing & Switching

How to Check Network Bandwidth Usage on Windows

J Jaspreet Singh April 2, 2024 5 min read
Animated diagram for How to Check Network Bandwidth Usage on Windows, showing a throughput gauge filling towards one gigabit with streaming, calls and downloads each claiming a share of it

Windows has four built-in ways to see network activity, and they answer different questions. Picking the right one saves a lot of time.

QuestionTool
What is my speed right now?Task Manager
Which app is using the bandwidth?Resource Monitor
How much have I used this month?Settings → Data usage
What is the interface’s lifetime total?PowerShell
Which remote address is it talking to?Resource Monitor → TCP Connections

1. Task Manager, Live Throughput

Ctrl+Shift+EscPerformance → pick your adapter.

You get a live graph, the current send and receive rate, the link speed, and the adapter’s IP addresses. The Processes tab has a Network column showing per-app usage, though you may need to right-click the column headers to add it.

Useful for “is anything using the connection at all” and for confirming the link negotiated at the expected speed. Task Manager’s per-process figures are approximate, for accuracy, use Resource Monitor.

2. Resource Monitor, Which Process, and Where To

This is the one worth learning. Open it with Win+Rresmon, or from Task Manager’s Performance tab.

The Network tab has four sections:

SectionShows
Processes with Network ActivityEvery process, with send and receive rates in bytes per second
Network ActivityEach connection: process, remote address, and throughput
TCP ConnectionsLocal and remote ports, latency, packet loss
Listening PortsWhat is accepting inbound connections, useful for a security check

Sort “Processes with Network Activity” by Total and you have your answer in seconds. The Network Activity section then tells you where that process is sending data, which is often the more interesting fact.

The Listening Ports section is worth a periodic look regardless, anything listening that you do not recognise deserves investigation.

3. Settings, Usage Over Time

Settings → Network & Internet → Advanced network settings → Data usage (the path varies slightly between Windows 10 and 11).

This shows the last 30 days, broken down per application, per adapter. It is the right tool for a metered connection or a data cap.

Two limitations: the window is fixed at 30 days, and the counter resets if you reset network settings or reinstall the adapter driver.

4. PowerShell, Numbers You Can Script

# Cumulative bytes since the adapter came up
Get-NetAdapterStatistics | Select-Object Name, ReceivedBytes, SentBytes

# Readable
Get-NetAdapterStatistics | ForEach-Object {
  [PSCustomObject]@{
    Name         = $_.Name
    ReceivedGB   = [math]::Round($_.ReceivedBytes / 1GB, 2)
    SentGB       = [math]::Round($_.SentBytes / 1GB, 2)
  }
}

# Live throughput, sampled once a second
Get-Counter '\Network Interface(*)\Bytes Total/sec' -Continuous -SampleInterval 1

Note that Get-NetAdapterStatistics counts from when the adapter last initialised, a reboot or a driver reload resets it to zero. It is not a monthly total.

Per-connection detail, with the owning process:

Get-NetTCPConnection -State Established |
  Select-Object LocalAddress, LocalPort, RemoteAddress, RemotePort,
    @{n='Process';e={(Get-Process -Id $_.OwningProcess -ErrorAction SilentlyContinue).ProcessName}} |
  Sort-Object Process

Command Line

netstat -e            ! interface totals
netstat -e -s         ! detailed per-protocol statistics
netstat -ano          ! every connection with its PID
netstat -b            ! connections with the executable name (needs admin)

netstat -ano plus Task Manager’s PID column identifies an unexpected connection quickly.

Diagnosing “The Internet Is Slow”

  1. Resource Monitor first. If one process is consuming everything, you are done, Windows Update, OneDrive sync, a game download or a backup client are the usual suspects.
  2. Check the adapter’s link speed in Task Manager. A gigabit port showing 100 Mbps means a damaged cable pair.
  3. If nothing local is using bandwidth, the problem is elsewhere. Check other devices, then the router, then the connection.
  4. Test latency, not just throughput. ping your gateway and a public address, loss or high latency points at a different cause than saturation. See what is ping.
  5. Measure real throughput with iperf3 to a local host, which removes the internet connection from the test. See throughput.

When the Built-in Tools Are Not Enough

Windows can only tell you about this machine. For household or network-wide visibility you need to look at the router or the switch:

  • Router traffic statistics, most routers show per-device usage, which is the only way to identify which device is the problem.
  • SNMP monitoring on managed switches for per-port utilisation over time.
  • NetFlow or sFlow for who-talked-to-whom across the network.
  • Wireshark when you need packet-level detail rather than volume.

If the goal is finding which device in the house is saturating the connection, the router’s statistics page answers it directly and no Windows tool will.

Frequently Asked Questions

How do I see which app is using my bandwidth?

Resource Monitor (resmon) → Network tab → Processes with Network Activity, sorted by Total. It also shows the remote addresses each process is talking to.

Why does Task Manager show low usage while my connection is slow?

Because the bottleneck is elsewhere. Another device may be saturating the connection, or the problem may be latency and packet loss rather than bandwidth. Check the router’s per-device statistics.

Does Windows track monthly data usage?

Settings → Network & Internet → Data usage shows the last 30 days per application. It resets if you reset network settings or reinstall the adapter driver.

What is the difference between Mbps and MB/s?

A factor of 8. Network speed is in megabits per second; file sizes are in megabytes. A 100 Mbps connection downloads at about 12.5 MB/s.

How do I find what is listening on a port?

netstat -ano lists every connection with its process ID, or Resource Monitor’s Listening Ports section shows the same with process names attached.

Can I limit an application’s bandwidth in Windows?

Not natively, beyond marking a connection as metered, which throttles Windows Update and some Store apps. Per-application limits need third-party software or QoS on the router.

JA
Written by

Jaspreet Singh

Hey! I'm Jaspreet Singh and I completed a degree in Bachelor of Computer Applications. I have 7+ years of experience in the Network & Security Domain as well as the Cloud Infra Domain. So I love to explore my technical knowledge with you.

Leave a Reply

Your email address will not be published. Required fields are marked *