VLESS vs VMess vs Trojan vs Shadowsocks: Which One Should You Use?

By NPV Tunnel Team · · Updated Oct 24, 2026 · 4 min read

If you manage your own server, or you are choosing between configs a provider offers, you will hit this question quickly. Let's compare the four most common proxy protocols that NPV Tunnel handles, without drowning in jargon.

VMess: the veteran

VMess was the original V2Ray protocol. It has its own encryption and protections against replay attacks, so it can run without TLS if needed. That self-sufficiency made it a favourite for years. The cost is a bit of extra processing, and its traffic can look different from ordinary web browsing when it is wrapped in TLS.

VLESS: the lean successor

VLESS strips things back. It identifies you with a UUID and leaves encryption to the outer layer (TLS or REALITY). Less overhead means better speed and less CPU, which is noticeable on phones. Two terms you will see next to it:

"VLESS + REALITY + Vision" on port 443 is the combination people usually mean when they say VLESS is the modern choice.

Trojan: blend in as HTTPS

Trojan's idea is simple: look exactly like HTTPS to a real website. The server has a real certificate and, when a visitor does not know the password, serves a normal web page. It is easy to set up and has low latency, but it needs a domain and a certificate, and plain TLS fingerprints can be recognised by sophisticated filters.

Shadowsocks: simple and quick

Shadowsocks is a lightweight encrypted proxy. It is fast and everywhere, which is why almost every client supports it. Its weakness is that on strictly filtered networks its traffic looks unusual (it does not impersonate any website), so it is best on ordinary networks.

Side-by-side

VMessVLESSTrojanShadowsocks
Built-in encryptionYesNo (uses TLS/REALITY)Via TLSYes
OverheadMediumLowLowLow
Needs domain + certOptionalNo with REALITYYesNo
Looks like HTTPSWith TLS/WSWith REALITY/TLSYesNo
Best forCompatibilityModern defaultSimple HTTPS camouflagePlain networks
Claims about which protocol "still works" in any particular country change month to month and are often anecdotal. Treat blog posts that give exact detection percentages with caution and test on your own network.

What should you pick in NPV Tunnel?

See the full list in supported protocols.

When someone gives you a link, the protocol is the first word, followed by the identity, the server and a list of options:

vless://[email protected]:443?security=reality&flow=xtls-rprx-vision&sni=example.org&pbk=PUBLICKEY#MyServer

You can paste such a link with Import config from Clipboard and NPV Tunnel does the rest.

Performance in everyday terms

Differences are usually small compared with the quality of the server and the route to it. A well-placed server on a good network with the "slower" protocol beats a poor server with the "fastest" one. Protocol choice matters most when a network actively interferes with traffic. In a small router benchmark found during our research, WireGuard had the best throughput and lowest CPU use while Trojan had the lowest latency, with VMess and VLESS in the middle, but that was one device and one firmware, so treat it as a hint, not a rule.

Setting up your own server

Most people use a panel such as 3x-ui or a one-line installer on a small VPS. Whatever you use, set up VLESS with REALITY on port 443, create one UUID per user and keep the server software updated. Then generate a share link or QR code and import it into NPV Tunnel.

Common mistakes

  1. Copying a link with a line break or trailing space.
  2. Using a clock that is wrong by minutes.
  3. Changing the SNI or flow on one side only.
  4. Putting several users on a single UUID, which makes revoking access impossible.

Frequently asked questions

What is the difference between VLESS and VMess?

VMess has built-in encryption and replay protection. VLESS is lighter and relies on TLS or REALITY for encryption.

Do I need a domain for VLESS?

Not with REALITY. A plain TLS setup needs a domain and certificate.

Is Shadowsocks outdated?

It is still fast and widely supported, but on strictly filtered networks it is easier to detect than newer options.

Which protocol should I pick for a new server?

VLESS with REALITY is the common modern choice. Trojan is good if you already have a domain and website.


Keep reading

NPV Tunnel Supported Protocols Explained in Plain English

Every protocol NPV Tunnel supports explained simply: VLESS, VMess, Trojan, Shadowsocks, SS…

Hysteria2 Explained: Why It Is Fast on Bad Networks

Hysteria2 is a QUIC-based protocol supported by NPV Tunnel. Learn how it works, what Bruta…

How to Set Up an SSH Tunnel in NPV Tunnel, Step by Step

Create an SSH tunnel in NPV Tunnel with your own server or a provider account: details you…