Submit a ticketCall us

AnnouncementsAre You “Flying Blind?”

When it comes to your complex IT infrastructure, you want to ensure you have a good grasp of what’s going on to avoid any fire drills that result from guesswork. Read our white paper to learn how proactively monitoring your IT environment can help your organization while giving you peace of mind.

Get your free white paper.

Home > Success Center > Network Performance Monitor (NPM) > NPM - Knowledgebase Articles > Calculate interface bandwidth utilization

Calculate interface bandwidth utilization

Created by Justin Wyllys, last modified by Jie Y Lee on Jan 08, 2019

Views: 11,869 Votes: 10 Revisions: 13

Updated November 6, 2018


It is sometimes necessary to calculate bandwidth use with SNMP, for example, if a customer wants in-depth details about data displayed in NPM.


Please do not edit the technical content of this article without first speaking to the author.


  • All NPM versions



Important Caveats:

1. This calculation will only provide you with data in the time frame the walks were run, you will not be able to calculate historical data from these SNMP walks

2. You will probably not be able to calculate the exact bandwidth used during the time period, due to time differences between gathering OIDs, as you aren't a machine.

3. Set customer expectations accordingly before proceeding. This is designed to get you very close to what is happening but may not be exactly spot on due to human error in gathering the data.



  1. Get two SNMP walks from the target device and know the time interval between them,
    • A good starting point is to run the SNMP walks 10 minutes (600 seconds) apart.
    • You can also calculate the difference in sysUpTime ( to get the time delta between the two SNMP walks.
  2. OIDs you need:
    • Select a direction (in or out) and use the 32 or 64-bit counters according to Node setting in NPM (edit node)
    • Select an interface to perform the calculation (more details on next page)
  3. The formula we use to calculate the bps: bps = ((poll2 -poll1)*8)/time_in_seconds_between_polls
  4. How to calculate interface bandwidth and utilization: 



Example Calculation

  • First find the interface unique ID based on ifName (, ex:
    • . = STRING: “Gigabit Ethernet 1/13“
    • Use the .10 above when searching for the ifInOctets OIDs below
  • SNMPWalk1:
    • ifInOctets = = 4061867077
    • ifSpeed = = 1000000000
  • SNMPWalk2:
    • ifInOctets = = 158003538 (+ 4294967296 due to counter rollover)
    • ifSpeed = = 1000000000
  • Time difference between walks: 793 seconds
  • Difference between walk 1 and 2 in ifinoctets: 
    • (158003538 + 4294967296) - 4061867077 = 391103756

    391103756 x 8 x 100 = 312883004800
    793 x 1000000000 = 793000000000


  • Results = 312883004800 / 793000000000 = 0.3945561220680958
  • 0.3945561220680958 x 100 = 39.46% bandwidth IN utilization during the 793 seconds between walks


Disclaimer: Please note, any content posted herein is provided as a suggestion or recommendation to you for your internal use. This is not part of the SolarWinds software or documentation that you purchased from SolarWinds, and the information set forth herein may come from third parties. Your organization should internally review and assess to what extent, if any, such custom scripts or recommendations will be incorporated into your environment.  You elect to use third party content at your own risk, and you will be solely responsible for the incorporation of the same, if any.

Suggested tags : Interface, Utilization



 Reason for Rework or Feedback from Technical Content Review:   

Set to Published, not sure there is a good understanding of the article technically speaking. Your correct the parent mib is highlighted in red the .10 is an example of the specific interface the calculation is for.


Nothing wrong technically with the article. Updated 6/14/2017

  Bandwidth 32 bit counter  is not 


Last modified