Close this search box.

TCP vs. UDP: What’s the Difference?

We are reader supported and may earn a commission when you buy through links on our site. Learn more.

When choosing between Internet protocols TCP and UDP, there are several things to bear in mind.

For example, while TCP and UDP are protocols at the transport layer of a computer network, they have different speeds, functions, security levels, and use cases.

I took the time to analyze the structure and practical use of the two protocols.

Plus, I made sure to test how they work with popular VPN providers NordVPN and ExpressVPN, with the providers’ protocols laid over them.

If you want to learn more about the difference between TCP and UDP and their uses, keep reading this article.

If you’re in a hurry, grab our NordVPN or ExpressVPN exclusive discounts and see for yourself how TCP and UDP work!

TCP vs. UDP Comparison Table

Feature TCP UDP
Overview TCP allows for intact data received in order. UDP does not guarantee that data will be received.
Connection required For TCP, a connection must be established before data is transferred. No need for a prior connection.
Speed Low High
Latency High Low
Error check system Data is checked for errors, and lost packets are retransmitted. Data is not checked for errors. Lost packets are not retransmitted.
Reliability Reliability mechanisms in place Reliability mechanisms not in place
Data sequencing Data is sequenced, and numbers are assigned to data segments. This ensures that all packets arrive in order & that there are no missing data. Data is not sequenced.
Handshaking techniques
Three-way handshake:
- SYN (sender)
- SYN-ACK (receiver)
- ACK (sender)
No handshaking
Overhead High Low
Use cases
- Viewing websites and downloading files 
- TCP makes them intact.
- Voice and video calls
- Gaming
- Streaming

What Is TCP?

handshake through laptop showing connection

TCP, or transmission control protocol, is a connection-oriented protocol.

It ensures an error-free data stream with no data packet loss and guarantees that everything sent is received “as is” at the other end.

For such a stream to take place, a connection between the sender and the recipient needs to be established first. This is done via a “three-way handshake.”

Through that “handshake,” the recipient lets the sender know a specific packet has been received.

The sender then acknowledges that, and the next packet in the sequence is sent. This ensures the data is received in the right order.

For example, if the data isn’t sent and received in the right order, the website you’re visiting may not load as intended, and you won’t have good UX.

When Should You Use TCP?

You should use the TCP protocol when reliable delivery of information and data integrity is more important than a quick connection.

For example, use TCP when you’re sending or receiving emails, as the simple mail transfer protocol (SMTP) uses TCP to connect with the server.

It’s also best to use TCP when you’re sending photos or important documents over the network in large quantities (with email or WeTransfer).

That’s because it has mechanisms that ensure the delivery of intact data packets in the right order.

Day-to-day web browsing is also best done on TCP because it ensures good UX for you, and TCP is used to access data on the web.

Every piece of data will be delivered, and the website will look as intended.

Additionally, use TCP for text-based communications like Facebook Messenger and WhatsApp.

The messengers use a protocol called XMPP, the native protocol of which is TCP.

when should you use tcp

What Is UDP?

UDP, or User Datagram Protocol, is a connectionless protocol.

All it does is send data packets from one computer to another in no particular order, and there’s no need to establish a prior connection between two computers to do that.

This protocol, unlike TCP, doesn’t have mechanisms that prevent errors, so the data packets might arrive out of order.

And there’s no acknowledgment from the other end that it’s been received, as UDP doesn’t have the handshake as part of its structure.

When Should You Use UDP?

You should use UDP for broadcasting, streaming, video playback, or in other instances where efficiency and speed are key.

Using UDP is also recommended for video conferences and calls. Voice Over IP (VOIP) uses UDP, for example.

If you’re an online gamer, you should also use UDP when playing games, as UDP allows for instant multiplayer interaction.

These use cases are possible with UDP because it can transfer data much quicker than TCP, and to several hosts at the same time.

You shouldn’t use UDP to transmit important files, as it doesn’t protect against data packet loss.

when to use udp

Is TCP or UDP More Secure?

TCP is a more secure and reliable protocol than UDP.

Primarily, it’s more secure because it ensures data integrity and delivery.

This is due to its built-in error checking mechanism and data sequencing, ensuring the data arrives whole and in the correct order.

In fact, TCP is used in SSL/TLS encryption, which is almost always used to encrypt data on websites today.

network security

Does TCP or UDP Take Up More Bandwidth?

TCP takes up more bandwidth and has higher latency than UDP.

