Ethernet Packet Rate & Goodput Calculator
Enter the payload, protocol headers, VLAN tags, MTU, and link speed to see the wire-rate packet rate and useful application goodput. The result separates MAC frame bytes from the preamble and interframe gap byte-times that still consume the link.
Maximum application goodput (Mbps)949.28
- IP packet size (bytes)
- 1,500
- Ethernet frame size (bytes)
- 1,518
- Line-time bytes per packet
- 1,538
- Maximum packet rate (pps)
- 81,274.38
- Application efficiency
- 94.93%
- Required Ethernet line rate (Mbps)
- 948.08
- MTU check
- Fits the MTU with 0 bytes of headroom.
- Target at selected line rate
- Feasible at this line rate with 51.92 Mbps of theoretical headroom.
Packet byte budget
| Component | Bytes |
|---|---|
| Application payload | 1,460 |
| IP header | 20 |
| Transport header | 20 |
| Ethernet header and VLAN tags | 14 |
| Minimum-frame padding | 0 |
| Frame check sequence | 4 |
| Preamble and SFD | 8 |
| Interframe gap byte-times | 12 |
Line rate and packet rate are per direction on a full-duplex Ethernet link.
Preamble and interframe gap are counted as line-time byte equivalents, not MAC frame bytes.
How to use this calculator
- Choose the Ethernet line rate for one direction of the link.
- Select IPv4 or IPv6 and TCP or UDP, then add TCP option bytes when they are present.
- Enter the useful application payload per packet, VLAN tag count, and configured IP MTU.
- Use the packet rate, goodput, efficiency, and required line rate to compare packet sizes or link speeds.
How Ethernet goodput is calculated
Ethernet line rate is spent on more than application data. Each packet carries IP and transport headers, an Ethernet header, an FCS, and sometimes VLAN tags. On the wire it also consumes the preamble, start frame delimiter, and interframe gap, even though those bytes are not part of the MAC frame length usually shown by packet tools.
The calculator uses these byte counts:
- IPv4 is 20 bytes, and IPv6 is 40 bytes before extension headers.
- UDP is 8 bytes. TCP is 20 bytes plus TCP options rounded to a four-byte boundary.
- Ethernet is 14 bytes, plus 4 bytes for each 802.1Q VLAN tag, plus a 4-byte FCS.
- The MAC frame is padded to at least 64 bytes from destination address through FCS.
- Line-time bytes add 8 bytes for preamble/SFD and 12 byte-times for the interframe gap.
With application payload A, IP header I, transport header T, VLAN tag count V, and line-time bytes W, the core formulas are:
L = I + T + A
F = max(64, 14 + 4V + L + 4)
W = 8 + F + 12
packet rate = line rate bits per second / (8W)
goodput Mbps = packet rate * 8A / 1,000,000
efficiency percent = 100A / W
For reverse sizing, the required Ethernet line rate is target goodput * W / A when the payload is greater than zero. A zero-byte payload can still have a packet rate, but it cannot carry application goodput, so reverse line-rate sizing is undefined.
What moves the result most
Payload size usually dominates the answer. A full-size TCP segment on a 1500-byte IPv4 MTU spends a small share on overhead, while tiny UDP or TCP packets are heavily affected by Ethernet minimum-frame padding, preamble, and interframe gap. VLAN tags add only four bytes each, but at very high packet rates those bytes still reduce goodput and increase the link rate required for a target payload throughput.
The MTU check is separate from the Ethernet frame calculation. VLAN tags increase the Layer 2 frame size but do not consume IP MTU. TCP options and IPv6's larger base header do consume MTU because they are inside the IP packet budget.
What this calculator leaves out
The result is a theoretical one-direction maximum for continuous, error-free traffic. It does not include application-protocol framing, TLS, IPsec, GRE, VXLAN, PPPoE, MPLS labels, IPv4 options, IPv6 extension headers, retransmissions, congestion control, pause frames, device processing limits, or idle gaps between bursts. Add those overheads to the payload or headers when they apply to the traffic you are modeling.
Worked example
For the default case, use 1 Gbps Ethernet, IPv4, TCP with no options, a 1,460-byte application payload, no VLAN tags, a 1,500-byte MTU, and a 900 Mbps target goodput. The IP packet is 20 + 20 + 1,460 = 1,500 bytes, so it exactly fits the MTU.
The Ethernet frame is 14 + 1,500 + 4 = 1,518 bytes. Adding the 8-byte preamble/SFD and 12 byte-times of interframe gap gives 1,538 line-time bytes. At 1 Gbps, the maximum packet rate is about 81,274 packets per second, and the maximum application goodput is about 949.28 Mbps. Application efficiency is 94.93%, so 900 Mbps of useful payload needs about 948.08 Mbps of Ethernet line rate before real-world losses or traffic gaps.
Common questions
Why is 1 Gbps Ethernet application throughput below 1 Gbps?
The nominal line rate includes every bit sent on the wire, not only application data. Ethernet framing, IP and TCP or UDP headers, FCS, preamble, and interframe gap all consume part of the line. With full-size IPv4/TCP packets, the theoretical application goodput is about 949 Mbps on a 1 Gbps link before higher-layer overheads.
How many packets per second can Gigabit Ethernet carry?
It depends on the line-time bytes per packet. Minimum-size Ethernet frames consume 84 byte-times when preamble and interframe gap are included, so 1 Gbps can carry about 1.488 million packets per second in that case. Larger frames use more byte-times and therefore have a lower packet rate.
Do the Ethernet preamble and interframe gap count as overhead?
They count for line-rate and packet-rate math because they occupy time on the medium. They are not part of the MAC frame length from destination address through FCS, which is why packet captures and vendor tables can appear to use different frame sizes.
How much overhead does an 802.1Q VLAN tag add?
Each 802.1Q VLAN tag adds four bytes to the Ethernet frame. QinQ uses two tags, so it adds eight bytes at Layer 2. VLAN tags do not reduce the IP MTU because they sit outside the IP packet.
What is the difference between throughput and goodput?
Throughput often refers to the total rate carried by a link or protocol layer, including headers and framing. Goodput is the useful application data rate after those overheads are removed. This calculator reports application goodput, so it is intentionally lower than the Ethernet line rate.
Does jumbo-frame MTU include the Ethernet header?
IP MTU normally describes the Layer 3 packet size and excludes the Ethernet header, VLAN tags, FCS, preamble, and interframe gap. Some hardware documentation discusses maximum frame size instead, so check whether the number is an IP MTU or a Layer 2 frame limit.