Ketika data ditransfer melalui media komunikasi, seperti Internet atau jaringan area lokal (LAN), kecepatan transfer rata-rata sering digambarkan sebagai throughput. Pengukuran ini mencakup semua informasi overhead protokol, seperti header paket dan data lain yang disertakan dalam proses transfer. Ini juga termasuk paket yang ditransmisikan ulang karena konflik atau kesalahan jaringan. Goodput, di sisi lain, hanya mengukur throughput dari data asli.
Goodput dapat dihitung dengan membagi ukuran file yang ditransmisikan dengan waktu yang dibutuhkan untuk mentransfer file. Karena perhitungan ini tidak menyertakan informasi tambahan yang ditransfer antar sistem, pengukuran goodput akan selalu kurang dari atau sama dengan throughput. Misalnya, unit transmisi maksimum MTU dari koneksi Ethernet adalah 1.500 byte. Oleh karena itu, file apa pun yang lebih dari 1.500 byte harus dipecah menjadi beberapa paket. Setiap paket menyertakan informasi header (biasanya 40 byte), yang menambah jumlah total data yang perlu ditransfer. Oleh karena itu, goodput dari koneksi Ethernet akan selalu sedikit lebih kecil dari throughput.
Sementara goodput biasanya mendekati pengukuran throughput, beberapa faktor dapat menyebabkan goodput menurun. Misalnya, kemacetan jaringan dapat menyebabkan tabrakan data, yang memerlukan pengiriman ulang paket. Banyak protokol juga memerlukan pengakuan bahwa paket telah diterima di ujung yang lain, yang menambahkan overhead tambahan untuk proses transfer. Setiap kali lebih banyak overhead ditambahkan ke transfer data, itu akan meningkatkan perbedaan antara throughput dan goodput.