That’s because there’s a lot more back-and-forth communication between sender and recipient than with UDP, thanks to the three-way handshake.

Plus, the built-in error check systems require more bandwidth on the network.

Is TCP or UDP Better for Streaming?

Due to its lower latency, UDP is better for streaming than TCP. This is especially true for live streaming and video conferences.

That’s because of the buffering from TCP. It occurs from transmitting the data packets to several computers and not always acknowledging the packets in time.

That can harm your user experience.

Does Netflix Use TCP or UDP?

Netflix uses TCP for streaming.

This is because TCP’s error-checking mechanism ensures that the videos have no glitches and no frames are lost.

TCP also allows the full use of bandwidth for streaming Netflix content.

Also, UDP is more suited for broadcasting to a wide audience at the same time.

With Netflix, you’re just the one user, and the data is sent to your device only. TCP ensures that data undergoes error checking.

Is TCP or UDP Better for Gaming?

When you’re playing an online game like Fortnite, UDP is better than TCP, thanks to its low latency.

However, sometimes both protocols are used – TCP at the start to establish the connection to the game and UDP once the game begins.

UDP can quickly send data between players about each other’s activities, with little lag.

Watch the video below for a straightforward example of this:

Do TCP and UDP Work With Port Forwarding?

Both TCP and UDP work with port forwarding.

Choosing whether to use UDP or TCP for port forwarding depends on what you need it for.

For example, UDP is most commonly used with BitTorrent, whereas TCP is usually used for most other applications, such as PuTTY.

What Are the Advantages of UDP Over TCP?

The advantages of one protocol over another depend on what the user needs. For example, UDP has an advantage over TCP with video calls and conferences.

When it comes to streaming live events such as sports, UDP works better for broadcasting than TCP, which gives it an advantage in such use cases.

UDP is also preferable in online gaming with multiple users.

In the games, particularly those involving user interactions, the data is sent to multiple users at the same time. It’s not a big issue if the data isn’t in order, like TCP.

Best VPNs With TCP and UDP

I tested both protocols using ExpressVPN, NordVPN, CyberGhost, Surfshark, and Ivacy.

I concluded that the best VPNs for TCP and UDP on Windows are ExpressVPN and NordVPN.

Both TCP and UDP work with most VPNs, and usually, VPNs lay their protocols over them.

Today, the most common VPN protocols laid over TCP and UDP are OpenVPN and WireGuard.

Some VPNs also develop a custom protocol, such as ExpressVPN’s Lightway.

VPN Service TCP & UDP Supported Protocols laid over TCP and UDP
NordVPN Yes OpenVPN
ExpressVPN Yes OpenVPN, Lightway
Surfshark Yes OpenVPN
CyberGhost Yes OpenVPN
Ivacy Yes OpenVPN

However, choosing a VPN provider that supports TCP and UDP and deciding if you want to use TCP or UDP with these VPN protocols depends on why you’re using a VPN.

If, for instance, you’re using it to stream sports or send peer-to-peer files (torrent), UDP is better with a VPN, thanks to its speed.

If, however, you’re using a VPN to protect your privacy when sending files across an unsecured network or bypassing a firewall, you’re better off using TCP with your VPN, as it’s more reliable.

Testing TCP vs. UDP on VPN

I tested TCP and UDP on NordVPN and ExpressVPN to see how they perform in speed and how much data is consumed when using them.

I connected to the providers’ servers near me for the best speed. Here are the results.

Testing on ExpressVPN

First, I connected to ExpressVPN on my desktop using TCP and UDP with OpenVPN and Lightway protocols laid over them and a server close to me (The Netherlands).

This is the speed I got.

Baseline speed:

baseline speed expressvpn
tcp openvpn
udp openvpn test
tcp lightway test
TCP Lightway
udp lightway
UDP Lightway

I also measured data usage using GlassWire when connected to a server in Sweden for five minutes at a time.

Here are the results of how much data ExpressVPN used at that time:

glasswire tcp openvpn test
glasswire udp openvpn test
glasswire tcp lightway
TCP Lightway
glasswire udp lightway test
UDP Lightway

As you can see, OpenVPN TCP used more data than UDP due to the required overhead.

However, with Lightway, UDP sent more data than TCP due to the protocol’s enhanced speed.

Testing on NordVPN

I then tested TCP and UDP on NordVPN, using OpenVPN over them, and connected to a server in Lithuania. Here are my results:

Baseline speed:

baseline speed test
nordvpn tcp openvpn test
nordvpn udp openvpn test

