Skip to content
SPECIFICTION
Get listed

netcode.io

github.com

Free plan WindowsmacOSLinuxSelf-hosted
Visit github.com
Spec score 8.4 #5 of 29 in Game Networking Middleware

What it is

netcode.io is a free, open-source client/server protocol for real-time multiplayer games. It uses UDP to exchange unreliable, unordered packets without TCP head-of-line blocking. Game backends can issue connect tokens that authorize clients, while servers assign connecting clients to configured slots and reject connections when slots are full. The protocol supports clean disconnects and timeouts for hard disconnects. Packets are encrypted and signed with libsodium, with protections described against crafted packets, replay attacks, and amplification attacks. IPv4 and IPv6 are supported, along with packet tagging intended to reduce Wi-Fi jitter. Implementations are listed for C, C#, Go, Rust, Unity, Unreal Engine 4, and TypeScript. Builds use CMake on Windows, macOS, and Linux, with CMake 3.16 or later and a vendored libsodium subset by default. The BSD 3-Clause project documents REST-based token requests and reports a nonce-reuse issue affecting versions 1.3.5 and earlier, fixed in 1.4.0.

Spec sheet

Purpose
netcode is a secure, connection-oriented client/server protocol for multiplayer games built on UDP.Read 9 Oct 2026 · github.com
Intended users
The maker describes the protocol for real-time multiplayer games and shows a backend issuing connect tokens after matchmaking.Read 8 Oct 2026 · github.com
Support
The maintainer asks users with build questions to open a GitHub issue and says he will do his best to help.Read 9 Oct 2026 · github.com
License
The C implementation is released under the BSD 3-Clause license.Read 9 Oct 2026 · github.com
Authorized access
Connect tokens let a game backend authorize which clients can connect to a server.Read 8 Oct 2026 · github.com
Backend integration
The documented connection flow has a client request a connect token from a REST API on the game's backend.Read 9 Oct 2026 · github.com
Build platforms
The maker says netcode builds with CMake on Windows, macOS, and Linux.Read 8 Oct 2026 · github.com
Build requirements
The C library builds with CMake 3.16 or later on Windows, macOS, and Linux, and includes a vendored libsodium subset.Read 9 Oct 2026 · github.com
Client authorization
Connect tokens let a game backend authorize which clients may connect to a server.Read 9 Oct 2026 · github.com
Client slots
Servers assign clients to slots and deny connections when all slots are occupied.Read 8 Oct 2026 · github.com
Connection model
It provides a minimal connection-oriented protocol over UDP for exchanging unreliable, unordered packets.Read 8 Oct 2026 · github.com
Disconnects
The protocol supports clean client- or server-side disconnects and timeouts for hard disconnects.Read 8 Oct 2026 · github.com
Encryption
Packets are encrypted and signed using the libsodium cryptography library.Read 9 Oct 2026 · github.com
Implementations
The repository provides a C implementation and links to C#, Go, Rust, Unity, Unreal Engine 4, and TypeScript implementations.Read 9 Oct 2026 · github.com
Known version issue
The project says a nonce-reuse issue affected versions 1.3.5 and earlier and was fixed in 1.4.0.Read 9 Oct 2026 · github.com
Network support
The protocol supports IPv4 and IPv6 connections and packet tagging to reduce Wi-Fi jitter.Read 9 Oct 2026 · github.com
Packet delivery
It lets applications exchange unreliable, unordered packets over UDP without TCP head-of-line blocking.Read 9 Oct 2026 · github.com
Packet security
Packets are encrypted and signed, with protections against crafted packets, replay attacks, and amplification attacks; cryptography uses libsodium.Read 8 Oct 2026 · github.com
Security reporting
Vulnerability reports can be submitted privately through GitHub or by email, and fixes are made on the latest release without backports to older release lines.Read 9 Oct 2026 · github.com
Server slots
Servers assign connecting clients to a configured slot and deny connections when all slots are occupied.Read 9 Oct 2026 · github.com
Threat protection
The project describes protections against crafted packets, replay attacks, and packet amplification attacks.Read 9 Oct 2026 · github.com

Plans and prices

netcode Free BSD 3-Clause licensed library · no paid plans or usage limits stated Read 9 Oct 2026 · github.com

Every netcode.io plan and price →

Strong points and limits

Strong points

  • Encrypted and signed UDP packets
  • Connect-token client authorization
  • IPv4 and IPv6 support
  • Implementations across several languages
  • BSD 3-Clause licensed

Limits

  • Matchmaking is not included
  • Requires CMake 3.16 or later
  • Older versions had a nonce-reuse issue

Who it suits

It is for developers building real-time multiplayer games that need an authenticated UDP client/server transport. It suits teams integrating their own backend matchmaking and token flow.

Verdict

netcode.io supplies a focused UDP protocol for authorized, encrypted multiplayer connections. Developers must provide matchmaking and backend services around its client/server transport.

Where Specifiction places it

Alternatives to netcode.ioAll alternatives →