Calculate packets per second or required bandwidth from link rate, packet or payload size, and Ethernet protocol overhead in one tool.

Packets Per Second Calculator

Choose a mode, enter the values you have, then calculate.

Packet size
Payload
Bandwidth
Copy result

Packets Per Second Formula

PPS = BitRate / (WireBytes * 8)
BitRate = PPS * WireBytes * 8
  • PPS — packets per second
  • BitRate — link or transfer rate in bits per second
  • WireBytes — total bytes transmitted per packet, including headers and Ethernet overhead

For Ethernet, on-wire size adds 18 B for the Ethernet header and FCS plus 20 B for the preamble, start-of-frame delimiter, and inter-frame gap. Frames smaller than 64 B are padded to the 64 B minimum. In payload mode, header sizes are 40 B (TCP/IPv4), 28 B (UDP/IPv4), 60 B (TCP/IPv6), or 48 B (UDP/IPv6).

Reference Values

Line-rate packets per second for common Ethernet speeds, using 84 B of on-wire data per minimum-size frame (64 B frame + 20 B overhead) and 1538 B for a 1500 B MTU frame.

Link speed 64 B frames 1500 B frames
100 Mbps148,810 pps8,127 pps
1 Gbps1.488 Mpps81,274 pps
10 Gbps14.88 Mpps812,744 pps
25 Gbps37.20 Mpps2.03 Mpps
40 Gbps59.52 Mpps3.25 Mpps
100 Gbps148.81 Mpps8.13 Mpps

Typical packet rate ranges and what they mean for hardware:

Range What to expect
Under 100 kppsHandled by most software routers, firewalls, and capture tools.
100 kpps to 1 MppsPushes single-CPU forwarding and packet capture; tune NIC offloads and queues.
1 to 10 MppsNeeds multi-queue NICs, kernel bypass (DPDK, XDP), or hardware forwarding.
Over 10 MppsTypically requires ASIC or FPGA forwarding at line rate.

Worked Example

Find the packet rate for a 10 Gbps link sending 64 B Ethernet frames.

  1. On-wire size = 64 + 20 = 84 B = 672 bits.
  2. Bit rate = 10,000,000,000 bps.
  3. PPS = 10,000,000,000 / 672 = 14,880,952 pps, or about 14.88 Mpps.

FAQ

Why include 20 bytes of overhead? Ethernet adds a 7 B preamble, 1 B start-of-frame delimiter, and a 12 B inter-frame gap between frames. These bits are on the wire and consume bandwidth even though they are not part of the frame.

Should I use the packet size or the payload mode? Use packet size mode when you know the frame or MTU. Use payload mode when you only know the application data per packet and the protocol stack.

Does this apply to non-Ethernet links? The basic formula does. Set "No overhead" if you want to ignore framing, or adjust the size to match your link layer.