As you can see, there was little difference between TCP and UDP connections in terms of speed on ExpressVPN and NordVPN.

That means both VPNs’ overlay protocols (OpenVPN and Lightway) ensure smooth connection, whether you’re using TCP or UDP.

I also tested data consumption by the NordVPN app with TCP and UDP with GlassWire. Here’s what I found:

nordvpn glasswire tcp openvpn test
nordvpn glasswire udp openvpn test

Here, the UDP connection also takes up less data than the TCP connection with OpenVPN laid over it.

NordVPN vs. ExpressVPN - TCP and UDP Comparison

And here are the overall results of how NordVPN and ExpressVPN performed with TCP and UDP, in terms of speed and data usage.

VPN provider Speed TCP Speed UDP Data usage TCP (5 min) Data usage UDP (5 min)
Ping - 139
Download - 7.70
Upload - 7.65
Ping - 125
Download - 9.64
Upload - 6.13
Total - 7.8 MB
Incoming - 6.4 MB
Outgoing - 1.4 MB
Total - 3.3. MB
Incoming - 1.7 MB
Outgoing - 1.6 MB
Ping - 113
Download - 5.55
Upload - 2.40
Ping - 115
Download - 11.06 
Upload - 2.33
Ping - 108
Download - 11.21
Upload - 2.10
Ping - 112
Download - 11.91 
Upload - 1.90
Total - 7.9 MB
Incoming - 5.7 MB
Outgoing - 2.2 MB
Total - 285.3 KB
Incoming - 179 KB
Outgoing - 106.2 KB
Total - 3.2 MB
Incoming - 1 MB
Outgoing - 2.2 MB
Total - 2.5 MB
Incoming - 494.1 KB
Outgoing - 2 MB

How to Enable TCP on Your VPN?

Some VPNs already have TCP or UDP enabled by default. But if not, here is how to enable TCP on ExpressVPN or NordVPN.

TCP on ExpressVPN

Here’s how to enable TCP on ExpressVPN on your Windows desktop:

  1. Launch ExpressVPN.
  2. Click the menu button and go to “Options.”
expressvpn options
  1. In the new window, go to “Protocol.”
expressvpn options protocol
  1. Depending on if you want OpenVPN or Lightway, choose from “Lightway TCP” or “OpenVPN TCP” and click “OK.”
  1. Choose your server and connect to it or click the large Power button to connect to a Smart location.

TCP on NordVPN

Enabling TCP on NordVPN on a desktop is quite easy. Here’s what you have to do:

  1. Launch NordVPN.
  2. Go to “Settings” at the top right corner.
nordvpn settings icon
  1. Go to “Auto-connect.”
  2. From the drop-down menu on the right, choose OpenVPN (TCP) and return to the main screen.
nordvpn tcp
  1. Connect to your server of choice or click “Quick Connect.”

How to Enable UDP on Your VPN?

The procedures for enabling UDP on ExpressVPN and NordVPN aren’t too different from enabling TCP on these applications.

Here’s how you do it.

UDP on ExpressVPN

To enable UDP on your ExpressVPN desktop application:

  1. Repeat steps 1-3 from “TCP on ExpressVPN.”
  2. Choose from “Lightway UDP” or “OpenVPN UDP” and click “OK.”
  1. Choose your server and connect to it or click the large Power button to connect to a Smart location.

UDP on NordVPN

To enable UDP on NordVPN, you have to:

  1. Repeat steps 1-3 from “TCP on NordVPN.”
  2. From the drop-down menu, choose “OpenVPN (UDP)” and return to the main screen.
nordvpn udp
  1. Connect to your server of choice or click “Quick Connect.”
Interesting Reads:


Hopefully, you now have a better understanding of TCP vs. UDP.

To sum up – TCP has more overhead and is, therefore, slower than UDP because it has more features than UDP, such as error checking, data sequencing, and the three-way handshake.

UDP is faster in comparison, as it doesn’t have that much overhead and doesn’t check for errors.

Therefore, your protocol choice depends on what you’re using it for.

We recommend TCP for browsing and sending secure files and UDP for broadcasting, streaming, and video conferences.

help us to Spread the word
Share This Article!

Please help us spread the word by sharing this article and telling your family, friends, and colleagues.

Explore More
NordVPN deal
Our partner, NordVPN, offers an exclusive discount for a limited time! Don't miss out on the chance to save extra money.
Or Try NordVPN for FREE