Error message

  • Deprecated function: implode(): Passing glue string after array is deprecated. Swap the parameters in drupal_get_feeds() (line 394 of /home/cay45lq1/public_html/includes/common.inc).
  • Deprecated function: The each() function is deprecated. This message will be suppressed on further calls in menu_set_active_trail() (line 2405 of /home/cay45lq1/public_html/includes/menu.inc).

Feed aggregator

New forum topics

I tried the Insta360 Luna vlogging camera — and it’s going to give the DJI Pocket 4 some serious competition

TechRadar News - Fri, 05/22/2026 - 07:00
Insta360 steps out of its 360 camera lane in a major way with its first vlogging camera, the Luna.
Categories: Technology

Amazon has all three of the best MacBooks you can buy on sale for record-low prices — the Air, the Pro, and even the Neo!

TechRadar News - Fri, 05/22/2026 - 06:50
The MacBook Air, Neo, and Pro all have record-low prices at Amazon today thanks to the retailer's Memorial Day sale.
Categories: Technology

GOP senators delay immigration funding. And, what to expect this hurricane season

NPR News Headlines - Fri, 05/22/2026 - 06:49

Congressional Republicans left for recess without passing Trump's top immigration enforcement package. And, forecasters are predicting fewer storms than average for the 2026 hurricane season.

(Image credit: Drew Angerer)

Categories: News

AI-generated code is outpacing every manual remediation model in existence': Nearly all firms admit they have shipped code they know is vulnerable

TechRadar News - Fri, 05/22/2026 - 06:45
Organizations are rushing to push the code live, ignoring the obvious security risks.
Categories: Technology

The aftermath of Trump-Xi summit: comparing U.S. and China announcements

NPR News Headlines - Fri, 05/22/2026 - 06:39

Analysts say a comparison of the readouts issued by the U.S. and China reveals "minor inconsistencies" on issues such as agriculture, tariffs and rare earths. But, experts argue, those differences are not significant.

(Image credit: GREG BAKER)

Categories: News

Microsoft solves case of vanishing Windows 11 desktop — fix is rolling out for blank desktop, taskbar freezes and other flakiness

TechRadar News - Fri, 05/22/2026 - 06:39
Fed up with bits of Windows 11 being flaky of late? Microsoft has fixed bugs that cause a blank desktop, taskbar freezes and more.
Categories: Technology

Could your CEO be the weakest link when it comes to AI security? New study warns execs are 'knowingly bypassing safeguards because the perceived benefits outweigh the risks'

TechRadar News - Fri, 05/22/2026 - 06:35
New research finds 62% of senior leaders use unapproved shadow AI (but only 31% of other workers), prioritizing productivity over compliance.
Categories: Technology

GTA 6 is locked in for November 19, 2026, according to Take-Two Interactive, despite delay rumors — and marketing starts soon

TechRadar News - Fri, 05/22/2026 - 06:32
GTA 6 has been the centerpiece of gamer discussions with hopes of imminent marketing amid delay worries, but answers have been given by Take-Two Interactive.
Categories: Technology

My First Google I/O Left Me Confused: Who Benefits From All This AI?

CNET News - Fri, 05/22/2026 - 06:15
Commentary: I attended my first Google I/O conference this week in Mountain View. And I think I feel confused.
Categories: Technology

Proton VPN review – Swiss privacy pedigree and undeniable security

TechRadar Reviews - Fri, 05/22/2026 - 06:08
How we tested Proton VPNProton VPN review scores

Category

Score

Comments

Total

84 / 100

Powerful, secure, and with privacy at its heart, there's little not to love about Proton VPN. Read more ▼

Price plans & value

8 / 10

One-plan-fits-all does a great job of balancing value and capability. Though it still sits slightly more expensive than some other top VPNs. Read more ▼

Features

7 / 10

Proton VPN is not as feature heavy as other top VPNs, but what it has, works, and is available on almost every platform too. Read more ▼

Server network

10 / 10

Proton VPN has the more servers than almost any other VPN. It has a huge number of locations, with a good global spread, and high-end server technology. Read more

Read all of Proton VPN's review scores ▼

Privacy

10 / 10

Based in Switzerland, with bags of no-log audits to back its privacy claims, Proton goes above and beyond to ensure its VPN gives no reason to doubt that you're browsing privately. Read more ▼

Security

9 / 10

Proton puts every measure in place to ensure your security is absolute while you're browsing. It doesn't yet have post-quantum encryption but it's more than secure than most VPNs in the present day. Read more ▼

Speed

8 / 10

Proton VPN is among the very fastest VPNs we've tested. It's more than capable of handling any home environment. Read more

Unblocking streams

8 / 10

Despite some hiccups, Proton performed well for the majority of our streaming tests. Read more ▼

P2P & Torrenting

5 / 5

Port forwarding support, P2P optimized servers almost anywhere, and a bunch of guidance for beginners all make Proton VPN perfect for torrenting no matter your experience. Read more ▼

Apps & Compatibility

4 / 5

Proton VPN has apps everywhere, with near-perfect feature-parity between platforms. Plus they look great. But, the web extension does deserve some love sometime soon. Read more ▼

Usability

4 / 5

Easy to look at, explained continuously, and offering intuitive access to everything you need, there are few flaws to Proton's apps. Read more ▼

Accessibility

3 / 5

Despite its wealth of language support, Proton's screen reader is too limiting for those who are visually impaired. Read more ▼

Customer support

4 / 5

Proton VPN has detailed guides on a wealth of topics, and easy access to support agents even if they're not the best we've encountered. Read more ▼

Track record

4 / 5

Proton VPN has a faultless record. While an incident with Proton Mail left some users concerned, years of back-to-back no-logs audits, Swiss privacy assurances, and some major infrastructure investments all make Proton VPN among the most trustworthy VPNs. Read more ▼

Proton VPN price plans
  • Proton has a single VPN plan, from $2.99 per month.
  • Lower auto-renewal price increases than almost any other VPN.
  • Proton Unlimited bundles other Proton products with the VPN.

1-month

1-year

2-year

Proton VPN

$9.99

$3.99/month

$2.99/month

Proton VPN Unlimited

$12.99

$9.99/month

$7.99/month

Unlike many top VPNs, Proton VPN doesn’t offer tiered pricing. Instead, there is a single paid plan (alongside the Proton VPN Free product). This plan is offered in three lengths: 1-month, 1-year, and 2-year. The price of the plan drops as the length increases. All of these plans do, however, come with a 10-device limit, much like NordVPN.

We always recommend picking up the two-year plan, since it is the cheapest overall. As with all VPNs, you pay the full cost upfront. Just make sure you turn off auto-renewals, so you’re not stung by unwanted price rises. That said, Proton’s price rises are almost non-existent.

Read more about Proton VPN's price plans ▼

Right now, picking up a 2-year plan costs $2.99/month, paid as $71.76 upfront, and renews at $79.95 every 12 months (or $159.90 over two years). By comparison, NordVPN Basic costs $80.73 for the first two years, then auto-renews at $312.93 for the next two years – and that’s including far fewer features than you’d get with Proton.

NordVPN also charges VAT on top of these costs, making the overall price rise even further both on initial sign-up and at renewal. By comparison, Proton’s price is all you pay; tax is included in the advertised cost, barely a renewal increase, little to worry about.

What's more, it's important to remember that Proton Plus is compared here to all of the other entry-level plans of our recommended VPNs. It comes with features that aren't available with other VPNs unless you go up a price tier. So, Proton VPN is, in fact, far better value than it appears.

@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700&display=swap'); #fv-chart-1766052358326-paz4b5b8o *, #fv-chart-1766052358326-paz4b5b8o *:before, #fv-chart-1766052358326-paz4b5b8o *:after { box-sizing: border-box !important; margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; } #fv-chart-1766052358326-paz4b5b8o { font-family: 'Open Sans', sans-serif !important; } /* Main Wrappers */ #fv-chart-1766052358326-paz4b5b8o { position: relative !important; overflow: visible !important; --riv-primary: #2E6E93; } #fv-chart-1766052358326-paz4b5b8o .fv-inner-wrapper { color: #1F2937 !important; background-color: #ffffff !important; padding: 1.5rem 1.5rem 2rem !important; border-radius: 0.5rem !important; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important; margin: 1rem 0 !important; display: flex !important; flex-direction: column !important; } /* Typography */ #fv-chart-1766052358326-paz4b5b8o .fv-chart-title { font-weight: bold !important; text-align: center !important; margin-bottom: 0.5rem !important; color: #1F2937 !important; font-size: 1.25rem !important; line-height: 1.2 !important; font-family: 'Open Sans', sans-serif !important; text-transform: none !important; } #fv-chart-1766052358326-paz4b5b8o .fv-chart-subhead { font-size: 1rem !important; font-weight: 500 !important; text-align: center !important; margin-bottom: 2rem !important; color: #6B7280 !important; line-height: 1.7 !important; font-family: 'Open Sans', sans-serif !important; display: block !important; text-transform: none !important; } #fv-chart-1766052358326-paz4b5b8o .rv-chart-caption { font-size: 15px !important; color: #6B7280 !important; text-align: center !important; font-style: normal !important; font-weight: normal !important; line-height: 1.7 !important; font-family: 'Open Sans', sans-serif !important; display: block !important; } #fv-chart-1766052358326-paz4b5b8o .sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; } /* Footer */ #fv-chart-1766052358326-paz4b5b8o .fv-bottom-bar { display: flex !important; flex-direction: column !important; align-items: center !important; margin-top: 0.5rem !important; gap: 1rem !important; } #fv-chart-1766052358326-paz4b5b8o .fv-footer-content { text-align: center !important; width: 100% !important; } #fv-chart-1766052358326-paz4b5b8o .fv-logo { display: block !important; margin: 0 auto !important; width: 120px !important; max-width: 120px !important; height: auto !important; object-fit: contain !important; } /* Display Mode Controls */ #fv-chart-1766052358326-paz4b5b8o .fv-dropdown-container { text-align: center !important; margin-bottom: 16px !important; } #fv-chart-1766052358326-paz4b5b8o .fv-dropdown { width: 100% !important; max-width: 350px !important; padding: 8px 12px !important; font-size: 14px !important; line-height: 1.2 !important; border: 2px solid #d1d5db !important; border-radius: 8px !important; background-color: #ffffff !important; color: #374151 !important; cursor: pointer !important; appearance: none !important; background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e") !important; background-position: right 12px center !important; background-repeat: no-repeat !important; background-size: 14px !important; padding-right: 35px !important; font-family: 'Open Sans', sans-serif !important; } #fv-chart-1766052358326-paz4b5b8o .fv-dropdown:hover { border-color: var(--riv-primary) !important; } #fv-chart-1766052358326-paz4b5b8o .fv-carousel-title-controls { display: flex !important; justify-content: space-between !important; align-items: center !important; margin-bottom: 16px !important; width: 100% !important; gap: 12px !important; } #fv-chart-1766052358326-paz4b5b8o .fv-carousel-nav-btn { background: transparent !important; border: 1px solid #d1d5db !important; border-radius: 6px !important; padding: 6px 10px !important; cursor: pointer !important; font-size: 13px !important; color: #6b7280 !important; display: flex !important; align-items: center !important; gap: 4px !important; font-family: 'Open Sans', sans-serif !important; } #fv-chart-1766052358326-paz4b5b8o .fv-carousel-nav-btn:hover { border-color: #9ca3af !important; } #fv-chart-1766052358326-paz4b5b8o .fv-carousel-counter { font-size: 14px !important; color: #6b7280 !important; text-align: center !important; margin-top: 1rem !important; } /* Legend */ #fv-chart-1766052358326-paz4b5b8o .fv-legend { display: flex !important; justify-content: center !important; flex-wrap: wrap !important; gap: 8px 16px !important; margin: 0 !important; padding: 0 !important; margin-top: 1rem !important; } #fv-chart-1766052358326-paz4b5b8o .fv-legend-item { display: flex !important; align-items: center !important; gap: 6px !important; font-size: 14px !important; color: #4B5563 !important; } #fv-chart-1766052358326-paz4b5b8o .fv-legend-color { width: 12px !important; height: 12px !important; border-radius: 3px !important; } /* Chart Core Styles */ #fv-chart-1766052358326-paz4b5b8o .fv-benchmark-group { margin-bottom: 1rem !important; } #fv-chart-1766052358326-paz4b5b8o .fv-benchmark-title { font-size: 18px !important; font-weight: 600 !important; margin-bottom: 16px !important; margin-top: 0 !important; padding: 0 !important; text-align: center !important; color: var(--riv-primary) !important; flex: 1 !important; min-width: 0 !important; font-family: 'Open Sans', sans-serif !important; line-height: 1.3 !important; text-transform: none !important; } #fv-chart-1766052358326-paz4b5b8o .fv-bar-row, #fv-chart-1766052358326-paz4b5b8o .fv-stacked-product { display: flex !important; align-items: center !important; width: 100% !important; margin-bottom: 0.75rem !important; } #fv-chart-1766052358326-paz4b5b8o .fv-bar-label { width: 150px !important; flex-shrink: 0 !important; font-size: 14px !important; color: #4B5563 !important; padding-right: 10px !important; text-align: right !important; font-weight: 500 !important; display: block !important; } #fv-chart-1766052358326-paz4b5b8o .fv-bar-container { flex-grow: 1 !important; background-color: #E5E7EB !important; border-radius: 4px !important; height: 25px !important; border: 1px solid #D1D5DB !important; position: relative !important; display: flex !important; align-items: center !important; } #fv-chart-1766052358326-paz4b5b8o .fv-bar { height: 100% !important; border-radius: 3px !important; display: flex !important; align-items: center !important; transition: opacity 0.2s ease, width 0.8s ease-out !important; } #fv-chart-1766052358326-paz4b5b8o .fv-bar:hover { opacity: 0.8 !important; } #fv-chart-1766052358326-paz4b5b8o .fv-bar-inner-content { display: flex !important; justify-content: space-between !important; align-items: center !important; width: 100% !important; height: 100% !important; padding: 0 8px !important; color: white !important; font-size: 14px !important; font-weight: bold !important; text-shadow: 1px 1px 1px rgba(0,0,0,0.3) !important; overflow: hidden !important; } #fv-chart-1766052358326-paz4b5b8o .fv-bar-inner-label { white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; padding-right: 8px !important; } #fv-chart-1766052358326-paz4b5b8o .fv-bar-inner-value { flex-shrink: 0 !important; } #fv-chart-1766052358326-paz4b5b8o .fv-bar-value-outside { padding-left: 8px !important; font-size: 14px !important; font-weight: bold !important; color: #4B5563 !important; white-space: nowrap !important; } #fv-chart-1766052358326-paz4b5b8o .fv-bar-label.fv-primary-product { font-weight: bold !important; color: var(--riv-primary) !important; } /* Stacked Bar */ #fv-chart-1766052358326-paz4b5b8o .fv-stacked-bar { display: flex !important; overflow: hidden !important; } #fv-chart-1766052358326-paz4b5b8o .fv-stacked-segment { height: 100% !important; display: flex !important; align-items: center !important; justify-content: flex-end !important; padding-right: 8px !important; border-right: 1px solid rgba(255,255,255,0.3) !important; } #fv-chart-1766052358326-paz4b5b8o .fv-stacked-segment:last-child { border-right: none !important; } #fv-chart-1766052358326-paz4b5b8o .fv-segment-value { font-size: 14px !important; font-weight: bold !important; color: white !important; text-shadow: 1px 1px 1px rgba(0,0,0,0.3) !important; } /* Grouped Bar */ #fv-chart-1766052358326-paz4b5b8o .fv-grouped-bar-product { display: flex !important; flex-direction: column !important; width: 100% !important; margin-bottom: 1.25rem !important; } #fv-chart-1766052358326-paz4b5b8o .fv-grouped-product-title-wrapper { padding-left: 150px !important; } #fv-chart-1766052358326-paz4b5b8o .fv-grouped-product-title { width: 100% !important; text-align: left !important; padding-right: 0 !important; margin-bottom: 0.5rem !important; font-weight: 700 !important; font-size: 14px !important; color: #4B5563 !important; text-transform: none !important; } #fv-chart-1766052358326-paz4b5b8o .fv-bar-cluster { width: 100% !important; flex-grow: 1 !important; display: flex !important; flex-direction: column !important; } #fv-chart-1766052358326-paz4b5b8o .fv-bar-cluster .fv-bar-row { margin-bottom: 3px !important; } #fv-chart-1766052358326-paz4b5b8o .fv-bar-cluster .fv-bar-container { height: 20px !important; } /* Line Chart Grid */ #fv-chart-1766052358326-paz4b5b8o .riv-grid line { stroke: #D1D5DB !important; stroke-dasharray: 3 3 !important; } /* X-Axis */ #fv-chart-1766052358326-paz4b5b8o .fv-x-axis-wrapper { display: flex !important; width: 100% !important; margin-top: 0.5rem !important; } #fv-chart-1766052358326-paz4b5b8o .fv-x-axis-label-space { width: 150px !important; padding-right: 10px !important; flex-shrink: 0 !important; } #fv-chart-1766052358326-paz4b5b8o .fv-x-axis-chart-space { flex-grow: 1 !important; padding-right: 8px !important; } #fv-chart-1766052358326-paz4b5b8o .fv-x-axis-wrapper.fv-grouped-x-axis { margin-left: 0 !important; } #fv-chart-1766052358326-paz4b5b8o .fv-x-axis-line { border-top: 1px solid #D1D5DB !important; } #fv-chart-1766052358326-paz4b5b8o .fv-x-axis-ticks { display: flex !important; justify-content: space-between !important; padding-top: 4px !important; font-size: 13px !important; color: #6B7280 !important; } #fv-chart-1766052358326-paz4b5b8o .fv-x-axis-ticks span { position: relative !important; } #fv-chart-1766052358326-paz4b5b8o .fv-x-axis-ticks span::before { content: '' !important; position: absolute !important; top: -6px !important; left: 50% !important; transform: translateX(-50%) !important; width: 2px !important; height: 4px !important; background-color: #D1D5DB !important; border-radius: 1px !important; } #fv-chart-1766052358326-paz4b5b8o .fv-x-axis-unit { text-align: center !important; font-size: 14px !important; color: #6B7280 !important; margin-top: 8px !important; display: block !important; } #fv-chart-1766052358326-paz4b5b8o .fv-x-axis-title { text-align: center !important; font-size: 15px !important; color: #6B7280 !important; margin-top: 8px !important; margin-bottom: 16px !important; line-height: 1.5 !important; padding: 0 1rem !important; display: block !important; font-weight: bold !important; } #fv-chart-1766052358326-paz4b5b8o .fv-y-axis-title { font-size: 15px !important; color: #6B7280 !important; line-height: 1.5 !important; text-align: left !important; padding-left: 5.83% !important; /* Aligns with Y-axis line inside SVG (35/600) */ margin-bottom: 4px !important; display: block !important; font-weight: bold !important; } /* Mobile / Forced Mobile View */ #fv-chart-1766052358326-paz4b5b8o.mobile-view .fv-pie-container { flex-direction: column !important; gap: 1rem !important; } #fv-chart-1766052358326-paz4b5b8o.mobile-view .fv-grouped-product-title-wrapper { padding-left: 0 !important; } #fv-chart-1766052358326-paz4b5b8o.mobile-view .fv-bar-row, #fv-chart-1766052358326-paz4b5b8o.mobile-view .fv-stacked-product, #fv-chart-1766052358326-paz4b5b8o.mobile-view .fv-grouped-bar-product { flex-direction: column !important; align-items: flex-start !important; margin-bottom: 1.25rem !important; } #fv-chart-1766052358326-paz4b5b8o.mobile-view .fv-bar-label, #fv-chart-1766052358326-paz4b5b8o.mobile-view .fv-grouped-product-title { width: 100% !important; text-align: left !important; padding-right: 0 !important; margin-bottom: 0.25rem !important; font-size: 14px !important; font-weight: 700 !important; } #fv-chart-1766052358326-paz4b5b8o.mobile-view .fv-bar-container, #fv-chart-1766052358326-paz4b5b8o.mobile-view .fv-bar-cluster { width: 100% !important; } #fv-chart-1766052358326-paz4b5b8o.mobile-view .fv-x-axis-wrapper { margin-left: 0 !important; } #fv-chart-1766052358326-paz4b5b8o.mobile-view .fv-x-axis-label-space { display: none !important; } #fv-chart-1766052358326-paz4b5b8o.mobile-view .fv-x-axis-chart-space { padding-right: 0 !important; } #fv-chart-1766052358326-paz4b5b8o.mobile-view .fv-benchmark-title { font-size: 16px !important; } #fv-chart-1766052358326-paz4b5b8o.mobile-view .fv-logo { width: 60px !important; max-width: 60px !important; } #fv-chart-1766052358326-paz4b5b8o.mobile-view .fv-carousel-nav-btn { padding: 6px 8px !important; font-size: 11px !important; } @media (max-width: 500px) { #fv-chart-1766052358326-paz4b5b8o .fv-pie-container { flex-direction: column !important; gap: 1rem !important; } #fv-chart-1766052358326-paz4b5b8o .fv-grouped-product-title-wrapper { padding-left: 0 !important; } #fv-chart-1766052358326-paz4b5b8o .fv-bar-row, #fv-chart-1766052358326-paz4b5b8o .fv-stacked-product { flex-direction: column !important; align-items: flex-start !important; margin-bottom: 1.25rem !important; } #fv-chart-1766052358326-paz4b5b8o .fv-bar-label:not(.fv-grouped-product-title) { width: 100% !important; text-align: left !important; padding-right: 0 !important; margin-bottom: 0.25rem !important; font-size: 14px !important; font-weight: 700 !important; } #fv-chart-1766052358326-paz4b5b8o .fv-bar-container { width: 100% !important; } #fv-chart-1766052358326-paz4b5b8o .fv-x-axis-wrapper:not(.fv-grouped-x-axis) { margin-left: 0 !important; } #fv-chart-1766052358326-paz4b5b8o .fv-x-axis-label-space:not(.fv-grouped-x-axis .fv-x-axis-label-space) { display: none !important; } #fv-chart-1766052358326-paz4b5b8o .fv-x-axis-chart-space { padding-right: 0 !important; } #fv-chart-1766052358326-paz4b5b8o .fv-benchmark-title { font-size: 16px !important; } #fv-chart-1766052358326-paz4b5b8o .fv-logo { width: 60px !important; max-width: 60px !important; } #fv-chart-1766052358326-paz4b5b8o .fv-carousel-nav-btn { padding: 6px 8px !important; font-size: 11px !important; } #fv-chart-1766052358326-paz4b5b8o .fv-y-axis-title { padding-left: 5% !important; /* (30/600) for mobile view */ } #fv-chart-1766052358326-paz4b5b8o.fv-contains-line-chart .fv-footer-content { margin-left: -1rem !important; margin-right: -1rem !important; } } { "@context": "https://schema.org", "@type": "Dataset", "name": "Total cost of cheapest 2-year plan", "description": "All prices (from December 2025) are before tax", "creator": { "@type": "Organization", "name": "TechRadar", "logo": "https://cdn.mos.cms.futurecdn.net/dAwPEozB9GMMhAngdFJTHb.png" }, "isAccessibleForFree": true, "dateCreated": "2025-12-18T10:05:58.326Z", "citation": "Proton VPN, while at $2.99 per month, is relatively cheap next to ExpressVPN and NordVPN's entry level plans. Important to remember that Proton VPN Plus has more features than these other VPNs at these price tiers too.", "keywords": [ "NordVPN Basic", "Surfshark Starter", "ExpressVPN Basic", "Proton VPN Plus", "Total price", "benchmark", "comparison", "performance", "review", "TechRadar" ], "measurementTechnique": "Performance Benchmarking", "variableMeasured": [ { "@type": "PropertyValue", "name": "NordVPN Basic – Total price", "value": 80.73, "unitText": "USD" }, { "@type": "PropertyValue", "name": "Surfshark Starter – Total price", "value": 53.73, "unitText": "USD" }, { "@type": "PropertyValue", "name": "ExpressVPN Basic – Total price", "value": 97.72, "unitText": "USD" }, { "@type": "PropertyValue", "name": "Proton VPN Plus – Total price", "value": 71.76, "unitText": "USD" } ]} Total cost of cheapest 2-year plan

All prices (from December 2025) are before tax

Total price NordVPN Basic 80.73 Surfshark Starter 53.73 ExpressVPN Basic 97.72 Proton VPN Plus 71.76 0255075100 USD Total price Data ProductValue (USD) NordVPN Basic 80.73 Surfshark Starter 53.73 ExpressVPN Basic 97.72 Proton VPN Plus 71.76 Proton VPN, while at $2.99 per month, is relatively cheap next to ExpressVPN and NordVPN's entry level plans. Important to remember that Proton VPN Plus has more features than these other VPNs at these price tiers too. (function() { function initialize() { var chartWrapper = document.getElementById('fv-chart-1766052358326-paz4b5b8o'); if (!chartWrapper) { console.error('Chart wrapper with ID fv-chart-1766052358326-paz4b5b8o not found.'); return; } function animateBars(chartElement) { if (!chartElement) return; var bars = chartElement.querySelectorAll('.fv-bar, .fv-stacked-segment'); bars.forEach(function(bar, index) { var targetWidth = bar.dataset.targetWidth; if (targetWidth === undefined) return; // Bars start at width: 0% in HTML, so we just animate them setTimeout(function() { bar.style.width = targetWidth + '%'; }, index * 50 + 100); }); } function animateLineChart(chartElement) { if (!chartElement) return; var lineSvg = chartElement.querySelector('svg'); if (!lineSvg) return; var paths = lineSvg.querySelectorAll('.riv-line-path'); paths.forEach(function(p, i) { if (typeof p.getTotalLength === 'function') { var len = p.getTotalLength(); p.style.transition = 'none'; p.style.strokeDasharray = len; p.style.strokeDashoffset = len; p.getBoundingClientRect(); setTimeout(function() { p.style.transition = 'stroke-dashoffset 1s ease-out ' + (i * 0.1) + 's'; p.style.strokeDashoffset = '0'; }, 100); } }); var dots = lineSvg.querySelectorAll('.riv-dot'); dots.forEach(function(dot, i) { dot.style.opacity = '0'; setTimeout(function() { dot.style.transition = 'opacity 0.3s ease'; dot.style.opacity = '1'; }, 500 + i * 10); }); } var charts = chartWrapper.querySelectorAll('.fv-chart-item'); // Animate initial view if ("All Charts" === "All Charts") { charts.forEach(function(chart) { var chartType = chart.dataset.chartType; if (chartType === 'Line') { animateLineChart(chart); } else if (chartType !== 'Pie') { animateBars(chart); } }); } else if (charts.length > 0) { var firstChart = charts[0]; var firstChartType = firstChart.dataset.chartType; if (firstChartType === 'Line') { animateLineChart(firstChart); } else if (firstChartType !== 'Pie') { animateBars(firstChart); } } if (charts.length > 1 && "All Charts" !== "All Charts") { var currentChartIndex = 0; var subheadEl = chartWrapper.querySelector('.fv-chart-subhead'); var captionEl = chartWrapper.querySelector('.rv-chart-caption'); var placeholderSubhead = "Subhead to describe the test and what's being measured and why"; var placeholderCaption = "Add your caption to explain the data, the learnings and the key takeaways of the data being visualized"; var globalSubheadJSON = "All prices (from December 2025) are before tax"; var globalCaptionJSON = "Proton VPN, while at $2.99 per month, is relatively cheap next to ExpressVPN and NordVPN's entry level plans. Important to remember that Proton VPN Plus has more features than these other VPNs at these price tiers too."; var globalSubhead = globalSubheadJSON === placeholderSubhead ? '' : globalSubheadJSON; var globalCaption = globalCaptionJSON === placeholderCaption ? '' : globalCaptionJSON; var subheadOverrides = {}; var captionOverrides = {}; var chartInfo = [{"id":"bar-Total price","title":"Total price"}]; var captionOverrideKeys = Object.keys(captionOverrides); var singleCaptionOverrideValue = captionOverrideKeys.length === 1 ? captionOverrides[captionOverrideKeys[0]] : null; if (singleCaptionOverrideValue === placeholderCaption) { singleCaptionOverrideValue = ''; } function showChart(index) { if (index < 0 || index >= charts.length) return; charts.forEach(function(chart, i) { chart.style.display = i === index ? 'block' : 'none'; }); currentChartIndex = index; var activeChart = charts[index]; var chartType = activeChart.dataset.chartType; if (chartType === 'Line') { animateLineChart(activeChart); } else if (chartType !== 'Pie') { animateBars(activeChart); } var activeChartId = chartInfo[index].id; if (subheadEl) { var subheadContent = (subheadOverrides[activeChartId] !== undefined) ? (subheadOverrides[activeChartId] === placeholderSubhead ? '' : subheadOverrides[activeChartId]) : globalSubhead; subheadEl.innerHTML = subheadContent; } if (captionEl) { var captionContent; if (captionOverrides[activeChartId] !== undefined) { captionContent = captionOverrides[activeChartId] === placeholderCaption ? '' : captionOverrides[activeChartId]; } else if (singleCaptionOverrideValue !== null) { captionContent = singleCaptionOverrideValue; } else { captionContent = globalCaption; } captionEl.innerHTML = captionContent; var captionContainer = captionEl.closest('.fv-footer-content'); if (captionContainer) { var hasContent = captionContent && captionContent.trim() !== ''; var shouldShow = hasContent || (captionContainer.parentElement && captionContainer.parentElement.querySelector('.fv-logo')); if (captionContainer.parentElement) captionContainer.parentElement.style.display = shouldShow ? 'flex' : 'none'; captionContainer.style.display = hasContent ? 'block' : 'none'; } } var dropdown = chartWrapper.querySelector('.fv-dropdown'); if (dropdown) dropdown.value = index; var carouselTitle = chartWrapper.querySelector('.fv-carousel-title-controls .fv-benchmark-title'); if (carouselTitle) carouselTitle.innerHTML = chartInfo[index].title; var counter = chartWrapper.querySelector('.fv-carousel-counter'); if (counter) counter.textContent = (index + 1) + ' of ' + charts.length; } var dropdown = chartWrapper.querySelector('.fv-dropdown'); if (dropdown) dropdown.addEventListener('change', function(e) { showChart(parseInt(e.target.value)) }); var prevBtn = chartWrapper.querySelector('.fv-carousel-nav-btn.prev'); if (prevBtn) prevBtn.addEventListener('click', function() { showChart((currentChartIndex - 1 + charts.length) % charts.length) }); var nextBtn = chartWrapper.querySelector('.fv-carousel-nav-btn.next'); if (nextBtn) nextBtn.addEventListener('click', function() { showChart((currentChartIndex + 1) % charts.length) }); } chartWrapper.querySelectorAll('.riv-line-legend').forEach(function(legend) { var chartId = legend.dataset.chart; var chart = document.getElementById(chartId); // Uses page-unique ID if (!chart) return; var lines = chart.querySelectorAll('.riv-line-path'); var dots = chart.querySelectorAll('.riv-dot'); legend.querySelectorAll('.riv-legend-item').forEach(function(item) { var productName = item.dataset.product; var line = chart.querySelector('.riv-line-path[data-product="' + productName + '"]'); var productDots = chart.querySelectorAll('.riv-dot[data-product="' + productName + '"]'); var highlight = function() { if (legend.querySelector('.isolated')) return; lines.forEach(function(l) { l.style.opacity = '0.3' }); dots.forEach(function(d) { d.style.opacity = '0.3' }); if (line) line.style.opacity = '1'; productDots.forEach(function(d) { d.style.opacity = '1' }); }; var clearHighlight = function() { if (legend.querySelector('.isolated')) return; lines.forEach(function(l) { l.style.opacity = '1' }); dots.forEach(function(d) { d.style.opacity = '1' }); }; var toggleIsolate = function() { var isIsolated = item.classList.contains('isolated'); legend.querySelectorAll('.riv-legend-item').forEach(function(i) { i.classList.remove('isolated') }); if (isIsolated) { lines.forEach(function(l) { l.style.opacity = '1' }); dots.forEach(function(d) { d.style.opacity = '1' }); } else { item.classList.add('isolated'); lines.forEach(function(l) { l.style.opacity = '0.3' }); dots.forEach(function(d) { d.style.opacity = '0.3' }); if (line) line.style.opacity = '1'; productDots.forEach(function(d) { d.style.opacity = '1' }); } }; item.addEventListener('mouseenter', highlight); item.addEventListener('focus', highlight); item.addEventListener('mouseleave', clearHighlight); item.addEventListener('blur', clearHighlight); item.addEventListener('click', toggleIsolate); item.addEventListener('keydown', function(e) { if (e.key === 'Enter' || e.key === ' ') { e.preventDefault(); toggleIsolate(); } }); }); }); } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initialize); } else { initialize(); } function sendMessageToParentWindow(typeOfMessage, message = null) { let url = (window.location.ancestorOrigins && window.location.ancestorOrigins.length > 0) ? window.location.ancestorOrigins[0] : '*'; window.parent.postMessage({ analytics: { ...message } }, url); } sendMessageToParentWindow('analytics', { type: "fv-loaded", timestamp: new Date().toISOString() }); })();

One option you do have with Proton is to upgrade to its Proton Unlimited plan. This plan gives you Proton VPN, and all its features, but also Proton Mail, Pass, Calendar, and Drive. So, if you want added security for your emails, photo storage, or personal events, you can get it all bundled into one package.

Proton Unlimited costs only a fraction more than NordVPN’s super-premium Prime Plan. That's $191.76 for two years compared to $186.03. What’s more, you’re not stung with the huge price increase you’d face with NordVPN, and you can access a whole suite of products.

What's quite astounding is that a single, on-off month of Proton Unlimited is actually cheaper than a one-month plan from any other of the best VPNs. For only $12.99, you get the full Proton experience, including all its apps and features.

For comparison, 1 month of NordVPN Basic (which gives just the VPN and basic Threat Protection) is the same price, while one month of Surfshark Starter is even more at $15.45.

So, for one month of security, Proton will struggle to be beaten. If you don’t need the additional Drive, Pass, Mail, and Calendar apps, Proton VPN for 1 month is only $9.99 with all features included too, so you’re always going to save compared to even its biggest rivals.

All of this sits Proton VPN somewhere in the middle for value. At regular two-year pricing it's in the same ballpark as NordVPN and ExpressVPN. It's only Surfshark that is significantly cheaper out of our top choices.

Score: 8/10

Features: What can Proton VPN do?
  • Ad blocking from NetShield is excellent.
  • Profiles are a very handy feature.
  • Fewer tangible features than other top VPNs.

Proton’s one-price-gives-all approach means you get the full suite of VPN features straight away. That said, it doesn’t offer a great deal in terms of add-ons.

NetShield is the primary example of this. As Proton VPN’s biggest additional feature, NetShield blocks your device from ads, trackers, malware sites, and phishing sites. It works at a system level, meaning no additional installs for browsers or apps; they’re all automatically protected.

It is highly effective at blocking ads online. However, in our most recent testing we noticed a drop off in performance concerning the blocking of phishing and malware sites.

Testing it across Windows, Android, and iOS, we never saw it impact our battery life, nor did we encounter issues with most apps or websites despite the warnings Proton gives that problems may occur.

NetShield is easy to set up, available on all devices, and super effective at ad blocking (Image credit: Future)

Read more about Proton VPN's features ▼

The only sites that struggled were streaming sites. VPN ad-blockers and streaming sites are known enemies, especially when the streaming site is regional and relies on ads to run. We’ll cover this in more depth in the unblocking section later.

Profiles are another key tool in Proton’s arsenal. While some VPNs have functionality to auto-connect on using specific apps or WiFi connections, Profiles goes a step further.

Proton’s solution allows users to create multiple, uniquely tailored settings combinations, 'profiles', for when using the VPN in specific situations. The profiles can be tailored to according to:

  • Server type (Standard, Secure Core, P2P)
  • Country selection
  • Whether NetShield is turned on or off
  • Whether port forwarding is turned on or off
  • What protocol you use (WireGuard, Stealth, OpenVPN)
  • What NAT type

It’s also got what Proton calls ‘Connect and Go’, which allows you to pick an app or website that loads automatically when you turn on your profile.

In testing, we set up a ‘US Streaming’ profile. We used WireGuard UDP and turned NetShield off to avoid ad-blocker issues, and auto-loaded Peacock so we could get straight to watching shows. It worked flawlessly every time.

Usefully, the profiles you create also appear on Proton’s mobile widgets if you’ve connected to them recently. That means you don’t even need to enter the app to get streaming if you’re on the go and want to save time.

On desktop, you can also pin any profile you create to the top of your recents list.

I really like Proton VPN's profiles. They're easily accessible, work flawlessly, and supremely helpful, top marks!

Proton recently added "Exclude locations" for Android (allowing users to blacklist specific cities from "Quick Connect") and a "Discreet Icon" feature, which lets users hide the VPN app as a decoy (e.g., a calculator) to bypass physical device inspections.

Profiles is super-customizable, easily accessed, and never failed to connect exactly how we wanted it (Image credit: Future)

The final unique aspect of Proton VPN’s experience is VPN Accelerator. It supposedly increases performance by up to 400%.

We’ll get into the results of that later, but it works by splitting the processing needed to handle VPN traffic across multiple processors rather than just one.

This reduces the risk of overload to the processor, which would impact performance and result in reduced speeds for a user. It's on automatically for paid Proton VPN users and it’s unavailable for those on the free plan. We recommend leaving it that way to ensure the best speeds.

That's it for Proton's features, and, while it's not a lot, as I say, it functions well, and there are plenty of 'added value' features on other VPNs that don't.

I'd like to see Proton offer a little more with its VPN going forward but, if all you need is a VPN, then you shouldn't have any complaints.

Score: 7/10

Server network and locations
  • Second-most countries and locations offered of any tested VPN
  • The most locations of any tested VPN in Asia and Africa.
  • Fewer locations in the Americas and Oceania.

Proton VPN offers the second-largest number of total locations of any VPN we tested (188, tied with ExpressVPN), and the most countries covered (145). Only NordVPN, with 211 locations, offers more.

While the number of locations and countries can be a good indicator of a provider’s spread, it’s never perfect. Often the global spread of these servers can be more telling.

Of all the VPNs we test, Proton VPN has the most locations in Asia (48) and Africa (31). By comparison, NordVPN offers 41 Asian locations and 21 African ones.

However, Proton scores lower in North America (39), South America (10), and Oceania (7). Its 53 European locations put Proton slightly below average here too – with the likes of NordVPN, Surfshark, and ExpressVPN offering 54, 54, and 58 locations in the region, respectively.

Read more about Proton VPN's server network ▼

It's important to put that in context, though. Proton company mission is to provide private and secure internet access to all, and that's very much reflected in the server spread of its VPN network.

While it might not have as big a concentration in certain areas – mainly North American and Europe Proton makes sure its product is available to as may parts of the globe as possible. That also means it can open up servers and provide free access in times of trouble for local people.

Proton has regularly become a popular choice for people during periods of heightened internet censorship. Recently, Proton recorded an 8,000% increase in sign-ups from people in Uganda during the country's elections and the associated internet shutdown. The company also recorded a spike in interest in Argentina after two popular streaming platforms were blocked.

That's a unique and laudable pillar of Proton VPN identity. It's a great reason to choose Proton if you live in these areas of the world or your likely to travel to them for work. These are also areas where internet restrictions can be toughest, and present a very immediate need for privacy software.

It's also important to realize that Proton has a large number of servers in its network and that makes it good for handling the ebbs and flows of capacity needs.

Proton’s total number of servers currently sits at nearly 20,000 (19,704 at the time of our latest research). This is not only a huge jump from the 5,000 Proton claimed to have back in June 2024, but also puts the VPN provider far in advance of almost any other.

The more servers a provider has in total, the less likely your connection is to be impacted by excessive server load which, in turn, can lead to reduced download speeds and increased latency or jitter. Those are both things to be avoided if you're looking for a gaming VPN or streaming VPN with consistent, high-speed connections the ideal.

Among Proton’s many locations are some virtual locations. Using virtual servers is common among even the top VPNs, but it’s refreshing to see Proton’s level of transparency surrounding the matter.

@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700&display=swap'); #fv-chart-1766053504798-bilbvhy0u *, #fv-chart-1766053504798-bilbvhy0u *:before, #fv-chart-1766053504798-bilbvhy0u *:after { box-sizing: border-box !important; margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; } #fv-chart-1766053504798-bilbvhy0u { font-family: 'Open Sans', sans-serif !important; } /* Main Wrappers */ #fv-chart-1766053504798-bilbvhy0u { position: relative !important; overflow: visible !important; --riv-primary: #2E6E93; } #fv-chart-1766053504798-bilbvhy0u .fv-inner-wrapper { color: #1F2937 !important; background-color: #ffffff !important; padding: 1.5rem 1.5rem 2rem !important; border-radius: 0.5rem !important; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important; margin: 1rem 0 !important; display: flex !important; flex-direction: column !important; } /* Typography */ #fv-chart-1766053504798-bilbvhy0u .fv-chart-title { font-weight: bold !important; text-align: center !important; margin-bottom: 0.5rem !important; color: #1F2937 !important; font-size: 1.25rem !important; line-height: 1.2 !important; font-family: 'Open Sans', sans-serif !important; text-transform: none !important; } #fv-chart-1766053504798-bilbvhy0u .fv-chart-subhead { font-size: 1rem !important; font-weight: 500 !important; text-align: center !important; margin-bottom: 2rem !important; color: #6B7280 !important; line-height: 1.7 !important; font-family: 'Open Sans', sans-serif !important; display: block !important; text-transform: none !important; } #fv-chart-1766053504798-bilbvhy0u .rv-chart-caption { font-size: 15px !important; color: #6B7280 !important; text-align: center !important; font-style: normal !important; font-weight: normal !important; line-height: 1.7 !important; font-family: 'Open Sans', sans-serif !important; display: block !important; } #fv-chart-1766053504798-bilbvhy0u .sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; } /* Footer */ #fv-chart-1766053504798-bilbvhy0u .fv-bottom-bar { display: flex !important; flex-direction: column !important; align-items: center !important; margin-top: 0.5rem !important; gap: 1rem !important; } #fv-chart-1766053504798-bilbvhy0u .fv-footer-content { text-align: center !important; width: 100% !important; } #fv-chart-1766053504798-bilbvhy0u .fv-logo { display: block !important; margin: 0 auto !important; width: 120px !important; max-width: 120px !important; height: auto !important; object-fit: contain !important; } /* Display Mode Controls */ #fv-chart-1766053504798-bilbvhy0u .fv-dropdown-container { text-align: center !important; margin-bottom: 16px !important; } #fv-chart-1766053504798-bilbvhy0u .fv-dropdown { width: 100% !important; max-width: 350px !important; padding: 8px 12px !important; font-size: 14px !important; line-height: 1.2 !important; border: 2px solid #d1d5db !important; border-radius: 8px !important; background-color: #ffffff !important; color: #374151 !important; cursor: pointer !important; appearance: none !important; background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e") !important; background-position: right 12px center !important; background-repeat: no-repeat !important; background-size: 14px !important; padding-right: 35px !important; font-family: 'Open Sans', sans-serif !important; } #fv-chart-1766053504798-bilbvhy0u .fv-dropdown:hover { border-color: var(--riv-primary) !important; } #fv-chart-1766053504798-bilbvhy0u .fv-carousel-title-controls { display: flex !important; justify-content: space-between !important; align-items: center !important; margin-bottom: 16px !important; width: 100% !important; gap: 12px !important; } #fv-chart-1766053504798-bilbvhy0u .fv-carousel-nav-btn { background: transparent !important; border: 1px solid #d1d5db !important; border-radius: 6px !important; padding: 6px 10px !important; cursor: pointer !important; font-size: 13px !important; color: #6b7280 !important; display: flex !important; align-items: center !important; gap: 4px !important; font-family: 'Open Sans', sans-serif !important; } #fv-chart-1766053504798-bilbvhy0u .fv-carousel-nav-btn:hover { border-color: #9ca3af !important; } #fv-chart-1766053504798-bilbvhy0u .fv-carousel-counter { font-size: 14px !important; color: #6b7280 !important; text-align: center !important; margin-top: 1rem !important; } /* Legend */ #fv-chart-1766053504798-bilbvhy0u .fv-legend { display: flex !important; justify-content: center !important; flex-wrap: wrap !important; gap: 8px 16px !important; margin: 0 !important; padding: 0 !important; margin-top: 1rem !important; } #fv-chart-1766053504798-bilbvhy0u .fv-legend-item { display: flex !important; align-items: center !important; gap: 6px !important; font-size: 14px !important; color: #4B5563 !important; } #fv-chart-1766053504798-bilbvhy0u .fv-legend-color { width: 12px !important; height: 12px !important; border-radius: 3px !important; } /* Chart Core Styles */ #fv-chart-1766053504798-bilbvhy0u .fv-benchmark-group { margin-bottom: 1rem !important; } #fv-chart-1766053504798-bilbvhy0u .fv-benchmark-title { font-size: 18px !important; font-weight: 600 !important; margin-bottom: 16px !important; margin-top: 0 !important; padding: 0 !important; text-align: center !important; color: var(--riv-primary) !important; flex: 1 !important; min-width: 0 !important; font-family: 'Open Sans', sans-serif !important; line-height: 1.3 !important; text-transform: none !important; } #fv-chart-1766053504798-bilbvhy0u .fv-bar-row, #fv-chart-1766053504798-bilbvhy0u .fv-stacked-product { display: flex !important; align-items: center !important; width: 100% !important; margin-bottom: 0.75rem !important; } #fv-chart-1766053504798-bilbvhy0u .fv-bar-label { width: 150px !important; flex-shrink: 0 !important; font-size: 14px !important; color: #4B5563 !important; padding-right: 10px !important; text-align: right !important; font-weight: 500 !important; display: block !important; } #fv-chart-1766053504798-bilbvhy0u .fv-bar-container { flex-grow: 1 !important; background-color: #E5E7EB !important; border-radius: 4px !important; height: 25px !important; border: 1px solid #D1D5DB !important; position: relative !important; display: flex !important; align-items: center !important; } #fv-chart-1766053504798-bilbvhy0u .fv-bar { height: 100% !important; border-radius: 3px !important; display: flex !important; align-items: center !important; transition: opacity 0.2s ease, width 0.8s ease-out !important; } #fv-chart-1766053504798-bilbvhy0u .fv-bar:hover { opacity: 0.8 !important; } #fv-chart-1766053504798-bilbvhy0u .fv-bar-inner-content { display: flex !important; justify-content: space-between !important; align-items: center !important; width: 100% !important; height: 100% !important; padding: 0 8px !important; color: white !important; font-size: 14px !important; font-weight: bold !important; text-shadow: 1px 1px 1px rgba(0,0,0,0.3) !important; overflow: hidden !important; } #fv-chart-1766053504798-bilbvhy0u .fv-bar-inner-label { white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; padding-right: 8px !important; } #fv-chart-1766053504798-bilbvhy0u .fv-bar-inner-value { flex-shrink: 0 !important; } #fv-chart-1766053504798-bilbvhy0u .fv-bar-value-outside { padding-left: 8px !important; font-size: 14px !important; font-weight: bold !important; color: #4B5563 !important; white-space: nowrap !important; } #fv-chart-1766053504798-bilbvhy0u .fv-bar-label.fv-primary-product { font-weight: bold !important; color: var(--riv-primary) !important; } /* Stacked Bar */ #fv-chart-1766053504798-bilbvhy0u .fv-stacked-bar { display: flex !important; overflow: hidden !important; } #fv-chart-1766053504798-bilbvhy0u .fv-stacked-segment { height: 100% !important; display: flex !important; align-items: center !important; justify-content: flex-end !important; padding-right: 8px !important; border-right: 1px solid rgba(255,255,255,0.3) !important; } #fv-chart-1766053504798-bilbvhy0u .fv-stacked-segment:last-child { border-right: none !important; } #fv-chart-1766053504798-bilbvhy0u .fv-segment-value { font-size: 14px !important; font-weight: bold !important; color: white !important; text-shadow: 1px 1px 1px rgba(0,0,0,0.3) !important; } /* Grouped Bar */ #fv-chart-1766053504798-bilbvhy0u .fv-grouped-bar-product { display: flex !important; flex-direction: column !important; width: 100% !important; margin-bottom: 1.25rem !important; } #fv-chart-1766053504798-bilbvhy0u .fv-grouped-product-title-wrapper { padding-left: 150px !important; } #fv-chart-1766053504798-bilbvhy0u .fv-grouped-product-title { width: 100% !important; text-align: left !important; padding-right: 0 !important; margin-bottom: 0.5rem !important; font-weight: 700 !important; font-size: 14px !important; color: #4B5563 !important; text-transform: none !important; } #fv-chart-1766053504798-bilbvhy0u .fv-bar-cluster { width: 100% !important; flex-grow: 1 !important; display: flex !important; flex-direction: column !important; } #fv-chart-1766053504798-bilbvhy0u .fv-bar-cluster .fv-bar-row { margin-bottom: 3px !important; } #fv-chart-1766053504798-bilbvhy0u .fv-bar-cluster .fv-bar-container { height: 20px !important; } /* Line Chart Grid */ #fv-chart-1766053504798-bilbvhy0u .riv-grid line { stroke: #D1D5DB !important; stroke-dasharray: 3 3 !important; } /* X-Axis */ #fv-chart-1766053504798-bilbvhy0u .fv-x-axis-wrapper { display: flex !important; width: 100% !important; margin-top: 0.5rem !important; } #fv-chart-1766053504798-bilbvhy0u .fv-x-axis-label-space { width: 150px !important; padding-right: 10px !important; flex-shrink: 0 !important; } #fv-chart-1766053504798-bilbvhy0u .fv-x-axis-chart-space { flex-grow: 1 !important; padding-right: 8px !important; } #fv-chart-1766053504798-bilbvhy0u .fv-x-axis-wrapper.fv-grouped-x-axis { margin-left: 0 !important; } #fv-chart-1766053504798-bilbvhy0u .fv-x-axis-line { border-top: 1px solid #D1D5DB !important; } #fv-chart-1766053504798-bilbvhy0u .fv-x-axis-ticks { display: flex !important; justify-content: space-between !important; padding-top: 4px !important; font-size: 13px !important; color: #6B7280 !important; } #fv-chart-1766053504798-bilbvhy0u .fv-x-axis-ticks span { position: relative !important; } #fv-chart-1766053504798-bilbvhy0u .fv-x-axis-ticks span::before { content: '' !important; position: absolute !important; top: -6px !important; left: 50% !important; transform: translateX(-50%) !important; width: 2px !important; height: 4px !important; background-color: #D1D5DB !important; border-radius: 1px !important; } #fv-chart-1766053504798-bilbvhy0u .fv-x-axis-unit { text-align: center !important; font-size: 14px !important; color: #6B7280 !important; margin-top: 8px !important; display: block !important; } #fv-chart-1766053504798-bilbvhy0u .fv-x-axis-title { text-align: center !important; font-size: 15px !important; color: #6B7280 !important; margin-top: 8px !important; margin-bottom: 16px !important; line-height: 1.5 !important; padding: 0 1rem !important; display: block !important; font-weight: bold !important; } #fv-chart-1766053504798-bilbvhy0u .fv-y-axis-title { font-size: 15px !important; color: #6B7280 !important; line-height: 1.5 !important; text-align: left !important; padding-left: 5.83% !important; /* Aligns with Y-axis line inside SVG (35/600) */ margin-bottom: 4px !important; display: block !important; font-weight: bold !important; } /* Mobile / Forced Mobile View */ #fv-chart-1766053504798-bilbvhy0u.mobile-view .fv-pie-container { flex-direction: column !important; gap: 1rem !important; } #fv-chart-1766053504798-bilbvhy0u.mobile-view .fv-grouped-product-title-wrapper { padding-left: 0 !important; } #fv-chart-1766053504798-bilbvhy0u.mobile-view .fv-bar-row, #fv-chart-1766053504798-bilbvhy0u.mobile-view .fv-stacked-product, #fv-chart-1766053504798-bilbvhy0u.mobile-view .fv-grouped-bar-product { flex-direction: column !important; align-items: flex-start !important; margin-bottom: 1.25rem !important; } #fv-chart-1766053504798-bilbvhy0u.mobile-view .fv-bar-label, #fv-chart-1766053504798-bilbvhy0u.mobile-view .fv-grouped-product-title { width: 100% !important; text-align: left !important; padding-right: 0 !important; margin-bottom: 0.25rem !important; font-size: 14px !important; font-weight: 700 !important; } #fv-chart-1766053504798-bilbvhy0u.mobile-view .fv-bar-container, #fv-chart-1766053504798-bilbvhy0u.mobile-view .fv-bar-cluster { width: 100% !important; } #fv-chart-1766053504798-bilbvhy0u.mobile-view .fv-x-axis-wrapper { margin-left: 0 !important; } #fv-chart-1766053504798-bilbvhy0u.mobile-view .fv-x-axis-label-space { display: none !important; } #fv-chart-1766053504798-bilbvhy0u.mobile-view .fv-x-axis-chart-space { padding-right: 0 !important; } #fv-chart-1766053504798-bilbvhy0u.mobile-view .fv-benchmark-title { font-size: 16px !important; } #fv-chart-1766053504798-bilbvhy0u.mobile-view .fv-logo { width: 60px !important; max-width: 60px !important; } #fv-chart-1766053504798-bilbvhy0u.mobile-view .fv-carousel-nav-btn { padding: 6px 8px !important; font-size: 11px !important; } @media (max-width: 500px) { #fv-chart-1766053504798-bilbvhy0u .fv-pie-container { flex-direction: column !important; gap: 1rem !important; } #fv-chart-1766053504798-bilbvhy0u .fv-grouped-product-title-wrapper { padding-left: 0 !important; } #fv-chart-1766053504798-bilbvhy0u .fv-bar-row, #fv-chart-1766053504798-bilbvhy0u .fv-stacked-product { flex-direction: column !important; align-items: flex-start !important; margin-bottom: 1.25rem !important; } #fv-chart-1766053504798-bilbvhy0u .fv-bar-label:not(.fv-grouped-product-title) { width: 100% !important; text-align: left !important; padding-right: 0 !important; margin-bottom: 0.25rem !important; font-size: 14px !important; font-weight: 700 !important; } #fv-chart-1766053504798-bilbvhy0u .fv-bar-container { width: 100% !important; } #fv-chart-1766053504798-bilbvhy0u .fv-x-axis-wrapper:not(.fv-grouped-x-axis) { margin-left: 0 !important; } #fv-chart-1766053504798-bilbvhy0u .fv-x-axis-label-space:not(.fv-grouped-x-axis .fv-x-axis-label-space) { display: none !important; } #fv-chart-1766053504798-bilbvhy0u .fv-x-axis-chart-space { padding-right: 0 !important; } #fv-chart-1766053504798-bilbvhy0u .fv-benchmark-title { font-size: 16px !important; } #fv-chart-1766053504798-bilbvhy0u .fv-logo { width: 60px !important; max-width: 60px !important; } #fv-chart-1766053504798-bilbvhy0u .fv-carousel-nav-btn { padding: 6px 8px !important; font-size: 11px !important; } #fv-chart-1766053504798-bilbvhy0u .fv-y-axis-title { padding-left: 5% !important; /* (30/600) for mobile view */ } #fv-chart-1766053504798-bilbvhy0u.fv-contains-line-chart .fv-footer-content { margin-left: -1rem !important; margin-right: -1rem !important; } } { "@context": "https://schema.org", "@type": "Dataset", "name": "Global VPN server spread", "description": "Subhead to describe the test and what's being measured and why", "creator": { "@type": "Organization", "name": "TechRadar", "logo": "https://cdn.mos.cms.futurecdn.net/dAwPEozB9GMMhAngdFJTHb.png" }, "isAccessibleForFree": true, "dateCreated": "2025-12-18T10:25:04.798Z", "citation": "Add your caption to explain the data, the learnings and the key takeaways of the data being visualized", "keywords": [ "Proton VPN", "NordVPN", "ExpressVPN", "Surfshark", "Africa", "Asia", "Europe", "North America", "Oceania", "South America", "benchmark", "comparison", "performance", "review", "TechRadar" ], "measurementTechnique": "Performance Benchmarking", "variableMeasured": [ { "@type": "PropertyValue", "name": "Proton VPN – Asia", "value": 44, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "Proton VPN – North America", "value": 32, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "Proton VPN – South America", "value": 7, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "Proton VPN – Europe", "value": 49, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "Proton VPN – Oceania", "value": 6, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "Proton VPN – Africa", "value": 26, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "NordVPN – Asia", "value": 38, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "NordVPN – North America", "value": 39, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "NordVPN – South America", "value": 10, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "NordVPN – Europe", "value": 53, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "NordVPN – Oceania", "value": 8, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "NordVPN – Africa", "value": 17, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "ExpressVPN – Asia", "value": 36, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "ExpressVPN – North America", "value": 70, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "ExpressVPN – South America", "value": 9, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "ExpressVPN – Europe", "value": 59, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "ExpressVPN – Oceania", "value": 8, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "ExpressVPN – Africa", "value": 6, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "Surfshark – Asia", "value": 31, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "Surfshark – North America", "value": 34, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "Surfshark – South America", "value": 10, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "Surfshark – Europe", "value": 54, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "Surfshark – Oceania", "value": 6, "unitText": "number of server locations" }, { "@type": "PropertyValue", "name": "Surfshark – Africa", "value": 6, "unitText": "number of server locations" } ]} Global VPN server spread

Continental split of server network resources

< Prev Proton VPN Next > (function() { if (typeof google === 'undefined' || !google.charts) return; var chartDiv = document.getElementById('pie_chart_div_fv-chart-1766053504798-bilbvhy0u_pieProtonVPN'); if (!chartDiv) return; var chart = null; function drawChart() { var data = google.visualization.arrayToDataTable([["Attribute","Value"],["Asia",44],["North America",32],["South America",7],["Europe",49],["Oceania",6],["Africa",26]]); var options = {"backgroundColor":"transparent","chartArea":{"left":"5%","top":"5%","width":"90%","height":"90%"},"legend":{"position":"labeled","textStyle":{"color":"#4B5563","fontName":"Open Sans","fontSize":14}},"pieSliceText":"none","tooltip":{"trigger":"none"},"colors":["#4285F4","#DB4437","#F4B400","#0F9D58","#9C27B0","#009688"],"title":""}; if (!chart) { chart = new google.visualization.PieChart(chartDiv); } chart.draw(data, options); } google.charts.load('current', {'packages':['corechart']}); google.charts.setOnLoadCallback(function() { drawChart(); var resizeTimeout; window.addEventListener('resize', function() { clearTimeout(resizeTimeout); resizeTimeout = setTimeout(drawChart, 200); }); }); })(); Data for Proton VPN AttributeValue (number of server locations)Percentage Asia 44 26.8% North America 32 19.5% South America 7 4.3% Europe 49 29.9% Oceania 6 3.7% Africa 26 15.9% (function() { if (typeof google === 'undefined' || !google.charts) return; var chartDiv = document.getElementById('pie_chart_div_fv-chart-1766053504798-bilbvhy0u_pieNordVPN'); if (!chartDiv) return; var chart = null; function drawChart() { var data = google.visualization.arrayToDataTable([["Attribute","Value"],["Asia",38],["North America",39],["South America",10],["Europe",53],["Oceania",8],["Africa",17]]); var options = {"backgroundColor":"transparent","chartArea":{"left":"5%","top":"5%","width":"90%","height":"90%"},"legend":{"position":"labeled","textStyle":{"color":"#4B5563","fontName":"Open Sans","fontSize":14}},"pieSliceText":"none","tooltip":{"trigger":"none"},"colors":["#4285F4","#DB4437","#F4B400","#0F9D58","#9C27B0","#009688"],"title":""}; if (!chart) { chart = new google.visualization.PieChart(chartDiv); } chart.draw(data, options); } google.charts.load('current', {'packages':['corechart']}); google.charts.setOnLoadCallback(function() { drawChart(); var resizeTimeout; window.addEventListener('resize', function() { clearTimeout(resizeTimeout); resizeTimeout = setTimeout(drawChart, 200); }); }); })(); Data for NordVPN AttributeValue (number of server locations)Percentage Asia 38 23.0% North America 39 23.6% South America 10 6.1% Europe 53 32.1% Oceania 8 4.8% Africa 17 10.3% (function() { if (typeof google === 'undefined' || !google.charts) return; var chartDiv = document.getElementById('pie_chart_div_fv-chart-1766053504798-bilbvhy0u_pieExpressVPN'); if (!chartDiv) return; var chart = null; function drawChart() { var data = google.visualization.arrayToDataTable([["Attribute","Value"],["Asia",36],["North America",70],["South America",9],["Europe",59],["Oceania",8],["Africa",6]]); var options = {"backgroundColor":"transparent","chartArea":{"left":"5%","top":"5%","width":"90%","height":"90%"},"legend":{"position":"labeled","textStyle":{"color":"#4B5563","fontName":"Open Sans","fontSize":14}},"pieSliceText":"none","tooltip":{"trigger":"none"},"colors":["#4285F4","#DB4437","#F4B400","#0F9D58","#9C27B0","#009688"],"title":""}; if (!chart) { chart = new google.visualization.PieChart(chartDiv); } chart.draw(data, options); } google.charts.load('current', {'packages':['corechart']}); google.charts.setOnLoadCallback(function() { drawChart(); var resizeTimeout; window.addEventListener('resize', function() { clearTimeout(resizeTimeout); resizeTimeout = setTimeout(drawChart, 200); }); }); })(); Data for ExpressVPN AttributeValue (number of server locations)Percentage Asia 36 19.1% North America 70 37.2% South America 9 4.8% Europe 59 31.4% Oceania 8 4.3% Africa 6 3.2% (function() { if (typeof google === 'undefined' || !google.charts) return; var chartDiv = document.getElementById('pie_chart_div_fv-chart-1766053504798-bilbvhy0u_pieSurfshark'); if (!chartDiv) return; var chart = null; function drawChart() { var data = google.visualization.arrayToDataTable([["Attribute","Value"],["Asia",31],["North America",34],["South America",10],["Europe",54],["Oceania",6],["Africa",6]]); var options = {"backgroundColor":"transparent","chartArea":{"left":"5%","top":"5%","width":"90%","height":"90%"},"legend":{"position":"labeled","textStyle":{"color":"#4B5563","fontName":"Open Sans","fontSize":14}},"pieSliceText":"none","tooltip":{"trigger":"none"},"colors":["#4285F4","#DB4437","#F4B400","#0F9D58","#9C27B0","#009688"],"title":""}; if (!chart) { chart = new google.visualization.PieChart(chartDiv); } chart.draw(data, options); } google.charts.load('current', {'packages':['corechart']}); google.charts.setOnLoadCallback(function() { drawChart(); var resizeTimeout; window.addEventListener('resize', function() { clearTimeout(resizeTimeout); resizeTimeout = setTimeout(drawChart, 200); }); }); })(); Data for Surfshark AttributeValue (number of server locations)Percentage Asia 31 22.0% North America 34 24.1% South America 10 7.1% Europe 54 38.3% Oceania 6 4.3% Africa 6 4.3% 1 of 4 Proton VPN has the best global server spread of all of our recommended VPNs. It's the top choice for coverage in Africa and the Middle East. (function() { function initialize() { var chartWrapper = document.getElementById('fv-chart-1766053504798-bilbvhy0u'); if (!chartWrapper) { console.error('Chart wrapper with ID fv-chart-1766053504798-bilbvhy0u not found.'); return; } function animateBars(chartElement) { if (!chartElement) return; var bars = chartElement.querySelectorAll('.fv-bar, .fv-stacked-segment'); bars.forEach(function(bar, index) { var targetWidth = bar.dataset.targetWidth; if (targetWidth === undefined) return; // Bars start at width: 0% in HTML, so we just animate them setTimeout(function() { bar.style.width = targetWidth + '%'; }, index * 50 + 100); }); } function animateLineChart(chartElement) { if (!chartElement) return; var lineSvg = chartElement.querySelector('svg'); if (!lineSvg) return; var paths = lineSvg.querySelectorAll('.riv-line-path'); paths.forEach(function(p, i) { if (typeof p.getTotalLength === 'function') { var len = p.getTotalLength(); p.style.transition = 'none'; p.style.strokeDasharray = len; p.style.strokeDashoffset = len; p.getBoundingClientRect(); setTimeout(function() { p.style.transition = 'stroke-dashoffset 1s ease-out ' + (i * 0.1) + 's'; p.style.strokeDashoffset = '0'; }, 100); } }); var dots = lineSvg.querySelectorAll('.riv-dot'); dots.forEach(function(dot, i) { dot.style.opacity = '0'; setTimeout(function() { dot.style.transition = 'opacity 0.3s ease'; dot.style.opacity = '1'; }, 500 + i * 10); }); } var charts = chartWrapper.querySelectorAll('.fv-chart-item'); // Animate initial view if ("Carousel" === "All Charts") { charts.forEach(function(chart) { var chartType = chart.dataset.chartType; if (chartType === 'Line') { animateLineChart(chart); } else if (chartType !== 'Pie') { animateBars(chart); } }); } else if (charts.length > 0) { var firstChart = charts[0]; var firstChartType = firstChart.dataset.chartType; if (firstChartType === 'Line') { animateLineChart(firstChart); } else if (firstChartType !== 'Pie') { animateBars(firstChart); } } if (charts.length > 1 && "Carousel" !== "All Charts") { var currentChartIndex = 0; var subheadEl = chartWrapper.querySelector('.fv-chart-subhead'); var captionEl = chartWrapper.querySelector('.rv-chart-caption'); var placeholderSubhead = "Subhead to describe the test and what's being measured and why"; var placeholderCaption = "Add your caption to explain the data, the learnings and the key takeaways of the data being visualized"; var globalSubheadJSON = "Subhead to describe the test and what's being measured and why"; var globalCaptionJSON = "Add your caption to explain the data, the learnings and the key takeaways of the data being visualized"; var globalSubhead = globalSubheadJSON === placeholderSubhead ? '' : globalSubheadJSON; var globalCaption = globalCaptionJSON === placeholderCaption ? '' : globalCaptionJSON; var subheadOverrides = {"pie-Proton VPN":"Continental split of server network resources"}; var captionOverrides = {"pie-ExpressVPN":"ExpressVPN focuses its server network on North America and Europe.","pie-NordVPN":"NordVPN has the largest number of server locations and a reasonable spread of those resources over the globe.","pie-Proton VPN":"Proton VPN has the best global server spread of all of our recommended VPNs. It's the top choice for coverage in Africa and the Middle East.","pie-Surfshark":"Surfshark is the most Euro-centric of our recommended VPNs."}; var chartInfo = [{"id":"pie-Proton VPN","title":"Proton VPN"},{"id":"pie-NordVPN","title":"NordVPN"},{"id":"pie-ExpressVPN","title":"ExpressVPN"},{"id":"pie-Surfshark","title":"Surfshark"}]; var captionOverrideKeys = Object.keys(captionOverrides); var singleCaptionOverrideValue = captionOverrideKeys.length === 1 ? captionOverrides[captionOverrideKeys[0]] : null; if (singleCaptionOverrideValue === placeholderCaption) { singleCaptionOverrideValue = ''; } function showChart(index) { if (index < 0 || index >= charts.length) return; charts.forEach(function(chart, i) { chart.style.display = i === index ? 'block' : 'none'; }); currentChartIndex = index; var activeChart = charts[index]; var chartType = activeChart.dataset.chartType; if (chartType === 'Line') { animateLineChart(activeChart); } else if (chartType !== 'Pie') { animateBars(activeChart); } var activeChartId = chartInfo[index].id; if (subheadEl) { var subheadContent = (subheadOverrides[activeChartId] !== undefined) ? (subheadOverrides[activeChartId] === placeholderSubhead ? '' : subheadOverrides[activeChartId]) : globalSubhead; subheadEl.innerHTML = subheadContent; } if (captionEl) { var captionContent; if (captionOverrides[activeChartId] !== undefined) { captionContent = captionOverrides[activeChartId] === placeholderCaption ? '' : captionOverrides[activeChartId]; } else if (singleCaptionOverrideValue !== null) { captionContent = singleCaptionOverrideValue; } else { captionContent = globalCaption; } captionEl.innerHTML = captionContent; var captionContainer = captionEl.closest('.fv-footer-content'); if (captionContainer) { var hasContent = captionContent && captionContent.trim() !== ''; var shouldShow = hasContent || (captionContainer.parentElement && captionContainer.parentElement.querySelector('.fv-logo')); if (captionContainer.parentElement) captionContainer.parentElement.style.display = shouldShow ? 'flex' : 'none'; captionContainer.style.display = hasContent ? 'block' : 'none'; } } var dropdown = chartWrapper.querySelector('.fv-dropdown'); if (dropdown) dropdown.value = index; var carouselTitle = chartWrapper.querySelector('.fv-carousel-title-controls .fv-benchmark-title'); if (carouselTitle) carouselTitle.innerHTML = chartInfo[index].title; var counter = chartWrapper.querySelector('.fv-carousel-counter'); if (counter) counter.textContent = (index + 1) + ' of ' + charts.length; } var dropdown = chartWrapper.querySelector('.fv-dropdown'); if (dropdown) dropdown.addEventListener('change', function(e) { showChart(parseInt(e.target.value)) }); var prevBtn = chartWrapper.querySelector('.fv-carousel-nav-btn.prev'); if (prevBtn) prevBtn.addEventListener('click', function() { showChart((currentChartIndex - 1 + charts.length) % charts.length) }); var nextBtn = chartWrapper.querySelector('.fv-carousel-nav-btn.next'); if (nextBtn) nextBtn.addEventListener('click', function() { showChart((currentChartIndex + 1) % charts.length) }); } chartWrapper.querySelectorAll('.riv-line-legend').forEach(function(legend) { var chartId = legend.dataset.chart; var chart = document.getElementById(chartId); // Uses page-unique ID if (!chart) return; var lines = chart.querySelectorAll('.riv-line-path'); var dots = chart.querySelectorAll('.riv-dot'); legend.querySelectorAll('.riv-legend-item').forEach(function(item) { var productName = item.dataset.product; var line = chart.querySelector('.riv-line-path[data-product="' + productName + '"]'); var productDots = chart.querySelectorAll('.riv-dot[data-product="' + productName + '"]'); var highlight = function() { if (legend.querySelector('.isolated')) return; lines.forEach(function(l) { l.style.opacity = '0.3' }); dots.forEach(function(d) { d.style.opacity = '0.3' }); if (line) line.style.opacity = '1'; productDots.forEach(function(d) { d.style.opacity = '1' }); }; var clearHighlight = function() { if (legend.querySelector('.isolated')) return; lines.forEach(function(l) { l.style.opacity = '1' }); dots.forEach(function(d) { d.style.opacity = '1' }); }; var toggleIsolate = function() { var isIsolated = item.classList.contains('isolated'); legend.querySelectorAll('.riv-legend-item').forEach(function(i) { i.classList.remove('isolated') }); if (isIsolated) { lines.forEach(function(l) { l.style.opacity = '1' }); dots.forEach(function(d) { d.style.opacity = '1' }); } else { item.classList.add('isolated'); lines.forEach(function(l) { l.style.opacity = '0.3' }); dots.forEach(function(d) { d.style.opacity = '0.3' }); if (line) line.style.opacity = '1'; productDots.forEach(function(d) { d.style.opacity = '1' }); } }; item.addEventListener('mouseenter', highlight); item.addEventListener('focus', highlight); item.addEventListener('mouseleave', clearHighlight); item.addEventListener('blur', clearHighlight); item.addEventListener('click', toggleIsolate); item.addEventListener('keydown', function(e) { if (e.key === 'Enter' || e.key === ' ') { e.preventDefault(); toggleIsolate(); } }); }); }); } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initialize); } else { initialize(); } function sendMessageToParentWindow(typeOfMessage, message = null) { let url = (window.location.ancestorOrigins && window.location.ancestorOrigins.length > 0) ? window.location.ancestorOrigins[0] : '*'; window.parent.postMessage({ analytics: { ...message } }, url); } sendMessageToParentWindow('analytics', { type: "fv-loaded", timestamp: new Date().toISOString() }); })();

That said, it’s not perfect. In our testing, it was quickly apparent that the app lacks clear visual indicators for virtual servers. For instance, the Windows app currently doesn't display any icons to let you know a server is Smart Routed.

What’s more, we found a few instances where these virtual locations didn't appear to connect from exactly where Proton VPN’s website said they were hosted.

However, it's worth noting that the vast majority of servers were hosted exactly where Proton claimed they were. The few exceptions we found were generally hosted in neighboring countries, which is unlikely to cause a noticeable performance drop.

It's most likely that Proton's website server lists are just a bit out of date, rather than anything nefarious.

The real diversion from the norm for Proton's server network, though, is that it doesn't use RAM-only servers. Proton believes the security benefits of such servers are minimal and consequently not worthwhile, which they explain in a blog post.

Instead, Proton runs full disk encryption on their servers. This means that even if a server were to be taken away, it would not be possible to access the server certificates that might allow bad actors to create an attack, or attempt to track customers.

Alongside these servers are Proton’s own Secure Core servers. These servers are owned and run by Proton itself, stored in high-security locations, including a former military base and an underground data center, and form the basis of Proton’s multi-hop offering.

Based in Sweden, Switzerland, and Iceland, these servers are deliberately in physically hardened locations with strong privacy laws, reducing the ability of other countries to file legal challenges for data. Plus, the servers are connected to the internet by a dedicated network Proton owns, with IP addresses owned and operated by its own Local Internet Registry.

The average user won’t see a huge difference in performance but any multihop connection does reduce download speeds and increases latency owing to the added VPN server connection. However, those extra measures mean you’re far more protected when using Secure Core than you would with any other VPN multi-hop system. If that doesn't add peace of mind, then we don't know what will.

Overall, then, a great number of locations, backed by strong, secure infrastructure. There's little you need to worry about when it comes to where to connect with Proton VPN.

Score: 10/10

Privacy
  • Based in Switzerland – giving users protection from strict data privacy laws.
  • Detailed, clear, privacy and no-logs policies.
  • Key privacy features: Stealth, full-disk encryption, Secure Core.

Proton is as a privacy-first company. Its VPN product is no different – and doesn’t disappoint!

We should first address the fact that it is a Swiss company. Being based in Switzerland means the company is protected by some VPN customer-friendly data privacy laws. Switzerland isn’t part of any intelligence-sharing agreements, and sees such importance in privacy that rarely will a Swiss court grant any data request it receives from another country.

This is furthered by Proton’s full, detailed privacy policy, no-logs policy, and transparency reports when it is subject to legal requests by Swiss authorities. We read through Proton’s privacy policy and were pleased to see a high level of detail, without unnecessary complexities.

The same is true for its no-logs policy. It covers everything we’d expect, including linking out to explainers surrounding the technology Proton has in place to secure your data, such as full-disk encryption and bare-metal servers, both of which we’ll cover later.

The future of Switzerland's reputation as a privacy haven is not certain, however. In recent months, there has been discussions about changes to the country's surveillance legislation. Proton has said it will leave the country if Switzerland no longer offers the privacy protections it feels it requires to operate securely.

Read more about Proton VPN's privacy measures ▼

This no-logs policy has also been audited four times. The last was in August 2025.

These audits have regularly confirmed there is nothing to worry about, even emphasizing the lengths Proton goes to internally to ensure security.

This includes monitoring server configurations and raising alerts if there is an unauthorized change. It also has a change management system which means an employee cannot change any configurations without another employee’s approval.

If that wasn’t enough, Proton’s no logs policy was tested in 2019 when a Swiss court approved a request to hand over customer information. However, since Proton’s no logs policy was watertight and well enforced, there was no information to hand over.

If you’re interested in how many requests Proton receives over a year, you can look over its transparency report. This report is updated whenever a new request is received, even if, as is most common, the request is declined due to Swiss privacy laws.

Proton’s quest for privacy superiority doesn’t just stop with the legalities, though; its Stealth protocol is a staple part of its infrastructure and offers a stellar solution to remaining secure when you need to hide that you’re using a VPN to connect.

Stealth is a protocol based on traditional WireGuard over TCP. By tunneling WireGuard over TCP, having already encapsulated your traffic in TLS, your connection appears as any normal online traffic would.

This is because TCP runs your traffic through the same port that normal HTTPS traffic goes through, port 443. By disguising your traffic in this way, you’re much less likely to be picked up by VPN detection technologies, allowing you greater success when bypassing censorship restrictions, VPN bans, and the like.

All this protective technology does mean that Stealth is by no means the quickest protocol, though that doesn’t mean you’re short of options if you need speed.

Alongside Stealth, you can also pick from WireGuard connection types across all apps, or OpenVPN if you are on Windows, both of which are available in TCP or UDP configurations.

In January 2026, the company announced that it be retiring older manual OpenVPN configurations due to security concerns. Although users of the official app will be unaffected, those running manual setups or on Linux will need to refresh their credentials by February 28 to avoid losing connectivity.

Picking TCP gives a more reliable connection, while UDP is more speed-focused. So, if you’re after a secure, reliable connection, OpenVPN on TCP is the pick, while if you want speed, WireGuard over UDP is ideal, especially with VPN Accelerator enabled.

Proton offers huge amounts of customizability of its protocols (Image credit: Future)

We’ve mentioned already how Proton avoids using RAM-only servers in favor of full-disk-encrypted servers instead, but it’s also worth mentioning its commitment to physical locations in regions of high risk.

In ‘unfriendly jurisdictions’, as Proton describes them, Proton uses third-party, physical servers to ensure that it’s not subject to local laws and remains a Swiss company, since the infrastructure is owned by a third-party, and it has full control of the server all the way to the base operating level.

Using physical servers, rather than virtual, ensures the hardware is solely dedicated to Proton VPN, allowing for greater security and control when navigating the difficulties faced in these regions.

In terms of privacy features in-app, there are several that are particularly handy.

We’ve already mentioned Proton’s version of multi-hop, Secure Core. This is a super-secure solution to a two-VPN connection, though the added security does mean it sacrifices country availability. Every connection must go through one of Proton’s Swiss, Icelandic, or Swedish Secure Core bases, and the connection can then only exit in 68 of Proton’s usual 145 countries.

While this may seem like a sacrifice initially, 68 is far more than the 12 multi-hop locations NordVPN offers. Only Surfshark’s Nexus network offers more since it allows a multihop connection between any two Surfshark locations without limitation.

Much like NordVPN, you also get Tor over VPN connectivity should you wish to access .onion sites. Again, Proton comfortably beats NordVPN for locations in this respect, with six to Nord’s two.

As with any Tor over VPN connection, performance does take a hefty hit. Our tests showed a maximum download speed of only 1.89 Mbps, though this is more than double NordVPN’s result, which barely scraped over 700 Kbps.

It’s unlikely that, if using the Tor network, you’re doing anything requiring a huge amount of bandwidth, but beware that you’re never going to get the same speeds you would with a different protocol. If you’re unsure how to safely use Tor over VPN, Proton does offer a handy guide you can access from within the app.

Score: 10/10

Security
  • Excellent current encryption standards but no post-quantum yet.
  • Kill switch that can now be used alongside split-tunneling on Windows
  • Poor recent malware site blocking result.

Proton does almost all the necessary security steps well. AES-256-GCM and ChaCha20 encryption using Diffie-Hellman key exchanges are standard practices, and Proton only uses protocols that support perfect forward secrecy. This means not only are you secure, but even if a session were to be compromised, none of your older or later sessions are at risk since they’ll use unique encryption keys.

On the topic of encryption keys, Proton uses 4096-bit RSA keys, a step above VPN providers such as Surfshark, which only use 2048-bit, though you won’t notice the difference day-to-day. 2048-bit encryption keys are extremely safe, which is why top VPNs still use them, but 4096-bit keys add additional security through the increase in key length – why the likes of Proton and NordVPN now use these instead.

Proton’s VPN hasn’t yet implemented post-quantum encryption (PQE). However, it is currently working on adding this feature. In October 2025, the company announced it had started working on a new, in-house VPN architecture This will enable the company to introduce PQE in the coming months. The architecture is now being deployed and PQE rollout is imminent.

In an April 2026 update, the company said it was still working on this and currently laying the groundwork for PQE.

That said, its introduction is still lagging behind NordVPN and Express, who already offer PQE. For a closer look, we've also written an in-depth comparison of NordVPN and Proton VPN.

Read more about Proton VPN's security features ▼

Despite lacking PQE, Proton has plenty of features to keep users secure.

Auto-connect is an option right out of the gates. However, it’s not the most flexible system we’ve seen, especially when compared to NordVPN. While you can set your desktop to auto-connect on launch, and mobile apps feature a basic 'Always-on' toggle to re-establish dropped connections, it lacks advanced condition-based triggers.

This lack of any customization is surprising. The likes of NordVPN or Surfshark allow you options such as creating a trusted network list or enabling auto-connect under specific connection circumstances. Without this Proton is a distance behind.

The home screen offers quick access to everything from auto-connect settings to profiles and specialist servers (Image credit: Future)

Next comes split tunelling. Proton’s split tunelling is advanced, but until recently Windows users couldn't use the split tunnel with the kill switch enabled. Fortunately, this was resolved in an update in February.

Proton does have several advanced features for split-tunneling. You can choose to split-tunnel both apps and IP addresses on Windows and Android, while Mac users are currently limited strictly to apps. On these supported platforms, you can decide whether your tunnel excludes or includes what’s selected from the VPN connection.

Proton’s app detection on desktop is very good. Any .exe file we had was found and properly thumbnailed on our list – a list which usefully retains any app you add permanently, should you wish to amend your list in future.

On mobile, Proton did a great job finding any app we’d installed (including those installed via Chrome), and could even identify and isolate specific system apps. That said, it did take a few seconds to collate the full list of apps, and didn’t give options for specific Chrome ‘apps’ we’d set up on our Android device to quickly access specific websites.

That won’t impact many but it does mean you’re left split-tunneling Chrome as a whole instead of having specific, unencrypted access to sites where VPNs cause issues, including financial sites.

Proton's settings menu is well laid out and offers superb explanations of even its most complex options (Image credit: Future)

Finally, we should mention Proton’s kill switch. On desktop, you get two kill switch options: Standard, and Advanced. Standard works as you’d expect. You turn it on, and your internet connection drops if your connection to Proton VPN is interrupted.

Advanced adds another layer to this. It only allows internet access when connected to Proton VPN, and it remains active even after restarting your device.

Testing the kill switch over Stealth, WireGuard, and OpenVPN, Proton foiled all of our tricks to forcibly drop the VPN. We were disconnected instantly and saw no signs of leaks, and that's exactly what you want.

iOS and Mac users get the equivalent of Windows’ Standard kill switch, which is more than good enough. Android users use the Android-native kill switch, which is essentially the Windows Advanced option. While it would be great to see consistency across the board, none of our testing suggests any reason to worry about Proton’s kill switch no matter the platform.

Diving into Proton’s advanced settings offers several other ways to improve your security too.

That means using non-Proton server network methods to ensure online access to Proton users in crisis situation.

You can also choose to allow LAN connections while still connected to the VPN, set up custom DNS servers, choose your specific NAT type and OpenVPN network driver, and enable IPv6 support and leak protection.

This is extensive customization for any VPN. What’s also great to see is that mobile users get almost all of these functions, losing only IPv6 leak protection and OpenVPN network driver choices from the otherwise extensive list.

The final tool in Proton VPN’s security arsenal is NetShield. This is Proton’s ad, tracker and malware blocking tool. It works at a system level, meaning there’s no need for separate installs for at-risk programs such as your browser. It instead protects all of your apps instantly.

We put NetShield to the test against 36 brand-new malware and phishing sites and attempted to access them. We also ran it through an ad-blocking tester. These are our most recent VPN lab results:

Phishing Sites Blocked

Malware Sites Blocked

Ads blocked

NordVPN (Threat Protection Pro)

92%

80%

21%

Proton VPN

32%

4%

88%

ExpressVPN

84%

16%

87%

Surfshark

48%

28%

44%

Proton’s results raise a number of discussion points. Its 32% phishing sites blocked score is a drop from its previous highs, putting it behind competitors like NordVPN. However, blocking 88% of ads means Proton remains top-tier here, achieving double the successful blocks of Surfshark and four times that of NordVPN's basic blocker.

Its 4% malware sites blocked score is concerning, of course. Though curiously, we also found this with ExpressVPN, which scored just 16% in this round, despite both testing well in the past.

As with speed testing, these ad and site blocker tests are only a snapshot in time, and are relative to the latest threats of that particular day. In other words, it might have just been a bad day at the office for ExpressVPN and Proton VPN.

The takeaway message is that, while Proton VPN currently misses a significant number of malware and phishing threats compared to the top performers, its core ad blocking remains highly effective.

Score: 7/10

Speed
  • Very fast WireGuard speeds over long and short distance connections.
  • OpenVPN speeds a long way behind the competition.
  • Stable jitter recorded on recent tests.

Proton shot to the top of the pack in our most recent VPN lab speed tests. That's likely thanks in part to its VPN Accelerator technology.

We recently broadened our testing parameters, adding more data points to our testing and increasing our maximum speed capacity to 10 Gbps. This allows for more precise, comparable testing across all VPNs to discern even the smallest differences.

@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700&display=swap'); #fv-chart-1766055751837-zg9wkkbik *, #fv-chart-1766055751837-zg9wkkbik *:before, #fv-chart-1766055751837-zg9wkkbik *:after { box-sizing: border-box !important; margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; } #fv-chart-1766055751837-zg9wkkbik { font-family: 'Open Sans', sans-serif !important; } /* Main Wrappers */ #fv-chart-1766055751837-zg9wkkbik { position: relative !important; overflow: visible !important; --riv-primary: #2E6E93; } #fv-chart-1766055751837-zg9wkkbik .fv-inner-wrapper { color: #1F2937 !important; background-color: #ffffff !important; padding: 1.5rem 1.5rem 2rem !important; border-radius: 0.5rem !important; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important; margin: 1rem 0 !important; display: flex !important; flex-direction: column !important; } /* Typography */ #fv-chart-1766055751837-zg9wkkbik .fv-chart-title { font-weight: bold !important; text-align: center !important; margin-bottom: 0.5rem !important; color: #1F2937 !important; font-size: 1.25rem !important; line-height: 1.2 !important; font-family: 'Open Sans', sans-serif !important; text-transform: none !important; } #fv-chart-1766055751837-zg9wkkbik .fv-chart-subhead { font-size: 1rem !important; font-weight: 500 !important; text-align: center !important; margin-bottom: 2rem !important; color: #6B7280 !important; line-height: 1.7 !important; font-family: 'Open Sans', sans-serif !important; display: block !important; text-transform: none !important; } #fv-chart-1766055751837-zg9wkkbik .rv-chart-caption { font-size: 15px !important; color: #6B7280 !important; text-align: center !important; font-style: normal !important; font-weight: normal !important; line-height: 1.7 !important; font-family: 'Open Sans', sans-serif !important; display: block !important; } #fv-chart-1766055751837-zg9wkkbik .sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; } /* Footer */ #fv-chart-1766055751837-zg9wkkbik .fv-bottom-bar { display: flex !important; flex-direction: column !important; align-items: center !important; margin-top: 0.5rem !important; gap: 1rem !important; } #fv-chart-1766055751837-zg9wkkbik .fv-footer-content { text-align: center !important; width: 100% !important; } #fv-chart-1766055751837-zg9wkkbik .fv-logo { display: block !important; margin: 0 auto !important; width: 120px !important; max-width: 120px !important; height: auto !important; object-fit: contain !important; } /* Display Mode Controls */ #fv-chart-1766055751837-zg9wkkbik .fv-dropdown-container { text-align: center !important; margin-bottom: 16px !important; } #fv-chart-1766055751837-zg9wkkbik .fv-dropdown { width: 100% !important; max-width: 350px !important; padding: 8px 12px !important; font-size: 14px !important; line-height: 1.2 !important; border: 2px solid #d1d5db !important; border-radius: 8px !important; background-color: #ffffff !important; color: #374151 !important; cursor: pointer !important; appearance: none !important; background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e") !important; background-position: right 12px center !important; background-repeat: no-repeat !important; background-size: 14px !important; padding-right: 35px !important; font-family: 'Open Sans', sans-serif !important; } #fv-chart-1766055751837-zg9wkkbik .fv-dropdown:hover { border-color: var(--riv-primary) !important; } #fv-chart-1766055751837-zg9wkkbik .fv-carousel-title-controls { display: flex !important; justify-content: space-between !important; align-items: center !important; margin-bottom: 16px !important; width: 100% !important; gap: 12px !important; } #fv-chart-1766055751837-zg9wkkbik .fv-carousel-nav-btn { background: transparent !important; border: 1px solid #d1d5db !important; border-radius: 6px !important; padding: 6px 10px !important; cursor: pointer !important; font-size: 13px !important; color: #6b7280 !important; display: flex !important; align-items: center !important; gap: 4px !important; font-family: 'Open Sans', sans-serif !important; } #fv-chart-1766055751837-zg9wkkbik .fv-carousel-nav-btn:hover { border-color: #9ca3af !important; } #fv-chart-1766055751837-zg9wkkbik .fv-carousel-counter { font-size: 14px !important; color: #6b7280 !important; text-align: center !important; margin-top: 1rem !important; } /* Legend */ #fv-chart-1766055751837-zg9wkkbik .fv-legend { display: flex !important; justify-content: center !important; flex-wrap: wrap !important; gap: 8px 16px !important; margin: 0 !important; padding: 0 !important; margin-top: 1rem !important; } #fv-chart-1766055751837-zg9wkkbik .fv-legend-item { display: flex !important; align-items: center !important; gap: 6px !important; font-size: 14px !important; color: #4B5563 !important; } #fv-chart-1766055751837-zg9wkkbik .fv-legend-color { width: 12px !important; height: 12px !important; border-radius: 3px !important; } /* Chart Core Styles */ #fv-chart-1766055751837-zg9wkkbik .fv-benchmark-group { margin-bottom: 1rem !important; } #fv-chart-1766055751837-zg9wkkbik .fv-benchmark-title { font-size: 18px !important; font-weight: 600 !important; margin-bottom: 16px !important; margin-top: 0 !important; padding: 0 !important; text-align: center !important; color: var(--riv-primary) !important; flex: 1 !important; min-width: 0 !important; font-family: 'Open Sans', sans-serif !important; line-height: 1.3 !important; text-transform: none !important; } #fv-chart-1766055751837-zg9wkkbik .fv-bar-row, #fv-chart-1766055751837-zg9wkkbik .fv-stacked-product { display: flex !important; align-items: center !important; width: 100% !important; margin-bottom: 0.75rem !important; } #fv-chart-1766055751837-zg9wkkbik .fv-bar-label { width: 150px !important; flex-shrink: 0 !important; font-size: 14px !important; color: #4B5563 !important; padding-right: 10px !important; text-align: right !important; font-weight: 500 !important; display: block !important; } #fv-chart-1766055751837-zg9wkkbik .fv-bar-container { flex-grow: 1 !important; background-color: #E5E7EB !important; border-radius: 4px !important; height: 25px !important; border: 1px solid #D1D5DB !important; position: relative !important; display: flex !important; align-items: center !important; } #fv-chart-1766055751837-zg9wkkbik .fv-bar { height: 100% !important; border-radius: 3px !important; display: flex !important; align-items: center !important; transition: opacity 0.2s ease, width 0.8s ease-out !important; } #fv-chart-1766055751837-zg9wkkbik .fv-bar:hover { opacity: 0.8 !important; } #fv-chart-1766055751837-zg9wkkbik .fv-bar-inner-content { display: flex !important; justify-content: space-between !important; align-items: center !important; width: 100% !important; height: 100% !important; padding: 0 8px !important; color: white !important; font-size: 14px !important; font-weight: bold !important; text-shadow: 1px 1px 1px rgba(0,0,0,0.3) !important; overflow: hidden !important; } #fv-chart-1766055751837-zg9wkkbik .fv-bar-inner-label { white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; padding-right: 8px !important; } #fv-chart-1766055751837-zg9wkkbik .fv-bar-inner-value { flex-shrink: 0 !important; } #fv-chart-1766055751837-zg9wkkbik .fv-bar-value-outside { padding-left: 8px !important; font-size: 14px !important; font-weight: bold !important; color: #4B5563 !important; white-space: nowrap !important; } #fv-chart-1766055751837-zg9wkkbik .fv-bar-label.fv-primary-product { font-weight: bold !important; color: var(--riv-primary) !important; } /* Stacked Bar */ #fv-chart-1766055751837-zg9wkkbik .fv-stacked-bar { display: flex !important; overflow: hidden !important; } #fv-chart-1766055751837-zg9wkkbik .fv-stacked-segment { height: 100% !important; display: flex !important; align-items: center !important; justify-content: flex-end !important; padding-right: 8px !important; border-right: 1px solid rgba(255,255,255,0.3) !important; } #fv-chart-1766055751837-zg9wkkbik .fv-stacked-segment:last-child { border-right: none !important; } #fv-chart-1766055751837-zg9wkkbik .fv-segment-value { font-size: 14px !important; font-weight: bold !important; color: white !important; text-shadow: 1px 1px 1px rgba(0,0,0,0.3) !important; } /* Grouped Bar */ #fv-chart-1766055751837-zg9wkkbik .fv-grouped-bar-product { display: flex !important; flex-direction: column !important; width: 100% !important; margin-bottom: 1.25rem !important; } #fv-chart-1766055751837-zg9wkkbik .fv-grouped-product-title-wrapper { padding-left: 150px !important; } #fv-chart-1766055751837-zg9wkkbik .fv-grouped-product-title { width: 100% !important; text-align: left !important; padding-right: 0 !important; margin-bottom: 0.5rem !important; font-weight: 700 !important; font-size: 14px !important; color: #4B5563 !important; text-transform: none !important; } #fv-chart-1766055751837-zg9wkkbik .fv-bar-cluster { width: 100% !important; flex-grow: 1 !important; display: flex !important; flex-direction: column !important; } #fv-chart-1766055751837-zg9wkkbik .fv-bar-cluster .fv-bar-row { margin-bottom: 3px !important; } #fv-chart-1766055751837-zg9wkkbik .fv-bar-cluster .fv-bar-container { height: 20px !important; } /* Line Chart Grid */ #fv-chart-1766055751837-zg9wkkbik .riv-grid line { stroke: #D1D5DB !important; stroke-dasharray: 3 3 !important; } /* X-Axis */ #fv-chart-1766055751837-zg9wkkbik .fv-x-axis-wrapper { display: flex !important; width: 100% !important; margin-top: 0.5rem !important; } #fv-chart-1766055751837-zg9wkkbik .fv-x-axis-label-space { width: 150px !important; padding-right: 10px !important; flex-shrink: 0 !important; } #fv-chart-1766055751837-zg9wkkbik .fv-x-axis-chart-space { flex-grow: 1 !important; padding-right: 8px !important; } #fv-chart-1766055751837-zg9wkkbik .fv-x-axis-wrapper.fv-grouped-x-axis { margin-left: 0 !important; } #fv-chart-1766055751837-zg9wkkbik .fv-x-axis-line { border-top: 1px solid #D1D5DB !important; } #fv-chart-1766055751837-zg9wkkbik .fv-x-axis-ticks { display: flex !important; justify-content: space-between !important; padding-top: 4px !important; font-size: 13px !important; color: #6B7280 !important; } #fv-chart-1766055751837-zg9wkkbik .fv-x-axis-ticks span { position: relative !important; } #fv-chart-1766055751837-zg9wkkbik .fv-x-axis-ticks span::before { content: '' !important; position: absolute !important; top: -6px !important; left: 50% !important; transform: translateX(-50%) !important; width: 2px !important; height: 4px !important; background-color: #D1D5DB !important; border-radius: 1px !important; } #fv-chart-1766055751837-zg9wkkbik .fv-x-axis-unit { text-align: center !important; font-size: 14px !important; color: #6B7280 !important; margin-top: 8px !important; display: block !important; } #fv-chart-1766055751837-zg9wkkbik .fv-x-axis-title { text-align: center !important; font-size: 15px !important; color: #6B7280 !important; margin-top: 8px !important; margin-bottom: 16px !important; line-height: 1.5 !important; padding: 0 1rem !important; display: block !important; font-weight: bold !important; } #fv-chart-1766055751837-zg9wkkbik .fv-y-axis-title { font-size: 15px !important; color: #6B7280 !important; line-height: 1.5 !important; text-align: left !important; padding-left: 5.83% !important; /* Aligns with Y-axis line inside SVG (35/600) */ margin-bottom: 4px !important; display: block !important; font-weight: bold !important; } /* Mobile / Forced Mobile View */ #fv-chart-1766055751837-zg9wkkbik.mobile-view .fv-pie-container { flex-direction: column !important; gap: 1rem !important; } #fv-chart-1766055751837-zg9wkkbik.mobile-view .fv-grouped-product-title-wrapper { padding-left: 0 !important; } #fv-chart-1766055751837-zg9wkkbik.mobile-view .fv-bar-row, #fv-chart-1766055751837-zg9wkkbik.mobile-view .fv-stacked-product, #fv-chart-1766055751837-zg9wkkbik.mobile-view .fv-grouped-bar-product { flex-direction: column !important; align-items: flex-start !important; margin-bottom: 1.25rem !important; } #fv-chart-1766055751837-zg9wkkbik.mobile-view .fv-bar-label, #fv-chart-1766055751837-zg9wkkbik.mobile-view .fv-grouped-product-title { width: 100% !important; text-align: left !important; padding-right: 0 !important; margin-bottom: 0.25rem !important; font-size: 14px !important; font-weight: 700 !important; } #fv-chart-1766055751837-zg9wkkbik.mobile-view .fv-bar-container, #fv-chart-1766055751837-zg9wkkbik.mobile-view .fv-bar-cluster { width: 100% !important; } #fv-chart-1766055751837-zg9wkkbik.mobile-view .fv-x-axis-wrapper { margin-left: 0 !important; } #fv-chart-1766055751837-zg9wkkbik.mobile-view .fv-x-axis-label-space { display: none !important; } #fv-chart-1766055751837-zg9wkkbik.mobile-view .fv-x-axis-chart-space { padding-right: 0 !important; } #fv-chart-1766055751837-zg9wkkbik.mobile-view .fv-benchmark-title { font-size: 16px !important; } #fv-chart-1766055751837-zg9wkkbik.mobile-view .fv-logo { width: 60px !important; max-width: 60px !important; } #fv-chart-1766055751837-zg9wkkbik.mobile-view .fv-carousel-nav-btn { padding: 6px 8px !important; font-size: 11px !important; } @media (max-width: 500px) { #fv-chart-1766055751837-zg9wkkbik .fv-pie-container { flex-direction: column !important; gap: 1rem !important; } #fv-chart-1766055751837-zg9wkkbik .fv-grouped-product-title-wrapper { padding-left: 0 !important; } #fv-chart-1766055751837-zg9wkkbik .fv-bar-row, #fv-chart-1766055751837-zg9wkkbik .fv-stacked-product { flex-direction: column !important; align-items: flex-start !important; margin-bottom: 1.25rem !important; } #fv-chart-1766055751837-zg9wkkbik .fv-bar-label:not(.fv-grouped-product-title) { width: 100% !important; text-align: left !important; padding-right: 0 !important; margin-bottom: 0.25rem !important; font-size: 14px !important; font-weight: 700 !important; } #fv-chart-1766055751837-zg9wkkbik .fv-bar-container { width: 100% !important; } #fv-chart-1766055751837-zg9wkkbik .fv-x-axis-wrapper:not(.fv-grouped-x-axis) { margin-left: 0 !important; } #fv-chart-1766055751837-zg9wkkbik .fv-x-axis-label-space:not(.fv-grouped-x-axis .fv-x-axis-label-space) { display: none !important; } #fv-chart-1766055751837-zg9wkkbik .fv-x-axis-chart-space { padding-right: 0 !important; } #fv-chart-1766055751837-zg9wkkbik .fv-benchmark-title { font-size: 16px !important; } #fv-chart-1766055751837-zg9wkkbik .fv-logo { width: 60px !important; max-width: 60px !important; } #fv-chart-1766055751837-zg9wkkbik .fv-carousel-nav-btn { padding: 6px 8px !important; font-size: 11px !important; } #fv-chart-1766055751837-zg9wkkbik .fv-y-axis-title { padding-left: 5% !important; /* (30/600) for mobile view */ } #fv-chart-1766055751837-zg9wkkbik.fv-contains-line-chart .fv-footer-content { margin-left: -1rem !important; margin-right: -1rem !important; } } { "@context": "https://schema.org", "@type": "Dataset", "name": "WireGuard/fastest VPN protocol", "description": "Subhead to describe the test and what's being measured and why", "creator": { "@type": "Organization", "name": "TechRadar", "logo": "https://cdn.mos.cms.futurecdn.net/dAwPEozB9GMMhAngdFJTHb.png" }, "isAccessibleForFree": true, "dateCreated": "2025-12-18T11:02:31.837Z", "citation": "Add your caption to explain the data, the learnings and the key takeaways of the data being visualized", "keywords": [ "Surfshark (WireGuard)", "NordVPN (NordLynx)", "ExpressVPN (Lightway Turbo)", "ExpressVPN (WireGuard)", "Proton VPN (WireGuard)", "Download speed (local)", "Download speed (long distance)", "Jitter (local)", "Jitter (long distance)", "Latency (local)", "Latency (long distance)", "benchmark", "comparison", "performance", "review", "TechRadar" ], "measurementTechnique": "Performance Benchmarking", "variableMeasured": [ { "@type": "PropertyValue", "name": "Surfshark (WireGuard) – Download speed (local)", "value": 1615, "unitText": "Mbps" }, { "@type": "PropertyValue", "name": "NordVPN (NordLynx) – Download speed (local)", "value": 1256, "unitText": "Mbps" }, { "@type": "PropertyValue", "name": "ExpressVPN (Lightway Turbo) – Download speed (local)", "value": 1479, "unitText": "Mbps" }, { "@type": "PropertyValue", "name": "ExpressVPN (WireGuard) – Download speed (local)", "value": 694, "unitText": "Mbps" }, { "@type": "PropertyValue", "name": "Proton VPN (WireGuard) – Download speed (local)", "value": 1521, "unitText": "Mbps" }, { "@type": "PropertyValue", "name": "Surfshark (WireGuard) – Download speed (long distance)", "value": 355, "unitText": "Mbps" }, { "@type": "PropertyValue", "name": "NordVPN (NordLynx) – Download speed (long distance)", "value": 857, "unitText": "Mbps" }, { "@type": "PropertyValue", "name": "ExpressVPN (Lightway Turbo) – Download speed (long distance)", "value": 1374, "unitText": "Mbps" }, { "@type": "PropertyValue", "name": "ExpressVPN (WireGuard) – Download speed (long distance)", "value": 523, "unitText": "Mbps" }, { "@type": "PropertyValue", "name": "Proton VPN (WireGuard) – Download speed (long distance)", "value": 1242, "unitText": "Mbps" }, { "@type": "PropertyValue", "name": "Surfshark (WireGuard) – Jitter (local)", "value": 2.3, "unitText": "ms" }, { "@type": "PropertyValue", "name": "NordVPN (NordLynx) – Jitter (local)", "value": 2.4, "unitText": "ms" }, { "@type": "PropertyValue", "name": "ExpressVPN (Lightway Turbo) – Jitter (local)", "value": 5.3, "unitText": "ms" }, { "@type": "PropertyValue", "name": "ExpressVPN (WireGuard) – Jitter (local)", "value": 2.4, "unitText": "ms" }, { "@type": "PropertyValue", "name": "Proton VPN (WireGuard) – Jitter (local)", "value": 5.2, "unitText": "ms" }, { "@type": "PropertyValue", "name": "Surfshark (WireGuard) – Jitter (long distance)", "value": 27.5, "unitText": "ms" }, { "@type": "PropertyValue", "name": "NordVPN (NordLynx) – Jitter (long distance)", "value": 4.7, "unitText": "ms" }, { "@type": "PropertyValue", "name": "ExpressVPN (Lightway Turbo) – Jitter (long distance)", "value": 5.7, "unitText": "ms" }, { "@type": "PropertyValue", "name": "ExpressVPN (WireGuard) – Jitter (long distance)", "value": 2.3, "unitText": "ms" }, { "@type": "PropertyValue", "name": "Proton VPN (WireGuard) – Jitter (long distance)", "value": 28.3, "unitText": "ms" }, { "@type": "PropertyValue", "name": "Surfshark (WireGuard) – Latency (local)", "value": 21.7, "unitText": "ms" }, { "@type": "PropertyValue", "name": "NordVPN (NordLynx) – Latency (local)", "value": 17.2, "unitText": "ms" }, { "@type": "PropertyValue", "name": "ExpressVPN (Lightway Turbo) – Latency (local)", "value": 14.8, "unitText": "ms" }, { "@type": "PropertyValue", "name": "ExpressVPN (WireGuard) – Latency (local)", "value": 13.6, "unitText": "ms" }, { "@type": "PropertyValue", "name": "Proton VPN (WireGuard) – Latency (local)", "value": 21.7, "unitText": "ms" }, { "@type": "PropertyValue", "name": "Surfshark (WireGuard) – Latency (long distance)", "value": 171, "unitText": "ms" }, { "@type": "PropertyValue", "name": "NordVPN (NordLynx) – Latency (long distance)", "value": 83, "unitText": "ms" }, { "@type": "PropertyValue", "name": "ExpressVPN (Lightway Turbo) – Latency (long distance)", "value": 75, "unitText": "ms" }, { "@type": "PropertyValue", "name": "ExpressVPN (WireGuard) – Latency (long distance)", "value": 72.1, "unitText": "ms" }, { "@type": "PropertyValue", "name": "Proton VPN (WireGuard) – Latency (long distance)", "value": 90.6, "unitText": "ms" } ]} WireGuard/fastest VPN protocol

< Prev Download speed (local) Next > Surfshark (WireGuard) 1615 NordVPN (NordLynx) 1256 ExpressVPN (Lightway Turbo) 1479 ExpressVPN (WireGuard) 694 Proton VPN (WireGuard) 1521 05001,0001,5002,000 Mbps Download speed (local) Data ProductValue (Mbps) Surfshark (WireGuard) 1615 NordVPN (NordLynx) 1256 ExpressVPN (Lightway Turbo) 1479 ExpressVPN (WireGuard) 694 Proton VPN (WireGuard) 1521 Surfshark (WireGuard) 355 NordVPN (NordLynx) 857 ExpressVPN (Lightway Turbo) 1374 ExpressVPN (WireGuard) 523 Proton VPN (WireGuard) 1242 03757501,1251,500 Mbps Download speed (long distance) Data ProductValue (Mbps) Surfshark (WireGuard) 355 NordVPN (NordLynx) 857 ExpressVPN (Lightway Turbo) 1374 ExpressVPN (WireGuard) 523 Proton VPN (WireGuard) 1242 Surfshark (WireGuard) 2.3 NordVPN (NordLynx) 2.4 ExpressVPN (Lightway Turbo) 5.3 ExpressVPN (WireGuard) 2.4 Proton VPN (WireGuard) 5.2 01.534.56 ms Jitter (local) Data ProductValue (ms) Surfshark (WireGuard) 2.3 NordVPN (NordLynx) 2.4 ExpressVPN (Lightway Turbo) 5.3 ExpressVPN (WireGuard) 2.4 Proton VPN (WireGuard) 5.2 Surfshark (WireGuard) 27.5 NordVPN (NordLynx) 4.7 ExpressVPN (Lightway Turbo) 5.7 ExpressVPN (WireGuard) 2.3 Proton VPN (WireGuard) 28.3 07.51522.530 ms Jitter (long distance) Data ProductValue (ms) Surfshark (WireGuard) 27.5 NordVPN (NordLynx) 4.7 ExpressVPN (Lightway Turbo) 5.7 ExpressVPN (WireGuard) 2.3 Proton VPN (WireGuard) 28.3 Surfshark (WireGuard) 21.7 NordVPN (NordLynx) 17.2 ExpressVPN (Lightway Turbo) 14.8 ExpressVPN (WireGuard) 13.6 Proton VPN (WireGuard) 21.7 07.51522.530 ms Latency (local) Data ProductValue (ms) Surfshark (WireGuard) 21.7 NordVPN (NordLynx) 17.2 ExpressVPN (Lightway Turbo) 14.8 ExpressVPN (WireGuard) 13.6 Proton VPN (WireGuard) 21.7 Surfshark (WireGuard) 171 NordVPN (NordLynx) 83 ExpressVPN (Lightway Turbo) 75 ExpressVPN (WireGuard) 72.1 Proton VPN (WireGuard) 90.6 050100150200 ms Latency (long distance) Data ProductValue (ms) Surfshark (WireGuard) 171 NordVPN (NordLynx) 83 ExpressVPN (Lightway Turbo) 75 ExpressVPN (WireGuard) 72.1 Proton VPN (WireGuard) 90.6 1 of 6 Proton VPN is very fast using WireGuard over any distance on its server network. (function() { function initialize() { var chartWrapper = document.getElementById('fv-chart-1766055751837-zg9wkkbik'); if (!chartWrapper) { console.error('Chart wrapper with ID fv-chart-1766055751837-zg9wkkbik not found.'); return; } function animateBars(chartElement) { if (!chartElement) return; var bars = chartElement.querySelectorAll('.fv-bar, .fv-stacked-segment'); bars.forEach(function(bar, index) { var targetWidth = bar.dataset.targetWidth; if (targetWidth === undefined) return; // Bars start at width: 0% in HTML, so we just animate them setTimeout(function() { bar.style.width = targetWidth + '%'; }, index * 50 + 100); }); } function animateLineChart(chartElement) { if (!chartElement) return; var lineSvg = chartElement.querySelector('svg'); if (!lineSvg) return; var paths = lineSvg.querySelectorAll('.riv-line-path'); paths.forEach(function(p, i) { if (typeof p.getTotalLength === 'function') { var len = p.getTotalLength(); p.style.transition = 'none'; p.style.strokeDasharray = len; p.style.strokeDashoffset = len; p.getBoundingClientRect(); setTimeout(function() { p.style.transition = 'stroke-dashoffset 1s ease-out ' + (i * 0.1) + 's'; p.style.strokeDashoffset = '0'; }, 100); } }); var dots = lineSvg.querySelectorAll('.riv-dot'); dots.forEach(function(dot, i) { dot.style.opacity = '0'; setTimeout(function() { dot.style.transition = 'opacity 0.3s ease'; dot.style.opacity = '1'; }, 500 + i * 10); }); } var charts = chartWrapper.querySelectorAll('.fv-chart-item'); // Animate initial view if ("Carousel" === "All Charts") { charts.forEach(function(chart) { var chartType = chart.dataset.chartType; if (chartType === 'Line') { animateLineChart(chart); } else if (chartType !== 'Pie') { animateBars(chart); } }); } else if (charts.length > 0) { var firstChart = charts[0]; var firstChartType = firstChart.dataset.chartType; if (firstChartType === 'Line') { animateLineChart(firstChart); } else if (firstChartType !== 'Pie') { animateBars(firstChart); } } if (charts.length > 1 && "Carousel" !== "All Charts") { var currentChartIndex = 0; var subheadEl = chartWrapper.querySelector('.fv-chart-subhead'); var captionEl = chartWrapper.querySelector('.rv-chart-caption'); var placeholderSubhead = "Subhead to describe the test and what's being measured and why"; var placeholderCaption = "Add your caption to explain the data, the learnings and the key takeaways of the data being visualized"; var globalSubheadJSON = "Subhead to describe the test and what's being measured and why"; var globalCaptionJSON = "Add your caption to explain the data, the learnings and the key takeaways of the data being visualized"; var globalSubhead = globalSubheadJSON === placeholderSubhead ? '' : globalSubheadJSON; var globalCaption = globalCaptionJSON === placeholderCaption ? '' : globalCaptionJSON; var subheadOverrides = {"bar-Download speed (long distance)":"Performance of the fastest available protocol for each VPN – speed, latency and jitter"}; var captionOverrides = {"bar-Download speed (long distance)":"Proton VPN holds its average download speeds far better than any other VPN when connecting to distant servers.","bar-Download speed (local)":"Proton VPN is very fast using WireGuard over any distance on its server network.","bar-Jitter (local)":"Proton VPN did record the highest jitter levels, however.","bar-Jitter (long distance)":"The high levels of jitter for Proton VPN might cause some issues when streaming or gaming on WireGuard.","bar-Latency (local)":"Fortunately, Proton VPN was comparable for latency levels.","bar-Latency (long distance)":"The solid latency levels from Proton VPN should mean those streaming and gaming won't experience lag."}; var chartInfo = [{"id":"bar-Download speed (local)","title":"Download speed (local)"},{"id":"bar-Download speed (long distance)","title":"Download speed (long distance)"},{"id":"bar-Jitter (local)","title":"Jitter (local)"},{"id":"bar-Jitter (long distance)","title":"Jitter (long distance)"},{"id":"bar-Latency (local)","title":"Latency (local)"},{"id":"bar-Latency (long distance)","title":"Latency (long distance)"}]; var captionOverrideKeys = Object.keys(captionOverrides); var singleCaptionOverrideValue = captionOverrideKeys.length === 1 ? captionOverrides[captionOverrideKeys[0]] : null; if (singleCaptionOverrideValue === placeholderCaption) { singleCaptionOverrideValue = ''; } function showChart(index) { if (index < 0 || index >= charts.length) return; charts.forEach(function(chart, i) { chart.style.display = i === index ? 'block' : 'none'; }); currentChartIndex = index; var activeChart = charts[index]; var chartType = activeChart.dataset.chartType; if (chartType === 'Line') { animateLineChart(activeChart); } else if (chartType !== 'Pie') { animateBars(activeChart); } var activeChartId = chartInfo[index].id; if (subheadEl) { var subheadContent = (subheadOverrides[activeChartId] !== undefined) ? (subheadOverrides[activeChartId] === placeholderSubhead ? '' : subheadOverrides[activeChartId]) : globalSubhead; subheadEl.innerHTML = subheadContent; } if (captionEl) { var captionContent; if (captionOverrides[activeChartId] !== undefined) { captionContent = captionOverrides[activeChartId] === placeholderCaption ? '' : captionOverrides[activeChartId]; } else if (singleCaptionOverrideValue !== null) { captionContent = singleCaptionOverrideValue; } else { captionContent = globalCaption; } captionEl.innerHTML = captionContent; var captionContainer = captionEl.closest('.fv-footer-content'); if (captionContainer) { var hasContent = captionContent && captionContent.trim() !== ''; var shouldShow = hasContent || (captionContainer.parentElement && captionContainer.parentElement.querySelector('.fv-logo')); if (captionContainer.parentElement) captionContainer.parentElement.style.display = shouldShow ? 'flex' : 'none'; captionContainer.style.display = hasContent ? 'block' : 'none'; } } var dropdown = chartWrapper.querySelector('.fv-dropdown'); if (dropdown) dropdown.value = index; var carouselTitle = chartWrapper.querySelector('.fv-carousel-title-controls .fv-benchmark-title'); if (carouselTitle) carouselTitle.innerHTML = chartInfo[index].title; var counter = chartWrapper.querySelector('.fv-carousel-counter'); if (counter) counter.textContent = (index + 1) + ' of ' + charts.length; } var dropdown = chartWrapper.querySelector('.fv-dropdown'); if (dropdown) dropdown.addEventListener('change', function(e) { showChart(parseInt(e.target.value)) }); var prevBtn = chartWrapper.querySelector('.fv-carousel-nav-btn.prev'); if (prevBtn) prevBtn.addEventListener('click', function() { showChart((currentChartIndex - 1 + charts.length) % charts.length) }); var nextBtn = chartWrapper.querySelector('.fv-carousel-nav-btn.next'); if (nextBtn) nextBtn.addEventListener('click', function() { showChart((currentChartIndex + 1) % charts.length) }); } chartWrapper.querySelectorAll('.riv-line-legend').forEach(function(legend) { var chartId = legend.dataset.chart; var chart = document.getElementById(chartId); // Uses page-unique ID if (!chart) return; var lines = chart.querySelectorAll('.riv-line-path'); var dots = chart.querySelectorAll('.riv-dot'); legend.querySelectorAll('.riv-legend-item').forEach(function(item) { var productName = item.dataset.product; var line = chart.querySelector('.riv-line-path[data-product="' + productName + '"]'); var productDots = chart.querySelectorAll('.riv-dot[data-product="' + productName + '"]'); var highlight = function() { if (legend.querySelector('.isolated')) return; lines.forEach(function(l) { l.style.opacity = '0.3' }); dots.forEach(function(d) { d.style.opacity = '0.3' }); if (line) line.style.opacity = '1'; productDots.forEach(function(d) { d.style.opacity = '1' }); }; var clearHighlight = function() { if (legend.querySelector('.isolated')) return; lines.forEach(function(l) { l.style.opacity = '1' }); dots.forEach(function(d) { d.style.opacity = '1' }); }; var toggleIsolate = function() { var isIsolated = item.classList.contains('isolated'); legend.querySelectorAll('.riv-legend-item').forEach(function(i) { i.classList.remove('isolated') }); if (isIsolated) { lines.forEach(function(l) { l.style.opacity = '1' }); dots.forEach(function(d) { d.style.opacity = '1' }); } else { item.classList.add('isolated'); lines.forEach(function(l) { l.style.opacity = '0.3' }); dots.forEach(function(d) { d.style.opacity = '0.3' }); if (line) line.style.opacity = '1'; productDots.forEach(function(d) { d.style.opacity = '1' }); } }; item.addEventListener('mouseenter', highlight); item.addEventListener('focus', highlight); item.addEventListener('mouseleave', clearHighlight); item.addEventListener('blur', clearHighlight); item.addEventListener('click', toggleIsolate); item.addEventListener('keydown', function(e) { if (e.key === 'Enter' || e.key === ' ') { e.preventDefault(); toggleIsolate(); } }); }); }); } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initialize); } else { initialize(); } function sendMessageToParentWindow(typeOfMessage, message = null) { let url = (window.location.ancestorOrigins && window.location.ancestorOrigins.length > 0) ? window.location.ancestorOrigins[0] : '*'; window.parent.postMessage({ analytics: { ...message } }, url); } sendMessageToParentWindow('analytics', { type: "fv-loaded", timestamp: new Date().toISOString() }); })();

Having previously recorded only 871 Mbps, Proton now hits an impressive 1475 Mbps download speed using WireGuard over a short-distance connection.

What’s more, when connecting to the US from the UK (i.e. over long distance) using WireGuard, Proton VPN's download speeds have leapt from 436 Mbps to a staggering 1548 Mbps this time round, making it the fastest performer in this test and easily beating ExpressVPN's Lightway Turbo.

Read more about Proton VPN's performance ▼

Both of these results are more than fast enough for any household looking to protect a Netflix binge, gaming session, or just their emails. Among top VPNs, Proton actually takes the top spot for outright speed on short-distance connections (1475 Mbps), comfortably beating out Surfshark (1021 Mbps).

This lead continues over long distances, where Surfshark's respectable 935 Mbps UK to US connection is still nothing like as quick as Proton VPN's staggering 1548 Mbps.

Additionally, gamers will be pleased to know that Proton recorded very stable jitter in our most recent test (16.8ms and 17.8ms on WireGuard).

While for most these figures won't mean much, gamers should take note, since high jitter can contribute to inconsistent online gaming — a trap some competitors fell into this round. Fortunately, Proton VPN's latency recordings were also highly competitive and comparable with the other best VPNs.

@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700&display=swap'); #fv-chart-1766054351107-296h633e6 *, #fv-chart-1766054351107-296h633e6 *:before, #fv-chart-1766054351107-296h633e6 *:after { box-sizing: border-box !important; margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; } #fv-chart-1766054351107-296h633e6 { font-family: 'Open Sans', sans-serif !important; } /* Main Wrappers */ #fv-chart-1766054351107-296h633e6 { position: relative !important; overflow: visible !important; --riv-primary: #2E6E93; } #fv-chart-1766054351107-296h633e6 .fv-inner-wrapper { color: #1F2937 !important; background-color: #ffffff !important; padding: 1.5rem 1.5rem 2rem !important; border-radius: 0.5rem !important; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important; margin: 1rem 0 !important; display: flex !important; flex-direction: column !important; } /* Typography */ #fv-chart-1766054351107-296h633e6 .fv-chart-title { font-weight: bold !important; text-align: center !important; margin-bottom: 0.5rem !important; color: #1F2937 !important; font-size: 1.25rem !important; line-height: 1.2 !important; font-family: 'Open Sans', sans-serif !important; text-transform: none !important; } #fv-chart-1766054351107-296h633e6 .fv-chart-subhead { font-size: 1rem !important; font-weight: 500 !important; text-align: center !important; margin-bottom: 2rem !important; color: #6B7280 !important; line-height: 1.7 !important; font-family: 'Open Sans', sans-serif !important; display: block !important; text-transform: none !important; } #fv-chart-1766054351107-296h633e6 .rv-chart-caption { font-size: 15px !important; color: #6B7280 !important; text-align: center !important; font-style: normal !important; font-weight: normal !important; line-height: 1.7 !important; font-family: 'Open Sans', sans-serif !important; display: block !important; } #fv-chart-1766054351107-296h633e6 .sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; } /* Footer */ #fv-chart-1766054351107-296h633e6 .fv-bottom-bar { display: flex !important; flex-direction: column !important; align-items: center !important; margin-top: 0.5rem !important; gap: 1rem !important; } #fv-chart-1766054351107-296h633e6 .fv-footer-content { text-align: center !important; width: 100% !important; } #fv-chart-1766054351107-296h633e6 .fv-logo { display: block !important; margin: 0 auto !important; width: 120px !important; max-width: 120px !important; height: auto !important; object-fit: contain !important; } /* Display Mode Controls */ #fv-chart-1766054351107-296h633e6 .fv-dropdown-container { text-align: center !important; margin-bottom: 16px !important; } #fv-chart-1766054351107-296h633e6 .fv-dropdown { width: 100% !important; max-width: 350px !important; padding: 8px 12px !important; font-size: 14px !important; line-height: 1.2 !important; border: 2px solid #d1d5db !important; border-radius: 8px !important; background-color: #ffffff !important; color: #374151 !important; cursor: pointer !important; appearance: none !important; background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e") !important; background-position: right 12px center !important; background-repeat: no-repeat !important; background-size: 14px !important; padding-right: 35px !important; font-family: 'Open Sans', sans-serif !important; } #fv-chart-1766054351107-296h633e6 .fv-dropdown:hover { border-color: var(--riv-primary) !important; } #fv-chart-1766054351107-296h633e6 .fv-carousel-title-controls { display: flex !important; justify-content: space-between !important; align-items: center !important; margin-bottom: 16px !important; width: 100% !important; gap: 12px !important; } #fv-chart-1766054351107-296h633e6 .fv-carousel-nav-btn { background: transparent !important; border: 1px solid #d1d5db !important; border-radius: 6px !important; padding: 6px 10px !important; cursor: pointer !important; font-size: 13px !important; color: #6b7280 !important; display: flex !important; align-items: center !important; gap: 4px !important; font-family: 'Open Sans', sans-serif !important; } #fv-chart-1766054351107-296h633e6 .fv-carousel-nav-btn:hover { border-color: #9ca3af !important; } #fv-chart-1766054351107-296h633e6 .fv-carousel-counter { font-size: 14px !important; color: #6b7280 !important; text-align: center !important; margin-top: 1rem !important; } /* Legend */ #fv-chart-1766054351107-296h633e6 .fv-legend { display: flex !important; justify-content: center !important; flex-wrap: wrap !important; gap: 8px 16px !important; margin: 0 !important; padding: 0 !important; margin-top: 1rem !important; } #fv-chart-1766054351107-296h633e6 .fv-legend-item { display: flex !important; align-items: center !important; gap: 6px !important; font-size: 14px !important; color: #4B5563 !important; } #fv-chart-1766054351107-296h633e6 .fv-legend-color { width: 12px !important; height: 12px !important; border-radius: 3px !important; } /* Chart Core Styles */ #fv-chart-1766054351107-296h633e6 .fv-benchmark-group { margin-bottom: 1rem !important; } #fv-chart-1766054351107-296h633e6 .fv-benchmark-title { font-size: 18px !important; font-weight: 600 !important; margin-bottom: 16px !important; margin-top: 0 !important; padding: 0 !important; text-align: center !important; color: var(--riv-primary) !important; flex: 1 !important; min-width: 0 !important; font-family: 'Open Sans', sans-serif !important; line-height: 1.3 !important; text-transform: none !important; } #fv-chart-1766054351107-296h633e6 .fv-bar-row, #fv-chart-1766054351107-296h633e6 .fv-stacked-product { display: flex !important; align-items: center !important; width: 100% !important; margin-bottom: 0.75rem !important; } #fv-chart-1766054351107-296h633e6 .fv-bar-label { width: 150px !important; flex-shrink: 0 !important; font-size: 14px !important; color: #4B5563 !important; padding-right: 10px !important; text-align: right !important; font-weight: 500 !important; display: block !important; } #fv-chart-1766054351107-296h633e6 .fv-bar-container { flex-grow: 1 !important; background-color: #E5E7EB !important; border-radius: 4px !important; height: 25px !important; border: 1px solid #D1D5DB !important; position: relative !important; display: flex !important; align-items: center !important; } #fv-chart-1766054351107-296h633e6 .fv-bar { height: 100% !important; border-radius: 3px !important; display: flex !important; align-items: center !important; transition: opacity 0.2s ease, width 0.8s ease-out !important; } #fv-chart-1766054351107-296h633e6 .fv-bar:hover { opacity: 0.8 !important; } #fv-chart-1766054351107-296h633e6 .fv-bar-inner-content { display: flex !important; justify-content: space-between !important; align-items: center !important; width: 100% !important; height: 100% !important; padding: 0 8px !important; color: white !important; font-size: 14px !important; font-weight: bold !important; text-shadow: 1px 1px 1px rgba(0,0,0,0.3) !important; overflow: hidden !important; } #fv-chart-1766054351107-296h633e6 .fv-bar-inner-label { white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; padding-right: 8px !important; } #fv-chart-1766054351107-296h633e6 .fv-bar-inner-value { flex-shrink: 0 !important; } #fv-chart-1766054351107-296h633e6 .fv-bar-value-outside { padding-left: 8px !important; font-size: 14px !important; font-weight: bold !important; color: #4B5563 !important; white-space: nowrap !important; } #fv-chart-1766054351107-296h633e6 .fv-bar-label.fv-primary-product { font-weight: bold !important; color: var(--riv-primary) !important; } /* Stacked Bar */ #fv-chart-1766054351107-296h633e6 .fv-stacked-bar { display: flex !important; overflow: hidden !important; } #fv-chart-1766054351107-296h633e6 .fv-stacked-segment { height: 100% !important; display: flex !important; align-items: center !important; justify-content: flex-end !important; padding-right: 8px !important; border-right: 1px solid rgba(255,255,255,0.3) !important; } #fv-chart-1766054351107-296h633e6 .fv-stacked-segment:last-child { border-right: none !important; } #fv-chart-1766054351107-296h633e6 .fv-segment-value { font-size: 14px !important; font-weight: bold !important; color: white !important; text-shadow: 1px 1px 1px rgba(0,0,0,0.3) !important; } /* Grouped Bar */ #fv-chart-1766054351107-296h633e6 .fv-grouped-bar-product { display: flex !important; flex-direction: column !important; width: 100% !important; margin-bottom: 1.25rem !important; } #fv-chart-1766054351107-296h633e6 .fv-grouped-product-title-wrapper { padding-left: 150px !important; } #fv-chart-1766054351107-296h633e6 .fv-grouped-product-title { width: 100% !important; text-align: left !important; padding-right: 0 !important; margin-bottom: 0.5rem !important; font-weight: 700 !important; font-size: 14px !important; color: #4B5563 !important; text-transform: none !important; } #fv-chart-1766054351107-296h633e6 .fv-bar-cluster { width: 100% !important; flex-grow: 1 !important; display: flex !important; flex-direction: column !important; } #fv-chart-1766054351107-296h633e6 .fv-bar-cluster .fv-bar-row { margin-bottom: 3px !important; } #fv-chart-1766054351107-296h633e6 .fv-bar-cluster .fv-bar-container { height: 20px !important; } /* Line Chart Grid */ #fv-chart-1766054351107-296h633e6 .riv-grid line { stroke: #D1D5DB !important; stroke-dasharray: 3 3 !important; } /* X-Axis */ #fv-chart-1766054351107-296h633e6 .fv-x-axis-wrapper { display: flex !important; width: 100% !important; margin-top: 0.5rem !important; } #fv-chart-1766054351107-296h633e6 .fv-x-axis-label-space { width: 150px !important; padding-right: 10px !important; flex-shrink: 0 !important; } #fv-chart-1766054351107-296h633e6 .fv-x-axis-chart-space { flex-grow: 1 !important; padding-right: 8px !important; } #fv-chart-1766054351107-296h633e6 .fv-x-axis-wrapper.fv-grouped-x-axis { margin-left: 0 !important; } #fv-chart-1766054351107-296h633e6 .fv-x-axis-line { border-top: 1px solid #D1D5DB !important; } #fv-chart-1766054351107-296h633e6 .fv-x-axis-ticks { display: flex !important; justify-content: space-between !important; padding-top: 4px !important; font-size: 13px !important; color: #6B7280 !important; } #fv-chart-1766054351107-296h633e6 .fv-x-axis-ticks span { position: relative !important; } #fv-chart-1766054351107-296h633e6 .fv-x-axis-ticks span::before { content: '' !important; position: absolute !important; top: -6px !important; left: 50% !important; transform: translateX(-50%) !important; width: 2px !important; height: 4px !important; background-color: #D1D5DB !important; border-radius: 1px !important; } #fv-chart-1766054351107-296h633e6 .fv-x-axis-unit { text-align: center !important; font-size: 14px !important; color: #6B7280 !important; margin-top: 8px !important; display: block !important; } #fv-chart-1766054351107-296h633e6 .fv-x-axis-title { text-align: center !important; font-size: 15px !important; color: #6B7280 !important; margin-top: 8px !important; margin-bottom: 16px !important; line-height: 1.5 !important; padding: 0 1rem !important; display: block !important; font-weight: bold !important; } #fv-chart-1766054351107-296h633e6 .fv-y-axis-title { font-size: 15px !important; color: #6B7280 !important; line-height: 1.5 !important; text-align: left !important; padding-left: 5.83% !important; /* Aligns with Y-axis line inside SVG (35/600) */ margin-bottom: 4px !important; display: block !important; font-weight: bold !important; } /* Mobile / Forced Mobile View */ #fv-chart-1766054351107-296h633e6.mobile-view .fv-pie-container { flex-direction: column !important; gap: 1rem !important; } #fv-chart-1766054351107-296h633e6.mobile-view .fv-grouped-product-title-wrapper { padding-left: 0 !important; } #fv-chart-1766054351107-296h633e6.mobile-view .fv-bar-row, #fv-chart-1766054351107-296h633e6.mobile-view .fv-stacked-product, #fv-chart-1766054351107-296h633e6.mobile-view .fv-grouped-bar-product { flex-direction: column !important; align-items: flex-start !important; margin-bottom: 1.25rem !important; } #fv-chart-1766054351107-296h633e6.mobile-view .fv-bar-label, #fv-chart-1766054351107-296h633e6.mobile-view .fv-grouped-product-title { width: 100% !important; text-align: left !important; padding-right: 0 !important; margin-bottom: 0.25rem !important; font-size: 14px !important; font-weight: 700 !important; } #fv-chart-1766054351107-296h633e6.mobile-view .fv-bar-container, #fv-chart-1766054351107-296h633e6.mobile-view .fv-bar-cluster { width: 100% !important; } #fv-chart-1766054351107-296h633e6.mobile-view .fv-x-axis-wrapper { margin-left: 0 !important; } #fv-chart-1766054351107-296h633e6.mobile-view .fv-x-axis-label-space { display: none !important; } #fv-chart-1766054351107-296h633e6.mobile-view .fv-x-axis-chart-space { padding-right: 0 !important; } #fv-chart-1766054351107-296h633e6.mobile-view .fv-benchmark-title { font-size: 16px !important; } #fv-chart-1766054351107-296h633e6.mobile-view .fv-logo { width: 60px !important; max-width: 60px !important; } #fv-chart-1766054351107-296h633e6.mobile-view .fv-carousel-nav-btn { padding: 6px 8px !important; font-size: 11px !important; } @media (max-width: 500px) { #fv-chart-1766054351107-296h633e6 .fv-pie-container { flex-direction: column !important; gap: 1rem !important; } #fv-chart-1766054351107-296h633e6 .fv-grouped-product-title-wrapper { padding-left: 0 !important; } #fv-chart-1766054351107-296h633e6 .fv-bar-row, #fv-chart-1766054351107-296h633e6 .fv-stacked-product { flex-direction: column !important; align-items: flex-start !important; margin-bottom: 1.25rem !important; } #fv-chart-1766054351107-296h633e6 .fv-bar-label:not(.fv-grouped-product-title) { width: 100% !important; text-align: left !important; padding-right: 0 !important; margin-bottom: 0.25rem !important; font-size: 14px !important; font-weight: 700 !important; } #fv-chart-1766054351107-296h633e6 .fv-bar-container { width: 100% !important; } #fv-chart-1766054351107-296h633e6 .fv-x-axis-wrapper:not(.fv-grouped-x-axis) { margin-left: 0 !important; } #fv-chart-1766054351107-296h633e6 .fv-x-axis-label-space:not(.fv-grouped-x-axis .fv-x-axis-label-space) { display: none !important; } #fv-chart-1766054351107-296h633e6 .fv-x-axis-chart-space { padding-right: 0 !important; } #fv-chart-1766054351107-296h633e6 .fv-benchmark-title { font-size: 16px !important; } #fv-chart-1766054351107-296h633e6 .fv-logo { width: 60px !important; max-width: 60px !important; } #fv-chart-1766054351107-296h633e6 .fv-carousel-nav-btn { padding: 6px 8px !important; font-size: 11px !important; } #fv-chart-1766054351107-296h633e6 .fv-y-axis-title { padding-left: 5% !important; /* (30/600) for mobile view */ } #fv-chart-1766054351107-296h633e6.fv-contains-line-chart .fv-footer-content { margin-left: -1rem !important; margin-right: -1rem !important; } } { "@context": "https://schema.org", "@type": "Dataset", "name": "OpenVPN performance", "description": "Subhead to describe the test and what's being measured and why", "creator": { "@type": "Organization", "name": "TechRadar", "logo": "https://cdn.mos.cms.futurecdn.net/dAwPEozB9GMMhAngdFJTHb.png" }, "isAccessibleForFree": true, "dateCreated": "2025-12-18T10:39:11.107Z", "citation": "Add your caption to explain the data, the learnings and the key takeaways of the data being visualized", "keywords": [ "Surfshark", "NordVPN", "ExpressVPN", "Proton VPN", "OpenVPN speed (local)", "OpenVPN speed (long distance)", "OpenVPN latency (local)", "OpenVPN latency (long distance)", "OpenVPN jitter (local)", "OpenVPN jitter (long distance)", "benchmark", "comparison", "performance", "review", "TechRadar" ], "measurementTechnique": "Performance Benchmarking", "variableMeasured": [ { "@type": "PropertyValue", "name": "Surfshark – OpenVPN speed (local)", "value": 978, "unitText": "Mbps" }, { "@type": "PropertyValue", "name": "NordVPN – OpenVPN speed (local)", "value": 974, "unitText": "Mbps" }, { "@type": "PropertyValue", "name": "ExpressVPN – OpenVPN speed (local)", "value": 1038, "unitText": "Mbps" }, { "@type": "PropertyValue", "name": "Proton VPN – OpenVPN speed (local)", "value": 240, "unitText": "Mbps" }, { "@type": "PropertyValue", "name": "Surfshark – OpenVPN speed (long distance)", "value": 430, "unitText": "Mbps" }, { "@type": "PropertyValue", "name": "NordVPN – OpenVPN speed (long distance)", "value": 857, "unitText": "Mbps" }, { "@type": "PropertyValue", "name": "ExpressVPN – OpenVPN speed (long distance)", "value": 808, "unitText": "Mbps" }, { "@type": "PropertyValue", "name": "Proton VPN – OpenVPN speed (long distance)", "value": 173, "unitText": "Mbps" }, { "@type": "PropertyValue", "name": "Surfshark – OpenVPN latency (local)", "value": 33.4, "unitText": "ms" }, { "@type": "PropertyValue", "name": "NordVPN – OpenVPN latency (local)", "value": 14.6, "unitText": "ms" }, { "@type": "PropertyValue", "name": "ExpressVPN – OpenVPN latency (local)", "value": 15.5, "unitText": "ms" }, { "@type": "PropertyValue", "name": "Proton VPN – OpenVPN latency (local)", "value": 14.7, "unitText": "ms" }, { "@type": "PropertyValue", "name": "Surfshark – OpenVPN latency (long distance)", "value": 174, "unitText": "ms" }, { "@type": "PropertyValue", "name": "NordVPN – OpenVPN latency (long distance)", "value": 83, "unitText": "ms" }, { "@type": "PropertyValue", "name": "ExpressVPN – OpenVPN latency (long distance)", "value": 73.5, "unitText": "ms" }, { "@type": "PropertyValue", "name": "Proton VPN – OpenVPN latency (long distance)", "value": 73.8, "unitText": "ms" }, { "@type": "PropertyValue", "name": "Surfshark – OpenVPN jitter (local)", "value": 9.8, "unitText": "ms" }, { "@type": "PropertyValue", "name": "NordVPN – OpenVPN jitter (local)", "value": 4.2, "unitText": "ms" }, { "@type": "PropertyValue", "name": "ExpressVPN – OpenVPN jitter (local)", "value": 6.8, "unitText": "ms" }, { "@type": "PropertyValue", "name": "Proton VPN – OpenVPN jitter (local)", "value": 7.3, "unitText": "ms" }, { "@type": "PropertyValue", "name": "Surfshark – OpenVPN jitter (long distance)", "value": 15.9, "unitText": "ms" }, { "@type": "PropertyValue", "name": "NordVPN – OpenVPN jitter (long distance)", "value": 4.7, "unitText": "ms" }, { "@type": "PropertyValue", "name": "ExpressVPN – OpenVPN jitter (long distance)", "value": 11.5, "unitText": "ms" }, { "@type": "PropertyValue", "name": "Proton VPN – OpenVPN jitter (long distance)", "value": 8.1, "unitText": "ms" } ]} OpenVPN performance

Average download speeds, latency and jitter rates on local and long distance server connections.

< Prev OpenVPN speed (local) Next > Surfshark 978 NordVPN 974 ExpressVPN 1038 Proton VPN 240 03757501,1251,500 Mbps OpenVPN speed (local) Data ProductValue (Mbps) Surfshark 978 NordVPN 974 ExpressVPN 1038 Proton VPN 240 Surfshark 430 NordVPN 857 ExpressVPN 808 Proton VPN 173 02505007501,000 Mbps OpenVPN speed (long distance) Data ProductValue (Mbps) Surfshark 430 NordVPN 857 ExpressVPN 808 Proton VPN 173 Surfshark 33.4 NordVPN 14.6 ExpressVPN 15.5 Proton VPN 14.7 010203040 ms OpenVPN latency (local) Data ProductValue (ms) Surfshark 33.4 NordVPN 14.6 ExpressVPN 15.5 Proton VPN 14.7 Surfshark 174 NordVPN 83 ExpressVPN 73.5 Proton VPN 73.8 050100150200 ms OpenVPN latency (long distance) Data ProductValue (ms) Surfshark 174 NordVPN 83 ExpressVPN 73.5 Proton VPN 73.8 Surfshark 9.8 NordVPN 4.2 ExpressVPN 6.8 Proton VPN 7.3 02.557.510 ms OpenVPN jitter (local) Data ProductValue (ms) Surfshark 9.8 NordVPN 4.2 ExpressVPN 6.8 Proton VPN 7.3 Surfshark 15.9 NordVPN 4.7 ExpressVPN 11.5 Proton VPN 8.1 05101520 ms OpenVPN jitter (long distance) Data ProductValue (ms) Surfshark 15.9 NordVPN 4.7 ExpressVPN 11.5 Proton VPN 8.1 1 of 6 Proton VPN is way behind the other top VPNs for OpenVPN speeds, even when connecting to the nearest server to our lab. (function() { function initialize() { var chartWrapper = document.getElementById('fv-chart-1766054351107-296h633e6'); if (!chartWrapper) { console.error('Chart wrapper with ID fv-chart-1766054351107-296h633e6 not found.'); return; } function animateBars(chartElement) { if (!chartElement) return; var bars = chartElement.querySelectorAll('.fv-bar, .fv-stacked-segment'); bars.forEach(function(bar, index) { var targetWidth = bar.dataset.targetWidth; if (targetWidth === undefined) return; // Bars start at width: 0% in HTML, so we just animate them setTimeout(function() { bar.style.width = targetWidth + '%'; }, index * 50 + 100); }); } function animateLineChart(chartElement) { if (!chartElement) return; var lineSvg = chartElement.querySelector('svg'); if (!lineSvg) return; var paths = lineSvg.querySelectorAll('.riv-line-path'); paths.forEach(function(p, i) { if (typeof p.getTotalLength === 'function') { var len = p.getTotalLength(); p.style.transition = 'none'; p.style.strokeDasharray = len; p.style.strokeDashoffset = len; p.getBoundingClientRect(); setTimeout(function() { p.style.transition = 'stroke-dashoffset 1s ease-out ' + (i * 0.1) + 's'; p.style.strokeDashoffset = '0'; }, 100); } }); var dots = lineSvg.querySelectorAll('.riv-dot'); dots.forEach(function(dot, i) { dot.style.opacity = '0'; setTimeout(function() { dot.style.transition = 'opacity 0.3s ease'; dot.style.opacity = '1'; }, 500 + i * 10); }); } var charts = chartWrapper.querySelectorAll('.fv-chart-item'); // Animate initial view if ("Carousel" === "All Charts") { charts.forEach(function(chart) { var chartType = chart.dataset.chartType; if (chartType === 'Line') { animateLineChart(chart); } else if (chartType !== 'Pie') { animateBars(chart); } }); } else if (charts.length > 0) { var firstChart = charts[0]; var firstChartType = firstChart.dataset.chartType; if (firstChartType === 'Line') { animateLineChart(firstChart); } else if (firstChartType !== 'Pie') { animateBars(firstChart); } } if (charts.length > 1 && "Carousel" !== "All Charts") { var currentChartIndex = 0; var subheadEl = chartWrapper.querySelector('.fv-chart-subhead'); var captionEl = chartWrapper.querySelector('.rv-chart-caption'); var placeholderSubhead = "Subhead to describe the test and what's being measured and why"; var placeholderCaption = "Add your caption to explain the data, the learnings and the key takeaways of the data being visualized"; var globalSubheadJSON = "Subhead to describe the test and what's being measured and why"; var globalCaptionJSON = "Add your caption to explain the data, the learnings and the key takeaways of the data being visualized"; var globalSubhead = globalSubheadJSON === placeholderSubhead ? '' : globalSubheadJSON; var globalCaption = globalCaptionJSON === placeholderCaption ? '' : globalCaptionJSON; var subheadOverrides = {"bar-OpenVPN speed (local)":"Average download speeds, latency and jitter rates on local and long distance server connections."}; var captionOverrides = {"bar-OpenVPN speed (local)":"Proton VPN is way behind the other top VPNs for OpenVPN speeds, even when connecting to the nearest server to our lab.","bar-OpenVPN speed (long distance)":"It's a similar story for Proton VPN on long distance connections too.","bar-OpenVPN latency (local)":"Proton VPN is, at least, comparable to the others for latency.","bar-OpenVPN latency (long distance)":"Again, Proton VPN's latency is fine over long distance.","bar-OpenVPN jitter (local)":"Only NordVPN performs significantly better for jitter on OpenVPN.","bar-OpenVPN jitter (long distance)":"Again, Proton VPN holds its own for jitter."}; var chartInfo = [{"id":"bar-OpenVPN speed (local)","title":"OpenVPN speed (local)"},{"id":"bar-OpenVPN speed (long distance)","title":"OpenVPN speed (long distance)"},{"id":"bar-OpenVPN latency (local)","title":"OpenVPN latency (local)"},{"id":"bar-OpenVPN latency (long distance)","title":"OpenVPN latency (long distance)"},{"id":"bar-OpenVPN jitter (local)","title":"OpenVPN jitter (local)"},{"id":"bar-OpenVPN jitter (long distance)","title":"OpenVPN jitter (long distance)"}]; var captionOverrideKeys = Object.keys(captionOverrides); var singleCaptionOverrideValue = captionOverrideKeys.length === 1 ? captionOverrides[captionOverrideKeys[0]] : null; if (singleCaptionOverrideValue === placeholderCaption) { singleCaptionOverrideValue = ''; } function showChart(index) { if (index < 0 || index >= charts.length) return; charts.forEach(function(chart, i) { chart.style.display = i === index ? 'block' : 'none'; }); currentChartIndex = index; var activeChart = charts[index]; var chartType = activeChart.dataset.chartType; if (chartType === 'Line') { animateLineChart(activeChart); } else if (chartType !== 'Pie') { animateBars(activeChart); } var activeChartId = chartInfo[index].id; if (subheadEl) { var subheadContent = (subheadOverrides[activeChartId] !== undefined) ? (subheadOverrides[activeChartId] === placeholderSubhead ? '' : subheadOverrides[activeChartId]) : globalSubhead; subheadEl.innerHTML = subheadContent; } if (captionEl) { var captionContent; if (captionOverrides[activeChartId] !== undefined) { captionContent = captionOverrides[activeChartId] === placeholderCaption ? '' : captionOverrides[activeChartId]; } else if (singleCaptionOverrideValue !== null) { captionContent = singleCaptionOverrideValue; } else { captionContent = globalCaption; } captionEl.innerHTML = captionContent; var captionContainer = captionEl.closest('.fv-footer-content'); if (captionContainer) { var hasContent = captionContent && captionContent.trim() !== ''; var shouldShow = hasContent || (captionContainer.parentElement && captionContainer.parentElement.querySelector('.fv-logo')); if (captionContainer.parentElement) captionContainer.parentElement.style.display = shouldShow ? 'flex' : 'none'; captionContainer.style.display = hasContent ? 'block' : 'none'; } } var dropdown = chartWrapper.querySelector('.fv-dropdown'); if (dropdown) dropdown.value = index; var carouselTitle = chartWrapper.querySelector('.fv-carousel-title-controls .fv-benchmark-title'); if (carouselTitle) carouselTitle.innerHTML = chartInfo[index].title; var counter = chartWrapper.querySelector('.fv-carousel-counter'); if (counter) counter.textContent = (index + 1) + ' of ' + charts.length; } var dropdown = chartWrapper.querySelector('.fv-dropdown'); if (dropdown) dropdown.addEventListener('change', function(e) { showChart(parseInt(e.target.value)) }); var prevBtn = chartWrapper.querySelector('.fv-carousel-nav-btn.prev'); if (prevBtn) prevBtn.addEventListener('click', function() { showChart((currentChartIndex - 1 + charts.length) % charts.length) }); var nextBtn = chartWrapper.querySelector('.fv-carousel-nav-btn.next'); if (nextBtn) nextBtn.addEventListener('click', function() { showChart((currentChartIndex + 1) % charts.length) }); } chartWrapper.querySelectorAll('.riv-line-legend').forEach(function(legend) { var chartId = legend.dataset.chart; var chart = document.getElementById(chartId); // Uses page-unique ID if (!chart) return; var lines = chart.querySelectorAll('.riv-line-path'); var dots = chart.querySelectorAll('.riv-dot'); legend.querySelectorAll('.riv-legend-item').forEach(function(item) { var productName = item.dataset.product; var line = chart.querySelector('.riv-line-path[data-product="' + productName + '"]'); var productDots = chart.querySelectorAll('.riv-dot[data-product="' + productName + '"]'); var highlight = function() { if (legend.querySelector('.isolated')) return; lines.forEach(function(l) { l.style.opacity = '0.3' }); dots.forEach(function(d) { d.style.opacity = '0.3' }); if (line) line.style.opacity = '1'; productDots.forEach(function(d) { d.style.opacity = '1' }); }; var clearHighlight = function() { if (legend.querySelector('.isolated')) return; lines.forEach(function(l) { l.style.opacity = '1' }); dots.forEach(function(d) { d.style.opacity = '1' }); }; var toggleIsolate = function() { var isIsolated = item.classList.contains('isolated'); legend.querySelectorAll('.riv-legend-item').forEach(function(i) { i.classList.remove('isolated') }); if (isIsolated) { lines.forEach(function(l) { l.style.opacity = '1' }); dots.forEach(function(d) { d.style.opacity = '1' }); } else { item.classList.add('isolated'); lines.forEach(function(l) { l.style.opacity = '0.3' }); dots.forEach(function(d) { d.style.opacity = '0.3' }); if (line) line.style.opacity = '1'; productDots.forEach(function(d) { d.style.opacity = '1' }); } }; item.addEventListener('mouseenter', highlight); item.addEventListener('focus', highlight); item.addEventListener('mouseleave', clearHighlight); item.addEventListener('blur', clearHighlight); item.addEventListener('click', toggleIsolate); item.addEventListener('keydown', function(e) { if (e.key === 'Enter' || e.key === ' ') { e.preventDefault(); toggleIsolate(); } }); }); }); } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initialize); } else { initialize(); } function sendMessageToParentWindow(typeOfMessage, message = null) { let url = (window.location.ancestorOrigins && window.location.ancestorOrigins.length > 0) ? window.location.ancestorOrigins[0] : '*'; window.parent.postMessage({ analytics: { ...message } }, url); } sendMessageToParentWindow('analytics', { type: "fv-loaded", timestamp: new Date().toISOString() }); })();

The main area we'd like to see improvements is with Proton VPN’s OpenVPN performance. It's better than it was but, at 449 Mbps download speeds over a local connection, it's still trailing behind the likes of NordVPN (688 Mbps), Surfshark (825 Mbps), and ExpressVPN (1038 Mbps).

OpenVPN is commonly considered more secure and stable than WireGuard. If you’re using Proton for security, you’ll likely find yourself using its Stealth Protocol instead, given it's far more security-focused.

In most other circumstances, WireGuard is more than up to the job. However, you'll definitely need to look elsewhere if you want to use OpenVPN on non-Windows platforms, as Proton now completely excludes OpenVPN support from its Mac, Android, and iOS apps.

Score: 9/10

Unblocking streaming services
  • Successfully unblocks Netflix libraries all round the world.
  • Was able to unblock both Disney+ and YouTube in the US.
  • Needed NetShield switching off to unblock some ad-funded services.

Proton VPN has a good track record in successfully unblocking streaming service all around the world but it's by no means the best streaming VPN. The accolade goes to NordVPN.

We lab test VPNs for their unblocking capabilities with Netflix libraries in the US, UK, Japan, Australia, and Canada, as well as Amazon Prime Video, Disney+, and YouTube. To check its regional capacity, we also put them against BBC iPlayer, Channel 4, ITV, 7plus, 9Now, 10Play, and TVNZ+.

Proton handled every Netflix library with ease, just the same as all of our top VPN choices. However, it did hit a few snags this time around, failing with several Amazon Prime Video libraries and requiring a bit of initial trial and error on other major sites.

On the plus side, it comfortably dealt with the likes of iPlayer, 7plus, 9Now, 10Play, and even TVNZ+ (which it had failed to unblock in previous testing cycles). But server-side issues did crop up elsewhere.

Read more about Proton VPN's unblocking capabilities ▼

Trying to access Disney+ UK and ITV saw us blocked when trying to connect from Proton’s London servers; luckily, though, switching over to a Belfast server saw these issues quickly dissipate.

Similarly, un-signed-in US YouTube wouldn’t work via New York servers, but connecting to Colorado was a quick fix. This is still a great win for Proton, though it's worth noting that top rivals like NordVPN and ExpressVPN also successfully unlocked US YouTube from abroad this time around.

It was the local ad-funded streaming services where Proton VPN required a little extra troubleshooting. Beyond just switching server locations, we've found that services like Channel 4 in the UK can struggle unless you temporarily turn off the NetShield ad-blocker.

Fortunately, there are no special "streaming servers" you have to hunt down; you should theoretically be able to stream content from any server in any country. When faced with a block, as happened with Disney+ or YouTube in our tests, we were simply able to click a different city or server in the same country and try again.

A streaming-friendly network allows a greater spread of server load, reduces performance impact, and even allows you to pick servers with better latency to ensure a high-quality experience. So, while we can't claim that Proton is the absolute tip-top for streaming, it's certainly up there with most of the premium contenders.

Score: 7/10

P2P and torrenting
  • P2P supported in all Proton VPN server locations on paid plans.
  • Proton VPN supports port forwarding.
  • Loads of helpful guides and how-tos on torrenting for beginners.

Proton VPN is arguably the best VPN for torrenting out there right now.

P2P is fully optimized and supported across its entire network of 145 countries for paid users. You can filter into the P2P-optimized servers at the click of a button. I downloaded several test torrents, and had no issues at any point in the process.

Proton VPN supports port forwarding which helps to get the best torrenting speeds. Many major VPNs lack this support owing to the known security risks it brings. That's understandable to a degree, but not only does Proton VPN have features to help people using P2P networks, it's also one of the few VPNs to have a wealth of information in its user base on how to actually do it with guides such as how to torrent safely with a VPN.

You can port forward across Proton VPN’s Windows, Linux, and Mac apps – the last of which was finally added in summer 2025.

If you’re confused or need guidance, Proton has more in-depth posts outlining the risks of port forwarding, how to set it up on its apps, how to manually set it up, and even how to manually set it up on the likes of qBittorrent and uTorrent.

This level of guidance is something we’d rarely expect, let alone the level of support on its apps.

If you want to use a VPN for torrenting, then given all this, and Proton's speeds and server network spread, then you really have to have it on your P2P shortlist.

Score: 5/5

Compatibility
  • Apps for almost every platform.
  • Lots of capability iOS and Mac users.
  • No OpenVPN support on Apple or Android devices, though.

Proton VPN does a remarkable job of not only offering a strong spread of apps, but also ensuring there aren’t huge gaps in features from one app to another.

You can use Proton VPN on Windows, Mac, iOS, and Android as expected – plus it has a GUI client for Linux users. Android smart TVs also get an app, as well as Fire TV Sticks and Apple TV boxes.

The Proton VPN browser extension is available on Chrome or Firefox. As with ExpressVPN, PIA, and CyberGhost, you need to download the Chrome Web Store extension onto Edge to get Proton VPN on Microsoft's browser.

Proton VPN is also router-compatible and has a handy, detailed guide that explains what methods you can use to set this up.

In terms of parity across platforms, Proton VPN is near-perfect nowadays, unlike VPN providers such as NordVPN.

The anomalies for Proton to speak of are that its mobile apps lack advanced condition-based auto-connect rules (relying instead on a basic "Always-on" reconnect function), and non-Windows users completely lose native OpenVPN support. This makes Windows the exclusive home for OpenVPN on official desktop/mobile apps.

Proton has pulled native OpenVPN support from mobile and Apple apps to favor faster, more secure modern protocols like WireGuard and Stealth. Interestingly, while iOS lost IKEv2 support alongside OpenVPN, macOS actually still retains native IKEv2 support within its app settings. Should you wish to use OpenVPN on Mac, Android, or iOS, Proton does, however, offer in-depth guides to manually configuring those connections.

Prior to summer 2025, Proton users on Mac were also short of both port forwarding and split tunneling capabilities. These features have since both been introduced—though it's worth noting that split tunneling on macOS is currently labeled as an "experimental" feature, giving Mac users slightly less parity than Windows.

Score: 4/5

Usability
  • Apps well designed and consistent across platforms.
  • Advanced features are explained well and easy to access.
  • The browser extension could be better.
Set up

After signing up for Proton VPN, you have two main ways to get your app downloaded.

First off, if you click the ‘Download’ tab at the top of your screen, you’re quickly presented with every app Proton has, including its extensions, mobile apps, and Smart TV apps – though I highly doubt you’ll be downloading Proton to your Smart TV via the website! If you’re on a smaller screen, the download tab is hidden in the hamburger (three-line) menu in the top right corner.

Alternatively, from the website, if you go into your Proton account (found in the top-right corner of your screen), you can access some more specific application types.

The Proton VPN website is a simple access point to downloading all of its apps and web extensions (Image credit: Future)

Read more about Proton VPN's usability ▼

In the downloads section, you can quickly access APK, GitHub, and F-Droid versions of its Android, Android TV, and Chromebook apps. You’ll also find here your configuration settings to manually set up OpenVPN or WireGuard on Android, iOS, Windows, Mac, Linux, or a router.

Once you click the download button, you’re on your own, in the app, at least. The download client gives you the option to install Proton Drive, Proton Mail, and Proton Pass, alongside the VPN, and then, once Proton VPN is loaded, you log in, click ‘Get Started’, and go.

User Experience

Once you’re in, Proton’s hues of reddish purple and black could leave a beginner wondering quite how complex an experience they’re in for; luckily, all of Proton’s apps are simple.

This visual identity is consistent across all of Proton’s platforms, as is the simplicity. The key differentiator between Proton VPN on desktop and Proton VPN across other platforms is the map aspect of its interface. On Windows and Mac, the map can be used to identify and connect to a server.

On mobile, this map isn’t navigable, though it shows the country you're connected to from the list. On smart TVs, there isn't a map at all.

In reality, I rarely find myself using the map as a connection location tool with any VPN I use. A search field and list proves quicker in my experience.

No matter the platform you’re on, you’re directed towards everything you’d need straight away.

Smart TVs understandably have the fewest quick action options, but everything other than server location is found under settings, so you’re not left trawling a bunch of submenus using a TV remote – even though Android TVs have to go to the bottom of the locations menu to find the settings panel.

Finding the server you’re after couldn’t be simpler, either. The app doesn’t hide its Tor, Secure Core, or P2P servers entirely. Instead, it offers dedicated tabs across desktop and mobile, and shows each country’s server types in their server lists on Smart TVs. You can even search by individual server code if you know the one you want.

One area Proton previously struggled with was its browser extension, but it has bounced back significantly. While it used to suffer from poor user reviews, it has climbed to a solid 4.0 rating on the Chrome Web Store, matching rivals like Surfshark.

It still offers less customization than the main apps, allowing access only to standard or Secure Core servers, and its settings menu remains primarily focused on data sharing rather than technical features. However, it's a much cleaner experience than it used to be.

I’d also like to see Proton make more efficient use of space in its desktop apps. The Proton map interface takes up an extraordinary amount of space for fairly limited use – one reason why NordVPN completely overhauled its desktop dashboard layout in early 2026 to favor a search bar instead.

Meanwhile, key features such as protocol selection and auto-connect aren’t front and center where they could be.

Proton VPN's mobile and smart TV apps do a much better job of managing space. They prioritize quick access to server locations and connection types, with the map present only once connected.

Quibbles aside, I'm really impressed with the Proton VPN apps. Using features is simple thanks to high-quality explainers under each option, plus links out to some key guides when the setting is more advanced, such as port forwarding.

You can also tell what features are active by whether they’re greyed out or in full color, and on desktop platforms, you’re given a bunch of keyboard shortcuts to make accessing sections of the app quicker than it already is.

The main anomalies across platforms are that mobile apps only offer standard "Always-on" auto-reconnection rather than advanced condition-based rules, and native OpenVPN support is completely missing from Mac, iOS, and Android apps — making Windows the exclusive home for the protocol inside Proton's native software.

You also get full customization of your security options, should you wish, but equally, beginners won't feel pushed into making changes they're not ready for, and they won't get bombarded with complex terms.

Of course, the most prominent feature of any VPN app should be the big Connect button, and that's nice and clear with Proton. There's no fuss, no confusion, just simple security on every platform.

Score: 4/5

Accessibility
  • Excellent language support.
  • Great keyboard-only experience.
  • Proton VPN's website scored fairly low for screen reader accessibility.

Putting ProtonVPN.com through accessibilitychecker.org’s accessibility scan gave us some interesting insights.

Proton VPN’s accessibility audit scored 53% overall, closing the gap on the likes of NordVPN (65%) and Mullvad (95%), while pushing well ahead of providers such as Surfshark (23%). PureVPN remains tied with Proton's historical baseline at 35%.

Diving into the report, the site's issues primarily surround screen reader testing. The automated auditing highlights that multiple page structure and coding problems remain, which greatly reduce its overall screen reader compatibility.

In relation to the industry as a whole, however, Proton’s new 53% score is quite respectable, placing it a mid-range 6th place out of 14 major tested providers. Accessibility is clearly an area that still needs greater focus across the entire industry.

Outside of web-based metrics, Proton VPN's actual application does a great job of accommodating people's physical needs.

Ditching our mouse still meant we rarely struggled using the desktop app with the keyboard alone. On a few instances, we were jumped to unintended areas of the app, and sometimes our selection rectangle just disappeared entirely, but never often enough to stop us from connecting successfully. We also never struggled to search servers specifically, nor did adjusting settings prove difficult.

From our experiences, you’ll likely only find a better keyboard experience using either PIA or ExpressVPN. ExpressVPN has long focused on simplicity in its apps, so success in this regard is no surprise. Proton VPN did a better job in this regard than NordVPN, though.

Proton also completely knocks other premium VPNs out of the water when it comes to localized language support. It natively offers 36 languages across its clients. That makes Proton VPN’s language total significantly larger than major competitors like NordVPN and Surfshark.

So, while Proton could still do better in terms of visual screen-reader compliance, it remains highly accessible in almost every other practical metric.

Score: 3/5

Customer support
  • Good depth of support guides
  • Live chat and priority support available for paid tiers
  • Agents began to struggle once diving deeper into issues

Accessing support for Proton VPN is simple. First off, you can use its FAQs, guides, and resources hub to access guides on almost any topic.

Testing the depth of its guides using ‘DNS’ as a search, it was great to see guides on everything from DNS leaks, to flushing DNS caches, and how you can use custom DNS.

It even filed in instances where DNS was a related topic and highlighted the relevant text. For example, it pulled in Proton’s streaming troubleshooter guide since DNS over HTTPS can contribute.

These guides are easily accessible, too. Whether it’s via a couple of clicks in the Windows app or two taps on mobile, you can quickly enter the Proton Support Center, report issues with your service, or access debug logs to help support assistants troubleshoot your problem.

If you are a paid user on the VPN Plus or Unlimited plans, you also get access to priority support and a dedicated live chat feature to bypass the ticket queue entirely. Keep in mind that if you are using the completely free version, live chat is locked away and you'll be reliant solely on the help documents and email ticketing.

Alternatively, if you run into a unique technical glitch, Proton has one of the absolute busiest Reddit communities in the entire VPN space. With roughly 600+ weekly contributions, the r/ProtonVPN subreddit is a thriving hub for user-to-user troubleshooting that regularly beats out rivals like NordVPN or ExpressVPN for active community help.

The Proton support hub offers reams of depth, with explainers, how-to's and troubleshooting guides for even complex issues. (Image credit: Future)

Read more about Proton VPN's customer support ▼

Next, we tested the skills of Proton’s support agents. We raised the question, “What do we do if we can’t access .onion websites while connected to Tor over VPN?” and got a reply via ticket in around five minutes!

What was more impressive was that our response wasn’t just an automated acknowledgment — we got some sensible suggestions right off the bat around testing different servers, switching browsers, and disabling NetShield. We were also asked for more details to help pinpoint the issue.

At this stage, though, the standard slipped a bit. Our agent became bogged down in browser troubleshooting, and response times jumped from five minutes to around three hours. What we received at the end of that wait felt a bit underwhelming for the amount of information we’d provided.

To be fair to the agent, browser and platform quirks are common culprit areas for Proton's Tor integration. For instance, desktop Firefox requires a manual configuration tweak to resolve onion URLs, Firefox for Android won't open them at all, and Apple users must have their app Kill Switch turned on just to get Tor traffic to pass cleanly.

Even so, the handling could have been smoother. By comparison, we’ve put the same question to NordVPN in the past, and, while the initial response was slower, we received a much more cohesive set of diagnostic questions and an all-around more reassuring experience.

Proton’s lightning-fast initial response does deserve credit, though. Plus, our broader experiences with their team over our months of testing have generally been highly reliable more often than not.

Score: 4/5

User reviews

While not perfect by any means, review sites often prove a good initial gauge of how trustworthy a VPN is, how well it performs, and what issues it’s had in the past.

Proton VPN’s mobile apps are among the best on the market. Its stellar ratings of 4.7 on the Google Play Store and 4.6 on the Apple App Store are a fair reflection of its capabilities and put the VPN provider very much on par with our other top recommended services.

Google Play

App Store

Trustpilot

NordVPN

4.6

4.7

4.2

Windscribe

4.6

4.6

4.7

Surfshark

4.6

4.7

4.3

Proton VPN

4.7

4.6

2.2

ExpressVPN

4.7

4.7

4.1

On the desktop side, its Chrome Extension has undergone a major redemption arc. While it historically lagged behind with a mediocre user rating due to early performance bugs, a series of major software overhauls has seen its score climb to a highly respectable 4.1/5 on the Chrome Web Store.

It’s a massive improvement that brings it right back into the conversation with competing browser extensions.

Proton’s Trustpilot reviews offer further food for thought, since scoring a 2.2 out of 5 is still quite low compared to its app store success. There isn’t a single trending theme driving the negative reviews either—unlike, for example, NordVPN’s frequently targeted auto-renewal policy.

It's also worth noting that Proton has a comparatively tiny footprint here with just 901 reviews in total, while the likes of ExpressVPN and Surfshark have accumulated over 25,000.

It is somewhat strange that these complaints aren't widely reflected in the highly positive mobile app store reviews. Ultimately, while a chunk of 1-star Trustpilot reviews shouldn't be ignored completely, the actual day-to-day performance of the product and our rigorous long-term lab testing simply do not tally with those specific negative metrics.

Track record: can you trust Proton VPN?
  • All Proton VPN apps are open source.
  • Annual no-logs audits since 2022.
  • Proton Mail privacy requests raise concerns for some users.

Proton has a strong track record of proving its commitment to privacy. Since 2022, the VPN provider has undergone yearly no-logs audits. The latest was published by independent auditors in September 2025, but its history of transparency goes back long before this.

What’s more, all of Proton VPN’s apps are open source. This means that anyone can look at, and judge, the code found in each app. By going open source, anyone can check and confirm that Proton’s apps work properly and do everything they’re supposed to safely – providing peace of mind that there isn't anything malicious happening behind the scenes.

The company also helps fund external projects that work to protect people's privacy and in January 2026, it donated over $1.27 million to a variety of digital rights groups. Organizations included Transparency International, Witness, EDRi and Lighthouse Reports.

Despite this, there are a handful of high-profile legal incidents involving its sister product, Proton Mail, that continue to concern some privacy advocates.

In September 2021, Proton was compelled to log and hand over the IP address of a French climate activist. Later, in May 2024, Proton complied with a request to hand over the optional recovery email address of a Catalan independence activist, which authorities then used to identify them via Apple.

Most recently, in March 2026, Proton was forced to share credit card payment data with the FBI regarding an activist in Atlanta.

Read more about Proton VPN's track record ▼

What many critics fail to realize is that Proton did not directly cooperate with foreign governments in any of these cases. Foreign law enforcement agencies had to apply through international legal channels to Swiss courts.

Because Proton is a Swiss company, it cannot ignore a legally binding Swiss court order. Crucially, in none of these cases was Proton's end-to-end encryption broken — no email content, message text, or core data has ever been compromised. The users were ultimately exposed due to peripheral metadata they chose to provide, such as personal credit cards or personal recovery emails.

It also must be remembered that these cases strictly surround Proton Mail, not Proton VPN, and these products are handled entirely differently under Swiss law.

Proton’s privacy policy does a good job explaining this, explicitly noting that Swiss regulations do not force VPN providers to log data, whereas email services can be required to disclose IP logs or account metadata in the event of a Swiss criminal investigation.

The other sensible move for people using Proton Mail is not to register a recovery email address in the first place, although that comes with the obvious risk of losing access to your account.

While it's understandable why these legal disclosures shook the trust of some users who mistook privacy for total anonymity, they do not warrant concern about the VPN itself. To Proton’s credit, it goes to great lengths to remain transparent about its legal obligations, and its core zero-knowledge encryption architecture remains entirely intact.

Score: 4/5

Final verdict

(Image credit: Future / Gemini)

Proton VPN is, without doubt, a top VPN. It offers a huge array of locations, superb speeds, and rock-solid security. It's surprisingly good value too, when you compare it to the equivalently-featured tiers of other VPNs.

Proton VPN's track record and high levels of privacy are what it should be most proud of, though. Of all the VPNs we recommend, it's the one we'd bet our lives on if we really had to.

It’s also a highly customizable VPN with stunning apps. Its whole ecosystem of Big Tech alternative software is well worth using if you like them.

Who should use Proton VPN?

✅ Torrenters: Proton’s breadth of P2P support, and, more importantly, port forwarding support, make it perfect for torrenting. Plus, it offers a wealth of knowledge guides to help you stay safe and effective.

Those wanting to move away from Google: Picking up a Proton Unlimited plan opens the door to more than just Proton VPN, you can use its secure storage, email.

Try Proton VPN $3.59 $2.99

Right now, you can get Proton VPN for only $2.99/month on a 2-year deal. It’s got sleek, customizable apps, servers in 145 countries, and doesn’t struggle to unblock your favorite streaming services thanks to its full streaming optimization and high download speeds.

What’s more, unlike many top VPNs, it has port forwarding support, and guides to equip you to use this and all of its other tools to the maximum. Try risk-free with Proton’s 30-day money-back guarantee. View Deal

Who should try a different VPN instead?

Streamers: While Proton VPN can definitely unblock streaming services, it struggles more than some may like. You can likely find stronger streaming performance for a similar or cheaper price if this is a priority.

Also consider

NordVPN – The best VPN overall ($3.39 $2.99)
While Proton VPN offers much to please privacy purists, our tests have found no better VPN than NordVPN right now. Like Proton, NordVPN has a 10-device limit, but it offers faster speeds, improved streaming performance, and unique tools such as Threat Protection Pro and Meshnet. You can try NordVPN risk-free with its 30-day money-back guarantee. View Deal

Proton VPN FAQsWhere is Proton VPN based?

Proton VPN is based in Switzerland. This is because the country has strong privacy laws, and isn’t part of any intelligence-sharing agreements. This means it’s highly unlikely that any request from a country to access Proton’s data will be approved.

Does Proton VPN support port forwarding?

Yes. Unlike many of the top VPNs, Proton VPN offers full port forwarding capabilities. While the provider is aware of the risks, it offers in-depth guides to explain what those risks are and how to go about port forwarding safely.

Is Proton VPN blocked by Netflix?

No, our testing showed that Proton VPN has no issues accessing Netflix. We tested the provider with Netflix’s UK, US, Canadian, Australian, and Japanese libraries and saw no issues throughout.

Proton VPN testing methodology

Alongside the features that I've tested on my own devices, I'll also refer to what "we" have tested in this review. When I talk about "we", I'm referring to anything found during our lab testing. This testing is conducted by VPN Technical Editor, Mike Williams. Mike has been lab testing VPNs for over 11 years.

Each VPN is tested every six months. We measure speed, ad-blocking, anti-phishing and malware, streaming service unblocking, local IP address leaks, and more. Each server network is spot-checked to confirm that the VPN server locations are accurate. We also confirm a provider's security credentials, privacy policy, and executable files are secure and safe.

To find the full details of our VPN review processes, you can take a look at our VPN testing methodology.

This review has been fact-checked by the TechRadar VPN team, as well as with information provided by Proton. We update this review regularly to include any new features or information about the product. That means that this review is always up to date and as you would find the product if you downloaded and used it today.

If you notice anything in your experience of using Proton VPN that doesn't match what you read on this page, please let us know in the comments or by emailing us.

We will then do our best to offer product support information or include corrections and warnings to other users, depending on which is appropriate.

Categories: Reviews

AI code security risk: The need for a smarter layer between detection and remediation

TechRadar News - Fri, 05/22/2026 - 06:00
AI is accelerating code and risk. Security needs smarter triage beyond detection to remediation.
Categories: Technology

Don't miss the big game while traveling this summer — a VPN can ensure you never miss a kick of the World Cup 2026 and protect your personal data online in the process

TechRadar News - Fri, 05/22/2026 - 06:00
Taking a summer holiday shouldn't mean missing out on your favorite sports. We explain how a top-tier VPN helps you access your home streaming platforms from anywhere in the world.
Categories: Technology

The Xiaomi 15T is an impressive mid-ranger that feels way more premium than the Google Pixel 10a

TechRadar News - Fri, 05/22/2026 - 06:00
The Xiaomi 15T delivers an upper mid-range experience for an impressively affordable price.
Categories: Technology

The Xiaomi 15T is an impressive mid-ranger that feels way more premium than the Google Pixel 10a

TechRadar Reviews - Fri, 05/22/2026 - 06:00
Xiaomi 15T review: One-minute review

The majority of the best Xiaomi phones share one core trait: they offer a premium experience without the associated price tag. The Xiaomi 15T is no exception.

Building upon the so-so Xiaomi 14T, the Xiaomi 15T brings the core features of the excellent Xiaomi 15 lineup to a lower price point and is one of the more compelling choices in its category.

If you’re coming from an Ultra-branded phone, you’ll likely be disappointed. However, look past a few mid-range indiscretions, and you have a phone that offers everything the average user needs, and at an incredibly wallet-friendly price (especially so right now, given that the Xiaomi 17T is reportedly just around the corner).

Most people want a large, vibrant screen, solid performance, a reliable camera, and excellent battery life. The Xiaomi 15T ticks all of these boxes and adds a stylishly chamfered camera design into the mix (not to mention a gorgeous color), resulting in a unique yet pleasing overall experience.

If you’re looking for the very best AI features, cutting-edge performance, or a camera that can see far into the distance, you’ll be better served by the pricier Xiaomi 15T Pro or even the flagship Xiaomi 17 Ultra. But if you’re comfortable with a few compromises, the Xiaomi 15T is absolutely a phone you should consider.

Xiaomi 15T review: price and availability

(Image credit: Nirave Gondhia)
  • Launched for £549 on September 24, 2025
  • The current retail price in the UK is ~£449, although it is available from £350
  • Not available in the US or Australia

The Xiaomi 15T started at £549, but at the time of writing, it's now officially available for £449, and for as low as £349 via third-party retailers.

The Xiaomi 15T features a sizeable 12GB of RAM across all models, which, considering the current premium for RAM, makes the phone's low price even more impressive.

It comes in three colors — Black, Gray, and Rose Gold — and I’ve been using the latter for my testing. It’s beautiful and quite unique, but it is more bronze gold than rose gold in tone.

  • Value score: 5 / 5
Xiaomi 15T review: specsXiaomi 15T specs

Dimensions:

163.2 x 78 x 7.5mm

Weight:

194g

Display:

6.83-inch AMOLED (1280 x 2772), 120Hz, 3,200 nits peak brightness

Chipset:

MediaTek Dimensity 8400 Ultra

RAM:

12GB RAM

Storage:

256GB / 512GB

OS:

Android 15, but Android 16 is now available

Primary camera:

50MP, f/1.7
1/1.55-inch sensor
PDAF, OIS

Ultra-wide camera:

12MP, f/2.2, 120°
1/3.06-inch sensor,

Telephoto camera:

50MP, f/1.9, 46mm
1/2.75-inch sensor
2x optical zoom, PDAF

Selfie camera:

32MP, f/2.2
1/3.44-inch sensor

Battery:

5,5000mAh

Charging:

67W wired

Colors:

Black, Gray, Rose Gold

Xiaomi 15T review: design

(Image credit: Nirave Gondhia)
  • Three colors, including bronze-like Rose Gold
  • Premium feel without the weight

The Xiaomi 15T doesn’t really stand out for its design, but that’s also by design: Xiaomi wanted to build an upper mid-range phone that blends into your daily life, not one that stands out and makes a point. And the Xiaomi 15T absolutely delivers on that front.

The phone's screen features Gorilla Glass 7i protection, while the rear of the Xiaomi 15T features a composite matte finish that’s excellent at repelling fingerprints. This unique finish allows the Rose Gold color to appear iridescent, and while it always looks Rose Gold, there’s enough uniqueness that you’ll find yourself twirling it under the light.

Measuring 7.5mm thick and weighing 194g, the Xiaomi 15T is not the heaviest, lightest, thinnest, or thickest phone that you can buy. Simply put, it’s a middle-of-the-road device that weighs about the same as the Galaxy S26 Plus, though it is taller, wider, and 0.2mm thicker than that particular phone. It's a great size overall, but I do find it slightly too large to be used comfortably one-handed: phones like the Honor Magic 8 Pro Air and iPhone Air, which both use 6.5-inch screens, are the perfect size for me.

One particularly nice feature about the Xiaomi 15T is the chamfered edge design around its rear camera module, which adds a bit of pizazz to an otherwise standard-looking handset. That said, compared to many phones at this price point — the Google Pixel 10a and Samsung Galaxy A57, for instance —the Xiaomi 15T looks and feels distinctly more premium.

  • Design score: 4 / 5
Xiaomi 15T review: display

(Image credit: Nirave Gondhia)
  • 6.82-inch AMOLED display
  • 120Hz display, LTPS not LTPO

Two areas in which many mid-range smartphones often make trade-offs are display and design, but Xiaomi has taken an alternative approach with the 15T. As mentioned, its design feels premium, but its display wouldn’t be out of place on a much more expensive phone, either.

The Xiaomi 15T's large 6.83-inch AMOLED display features 12-bit color depth, HDR10+ support, and Dolby Vision certification, making it an absolute joy to watch movies on. It features an advertised peak brightness of 3,200 nits and a 120Hz refresh rate, both of which are lower than the Xiaomi 15T Pro's, but neither proved to be an issue in my day-to-day usage.

One particularly noteworthy thing about this phone's display is that, while it can refresh at up to 120Hz, it’s not the typical dynamic LTPO refresh rate you’ll find on many phones. Instead, the Xiaomi 15T has four predetermined refresh rates — 30Hz, 60Hz, 90Hz, and 120Hz — and it chooses between them depending on what's happening on-screen. In practice, this means it’s usually at 120Hz when you’re using it, but for movies or other static use, it’s at 60Hz. This helps strike a balance between buttery-smooth scrolling and power consumption, but it’s worth noting nonetheless.

Overall, the display on the Xiaomi 15T is very good, especially considering the price. This is not a screen I’d complain about on a much more expensive phone, and it works well regardless of lighting conditions.

  • Display score: 4.5 / 5
Xiaomi 15T review: cameras

(Image credit: Nirave Gondhia)
  • 50MP main sensor
  • 13MP ultra-wide lens
  • Strange 50MP telephoto with only 2x zoom

The Xiaomi 15T features three rear cameras, and this is where I felt some disappointment. The 50MP main camera has an f/1.7 aperture and a 23mm focal length, while the ultra-wide camera has a 120° field of view and an f/2.2 aperture.

Both are more than acceptable at this price point, but the 50MP telephoto is somewhat strange. The large megapixel count is paired with an impressive f/1.9 aperture, but an odd 2x optical zoom range. Having reviewed many of the best phones, this 2x optical zoom feels like a strange choice, especially since Xiaomi hasn’t added any zoom stops beyond 2x in the viewfinder.

In many ways, it feels like the telephoto lens on the Xiaomi 15T is firmly an afterthought, but that is somewhat harsh, especially since this phone offers much more photography hardware than others at this price point. The Google Pixel 10a, for instance, is similarly priced but has just two rear cameras, as does the Samsung Galaxy A57 (if you don't count the latter's 5MP macro lens).

The Xiaomi 15T camera is Leica-branded, and the phone also comes with a color spectrum sensor. Overall, images are solid but unspectacular, and while the Xiaomi 15T's camera won’t win any awards, it offers solid all-around performance that is more than acceptable at this price point.

Xiaomi 15T review: camera samplesNirave GondhiaNirave GondhiaNirave GondhiaNirave GondhiaNirave GondhiaNirave GondhiaNirave GondhiaNirave GondhiaNirave GondhiaNirave GondhiaNirave GondhiaNirave GondhiaNirave Gondhia
  • Camera score: 3.5 / 5
Xiaomi 15T review: performance

(Image credit: Nirave Gondhia)
  • MediaTek Dimensity 8400 Ultra chipset is fine for most use cases
  • 12GB of RAM and 256GB of storage provide excellent value for money, especially with the current RAM shortage

The Xiaomi 15T continues a trend of Xiaomi using both Qualcomm and MediaTek chips in its phones, with the Xiaomi 15T powered by the MediaTek Dimensity 8400 Ultra chipset. Despite the nomenclature, this chipset isn’t as powerful as the Dimensity 9400 Plus in the Xiaomi 15T Pro, but during my time with the Xiaomi 15T, I had zero concerns about the all-round performance.

One area where this chipset does somewhat struggle is with high-end gaming; its Mali-G720 GPU isn’t as performant as the Adreno 750 GPU inside the Snapdragon 8 Gen 3 and other Qualcomm processors. This isn’t a huge problem, especially as the core target for the Xiaomi 15T isn’t gamers — that’s the Xiaomi 15T Pro with its higher 144Hz refresh rate — but it’s worth keeping in mind if you like to game.

The Xiaomi 15T was released eight months ago, and in that time, the current RAM and storage shortages have led many phone makers to cut back. At the time of its release, the base variant of the Xiaomi 15T with 12GB of RAM and 256GB of storage already beat most of the competition, and now the phone offers even better value for money.

Considering how many OEMs are cutting back on RAM capacities, even in flagship phones, the 15T's 12GB of RAM will future-proof the phone for years to come. This RAM capacity is also noteworthy because it means the Xiaomi 15T could well support Google’s new Gemini Intelligence feature suite, which requires 12GB of RAM to function (plus Gemini Nano v3 support, which could be added to the 15T via a future HyperOS update).

  • Performance score: 4 / 5
Xiaomi 15T review: software

(Image credit: Nirave Gondhia)
  • Launched with Android 15.
  • Android 16 update is widely available
  • Four years of software releases and six years of security updates

Software is where Xiaomi has a love-hate relationship with many customers in Western markets, and the Xiaomi 15T somewhat follows this mold. However, I must commend Xiaomi, as its software is considerably better than it used to be, and everything works as well as on the best Android phones.

Many of my previous experiences with Xiaomi have seen HyperOS preloaded with many apps, which were the first things I deleted. The Xiaomi 15T provided a pleasant surprise: it’s far more reserved, with fewer preloaded apps and more intuitive options and placements. One thing I absolutely love about Xiaomi’s HyperOS is that it is the only launcher to offer a 5x9 layout arrangement, which is perfect for taller screens.

When it comes to Android phones, there are usually two approaches: a simpler UX with limited options and a predetermined way of using it, or options to change everything. Xiaomi fits into the latter category: it’ll take some getting used to, but the sheer volume of customizations available in HyperOS means that, if there’s something you don’t like, you can probably change it.

The Xiaomi 15T also comes with a new Astral Communication feature that allows you to make voice calls between two Xiaomi 15T phones. Think push-to-talk, but between two specific devices. It’s limited to just the Xiaomi 15T, which makes it less useful than it otherwise could be, but there are plenty of reasons this feature needs to come to all Android phones.

The Xiaomi 15T comes with at least four years of OS updates and six years of security patches, and Xiaomi is known for reliable updates and comprehensive update scheduling. The Xiaomi 15T launched with Android 15, and while the Android 16 update is available now, this will count as one of your four OS updates.

  • Software score: 3.5 / 5
Xiaomi 15T review: battery life

(Image credit: Nirave Gondhia)
  • 5,500mAh silicon-carbon battery delivers multi-day battery life
  • 67W HyperCharge will recharge your phone quickly

A common trait among most Xiaomi phones is excellent battery life and superfast charging, and the Xiaomi 15T is no different. The UK version comes with a charger in the box that supports Xiaomi’s 67W HyperCharge feature — mine didn't, as it wasn't a UK sample — while EU buyers will have to buy the charger separately, as it’s not included.

The Xiaomi 15T is powered by a 5,500mAh silicon-carbon battery, which is the same size as the one in the Xiaomi 15T Pro. Sadly, there’s no wireless charging, which is somewhat expected at this price point, but aside from that, the battery life is more than acceptable.

On a full charge, the Xiaomi 15T lasts around two days with moderate usage, and you'll get around five to six hours of screen-on time. During my two stints using the phone to empty, it never once failed to last a full day, despite heavy camera use. Overall, then, the Xiaomi 15T boasts great all-around battery life that generally won’t let you down.

  • Battery score: 4 / 5
Should you buy the Xiaomi 15T?

(Image credit: Nirave Gondhia)Xiaomi 15T scorecard

Attributes

Notes

Rating

Design

Xiaomi's design isn't super unique but the chamfered edges around the camera and Rose Gold finish are memorable.

4 / 5

Display

This is a great all-around screen that wouldn't be out of place in a much more expensive phone.

4.5 / 5

Performance

Solid but unspectacular performance offered by the Dimensity 8400 Ultra chipset, but 12GB of RAM and 256GB of storage is a big bonus.

4 / 5

Camera

The main and ultra-wide cameras are good and acceptable, but don't let the big megapixel count fool you: the telephoto is a bit disappointing.

3.5 / 5

Battery

Outstanding battery life that's on par with that of many flagships. 67W charging is also faster than the competition.

4 / 5

Software

Xiaomi's HyperOS is further improved, but it won't be for everyone. However, it is among the most customizable OS packages, so you can often change the things you may not like.

3.5 / 5

Value

Excellent value for money; this phone belies its price tag.

5 / 5

Buy it if...

You don’t need the absolute best performance
The Xiaomi 15T's chipset won’t win any awards, but the phone has performance to spare and generally won’t stutter, even with heavy usage.

You want great bang for your buck
This is definitely among the best value-for-money phones you can buy right now. It feels far more premium than its price tag suggests.

You want an excellent all-around, no-frills phone
If you want a phone that does all the basics extremely well, but doesn’t have many frills, the Xiaomi 15T is a great option.

Don't buy it if...

You want the best phone that money can buy
The Xiaomi 15T's specs don't stand out in any way, and that’s by design. If you’re looking for a premium, flagship-level experience, you’ll want to look elsewhere.

You need the best camera
If photography is important to you, the Xiaomi 15T's camera, especially its zoom, will probably be a letdown. The main camera is more than good enough, but the same can’t be said for either of its zoom lengths.

You use a lot of AI features
If you already use Gemini or other AI providers on your phone, you’ll find the Xiaomi 15T wanting, whether it’s for on-device AI performance or the general reliability of AI apps on HyperOS.

Xiaomi 15T review: also consider

There are three real competitors worth buying, but like the Xiaomi 15T, they all have their compromises.

Google Pixel 10a
The Google Pixel 10a starts at $499 / £499 / AU$849, for which you'll get 128GB of storage. It offers the best of Google's software, and although it only has two cameras, it’s proven to be extremely capable. The problem? It doesn’t feel anywhere near as premium as the Xiaomi 15T.

Read our full Google Pixel 10a review

Samsung Galaxy A57
Then there’s the Galaxy A57, which brings the best of Samsung’s Galaxy S26 to a more affordable price point. It costs $550 / £450 / AU$749 for 8GB of RAM and 128GB of storage, and comes with three cameras, an Exynos processor, and a large 5,000 mAh battery.

Read our full Samsung Galaxy A57 review

Nothing Phone 4a Pro
The other phone that’s definitely worth considering is the Nothing 4a Pro. Priced at $499 / £499 / AU$949, it’s one of the most unique phones you’ll find, thanks to its glyph matrix display on the rear. Key reasons to consider the Nothing 4a Pro over the Xiaomi 15T? Better cameras, a more unique design, and longer battery life.

Read our full Nothing Phone 4a Pro review

How I tested the Xiaomi 15T
  • Review test period = ~3 weeks
  • Testing included = Everyday usage, including navigation, web browsing, social media, photography, gaming, streaming video, music playback, and reading e-books.
  • Tools used = Geekbench 6, 3DMark, CellMark, native Android stats

I used the Xiaomi 15T for approximately three weeks across two different stints, which included over a week of consistent usage before writing this review. It was tested with two SIM cards with one roaming, while traveling between two different cities.

First reviewed: May 2026

Categories: Reviews

Why data fragmentation is becoming a business problem, not just a technical one

TechRadar News - Fri, 05/22/2026 - 05:48
Discover why data fragmentation is a business problem, not a technical one, and how leading organizations are acting across data boundaries.
Categories: Technology

The world's greatest laptop… almost. Dell's 2026 XPS 16 lands almost every blow perfectly, with only one exception: the ports

TechRadar News - Fri, 05/22/2026 - 05:45
Dell's back with a vengeance, if the latest 16-inch XPS is anything to go by, the word "ultrabook" might not be ultra enough.
Categories: Technology

The world's greatest laptop… almost. Dell's 2026 XPS 16 lands almost every blow perfectly, with only one exception: the ports

TechRadar Reviews - Fri, 05/22/2026 - 05:45
Dell XPS 16 (2026) Two-minute review

Dell's XPS line finally returns at long last. The company may have shifted tack in its naming scheme, but the XPS has returned, and it's back with a bang. The Dell XPS 16 (2026) I have tested here is beyond impressive. With a clean, crisp aesthetic, stylised CNC black aluminum chassis, super-thin bezels, and a keyboard that genuinely makes you question what other laptop manufacturers have been doing for the last 10 years, it's otherworldly in appearance.

There's no drama, no ostentatious LEDs or illuminated logos, just clean, tidy lines and materials that complement it perfectly. Even the screen (in my review spec, a 3K touch OLED 3,200 x 2,000 @ 120Hz) leaves little to be desired.

(Image credit: Future)

But that's not where it ends; it's how it performs that really drives home the point. Thanks to Intel's latest Panther Lake architecture, that Core Ultra X7 358H, combined with Intel's own Arc B390 discrete GPU, delivers buckets of both battery life and performance across the board. You can game on this thing quite comfortably on titles like Total War: Warhammer 3, Cyberpunk, Black Myth Wukong, the works. And it has a battery life that'll run for the entirety of your working day and then some.

Honestly, it's hard to critique this thing. But there are a few blemishes that do need highlighting. You get a grand total of three USB-C ports, and that's it (admittedly Thunderbolt 4), and the price is a little bit higher than what you'd find on the likes of Apple's MacBook Pro 16-inch (M5).

Is that the end of the world, though? No, not really. Dell has absolutely delivered here. The XPS 16 is, by far, the best laptop I've ever tested.

Dell XPS 16 (2026) review: Price & release date
  • Available globally
  • Premium pricing without the B390
  • Non-upgradable RAM, so buy your spec now

Available right now, you can pick up a Dell XPS 16 (2026) starting at around $2,029.99 or $2,769.99 in the US. The UK and Australia also have some slightly more affordable configurations available as well (where you can change the screen, shift the processor, and drop the memory and SSD capacity further, but I wouldn't recommend you go below the above specs. Still, for global availability, it's a clean sweep, no matter where in the world you are.

The base chassis itself is the same across the board, and there is a Dell XPS 14-inch edition too, if you'd like something a little more compact. By design, you can't upgrade the XPS 16's memory as it's utilizing LPDDR5X soldered directly to the motherboard. So do bear in mind, it's better to pick a higher-end spec now than regret it later.

The SSD, however, you can swap out at a later date if you so desire, albeit with a bit of effort.

  • Value: 3.5 / 5
Dell XPS 16 (2026) review: Specs

Base

Review

Price

$2,029.99 / £2,449.99/ AU$4,129.40

$2,769.99 / £2,849 / AU$4,728.99

CPU

Intel Core Ultra X7 355

Intel Core Ultra X7 358H (1.9 GHz, 16 Cores)

GPU

Intel Graphics (integrated)

Intel Arc B390 (discrete)

RAM

16GB LPDDR5X

32GB LPDDR5X

Storage

1TB M.2 NVMe PCIe 4.0 SSD

1TB M.2 NVMe PCIe 4.0 SSD

Display

16-inch Non-touch LCD 2K (1920 x 1200), 16:10, 120Hz

16-inch Touch OLED 3K (3200 x 2000), 16:10, 120Hz

Ports and Connectivity

3x Thunderbolt 4 USB Type C, 3.5mm Combo Audio Jack; Wi-Fi 7, Bluetooth 6.0

3x Thunderbolt 4 USB Type C, 3.5mm Combo Audio Jack; Wi-Fi 7, Bluetooth 6.0

Battery

70Wh

70Whr

Dimensions

311 x 214 x 15mm (12.2 x 8.4 x 0.6in)

353 x 237 x 15mm (13.9 x 9.4 x 0.6in)

Weight

2.16lbs (0.98kg)

3.65lbs (1.65kg)

Dell XPS 16 (2026): Design
  • Exceptionally premium
  • Can't upgrade memory, but you kinda don't need to
  • Lack of ports could be a deal breaker

This thing is beautiful. I've said it enough at this point, but the XPS 16 just absolutely oozes class. From a beautifully sophisticated anodized CNC-machined black aluminum chassis, to the super-thin bezels surrounding that high pixel density 3K OLED touch display, to the softly backlit keyboard, and the subtle XPS branding, it is just gorgeous through and through.

Dell's not held back on its design chops here. This is for professionals and minimalists who want something that's clean, pristine, and exceptional, all packaged up in a beautifully weighted 16-inch package. One negative perhaps? It is a bit of a fingerprint magnet, so do keep a microfiber cloth handy before you jump into that board meeting.

The keyboard's gorgeous, too. Low profile. Quiet. Backlit. With keys that don't stand out or shout. The feel of the actuation, too, although obviously nowhere near akin to a mechanical keyboard, is comfortable enough. There's plenty of spacing as well, and although the bottom row is slightly offset compared to a traditional QWERTY design, it doesn't take long to get used to.

(Image credit: Future)

The ports are a little sparse, admittedly, to accommodate all of that, but on the flip side, each and every one of them is Thunderbolt 4, meaning you've got power delivery and draw up to 100W, 40Gbps data transfer, PCIe 4.0 tunneling, and DisplayPort 2.0 alt mode as well (meaning basically you can hook up two 4K displays without worry. All built out of the USB-C connection standard). It's phenomenal. There are some laptops out there now debuting with Thunderbolt 5 this year (typically workstation models), but this is by no means poor at any level.

The only other negative (again, if you can call it that) is that you cannot upgrade the RAM. The XPS 16 uses LPDDR5X memory, which is soldered directly to the motherboard.

(Image credit: Future)

The advantage of this is that the interconnect isn't the bottleneck, and memory speed is through the roof, with the 32GB in my review unit topping out at staggering 9,600 MT/s. That's nearly 70% faster than the most mainstream kits you get on a high-end desktop.

  • Design: 4.5 / 5
Dell XPS 16 (2026) review: Performance
  • Surprisingly potent at gaming
  • Solid CPU performance too
  • SSD could be better

My only reservation with the Dell XPS 16 is the lack of higher-capacity storage at this price. That is more of an issue with the global supply chain right now. SSD pricing is still through the roof due to AI consumption being a little more unwieldy than manufacturers can accommodate.

But still, it does feel a little harsh that this £2,800 model only comes with 1TB of storage (again, all configurable on Dell's shop anyway). And to be fair, even competitors like Asus's ZenBook A14 are similarly priced at that capacity anyway.

The reason that feels harsh, though, is because in-game, the XPS 16 is a monster. That Arc B390 is one of the best discrete graphics cards I've ever seen in a laptop of this form factor. For those not in the know, Intel's own GPU line has quietly been building up momentum and offers some of the best performance per $ that money can buy. It's fantastic to see that architecture becoming more proficient generation on generation, and it shows.

Dell XPS 16 (2026): Benchmarks

3DMark: Night Raid: 43,862; Fire Strike: 13,179; Solar Bay: 27,600
Cinebench R24: 124 (single-core); 881 (multi-core)
GeekBench 6.5: 2,867 (single-core); 16,927 (multi-core)
BlackMagicDisk: Read: 4,686.6 MB/s; Write: 3,890.9 MB/s
CrossMark: Overall: 2,211 Productivity: 1,945 Creativity: 2,660 Responsiveness: 1,866
Total War: Warhammer III: 1080p, Medium: 101.5fps
Total War: Warhammer III: 1200p, Ultra: 58.6fps
Battery Life (TechRadar movie test): 17 hours 16 minutes

Our benchmarks for laptops like this typically test games at lower resolutions on medium profiles, to accommodate poor GPUs, but I didn't really need to with this. Total War: Warhammer 3, on Ultra at 1200p, managed 58.6 fps. That's near desktop levels of performance on an aggressively CPU-bound title.

CPU performance too was equally impressive, in no doubt thanks to that 16-core Panther Lake chip. It's got low base clock speeds, but that's mostly thanks to some super-efficient low-power economy cores that keep everything ticking at idle without consuming much in the way of juice.

(Image credit: Future)

Jump into a high-demand task, and those four performance cores kick into life, delivering an outstanding score of 881 in Cinebench R24 and 124 on the single core. Intel has stepped away from hyper-threading with its Ultra line (based on a new architectural shift from the original Core line), but despite the lack of threads, its performance per thread has shot up considerably.

Here's the thing: this laptop isn't just for execs; it's for designers, and gamers, and developers, and it just ticks box after box with wildly broad performance chops with seemingly little loss anywhere else.

  • Performance: 5 / 5
Dell XPS 16 (2026): Battery life
  • Rapid fast charging
  • A 17-hour battery life

I've long been a fan of Snapdragon-based laptops, purely because the battery life typically ran rings around Intel and AMD's best laptop offerings (The Vivobook S 15 Copilot+, is particularly impressive).

It's the benefits of that ARM architecture over x86 (the latter being typically less efficient and far more power hungry than its RISC-esque competitors).

I don't know how Intel has done this with Panther Lake (I hazard again it's likely because of those low-power, efficient cores), but in our battery benchmark, the XPS 16 scored a phenomenal 17 hours and 16 minutes, before going into standby mode.

  • Battery life: 5 / 5

(Image credit: Future)Should I buy the Dell XPS 16 (2026)?Dell XPS 16 (2026) scorecard

Attributes

Notes

Rating

Value

At a glance, the XPS's hardware seems overvalued; it's only when you dig under the surface that you realise why Dell chose the kit they did and priced it accordingly.

3.5 / 5

Design

An extraordinary design, backed up with an exceptional display, potent (albeit a limited number of) ports, and some modest upgradability thanks to a swappable SSD. Plus, if you're not a fan of the 16, there's always the 14, too.

4.5 / 5

Performance

Beyond all expectations, Intel's latest Panther Lake architecture, combined with the Intel Arc B390 discrete GPU, delivers exceptional performance no matter what task you throw at it.

5 / 5

Battery Life

Apple is beating in many cases, and it even gives ARM laptops a run for their money, the XPS will look after you well beyond your standard working day

5 / 5

Final Score

The XPS 16 is almost the complete package. The only downsides are that it could probably use one more USB-C port, and some form of anti-fingerprint coating. Outside of that. Phenomenal.

4.5 / 5

Buy it if…

You're looking for the ultimate professional workbook, come ultrabook
With outstanding performance no matter the task, and a battery life to match, the XPS 16 takes the brand to new heights, delivering exceptional quality at almost every level.View Deal

You want something that doesn't shout about how good it is
This isn't a Ferrari or a Lambo; this is a finely tuned Porsche. Its sleek, minimalist design looks phenomenal, and it backs up that hardware underneath by a mile and then some. Timeless.View Deal

Don’t buy it if…

You want more than three USB-C ports
USB connectivity is limited to just three ports. All on the Thunderbolt 4 platform. Although very capable, we are seeing some high-end workbooks launch with Thunderbolt 5 this year.View Deal

You're on a budget and don't like Windows 11
This is a very soft negative, but it is slightly pricier than Apple's MacBook Pro 16, and you are stuck with Windows.View Deal

Also consider

Apple MacBook Pro 14-inch (M5)

If you like the sound of this but fancy a macOS equivalent, then Apple's latest MacBook Pro 14 (M5) is a solid alternative, with exceptional ARM-based silicon, a Mini-LED retina display, and all-day battery life with MagSafe charging. It's a beauty. The catch? You do lose out on two-inches of screen real estate, but you can grab the 16-inch variant for a little extra if you need to.

Read our full Apple MacBook Pro 14-inch (M5) reviewView Deal

Asus ZenBook S 16

For a Windows-based alternative that isn't Dell, the ZenBook S 16 is our current pick for the best ultrabook money can buy, and is a genuine in-class rival to the XPS. Asus is utilizing a ceraluminum chassis (technically an alu ceramic composite). It's properly unique, and the 3K OLED holds its own against the XPS 16 above. It packs in an AMD Ryzen AI 9 HX 370 as well, and is a bit cheaper too.

Read our full Asus ZenBook S 16 reviewView Deal

How I tested the Dell XPS 16
  • Tested at home and in the office
  • Benchmarked and used across gaming and productivity tasks
  • 11 years of testing laptops, and 4 weeks with the XPS 16

I spent the last month or so living with the XPS 16 as my daily driver, moving over all of my workflow to it for my own agency work, and all of my freelance journalism as well as the odd recreational task, including writing my first novel. I streamed YouTube and Netflix on it, alongside using it for Tidal as well as some light work in Affinity.

I also benchmarked the XPS 16 extensively, utilising a mixture of CPU, gaming and storage-based synthetic and real-world tests, to truly understand exactly how it performed under targeted loads.

It is worth noting that all of this testing was performed in a cooler environment, so your performance may vary depending on where you are in the world.

Categories: Reviews

I called the Garmin Tactix 8 the 'ultimate military watch' in my review, and it's $250 off for Memorial Day

TechRadar News - Fri, 05/22/2026 - 05:45
The 4.5-star Garmin Tactix 8 is an incredible military watch and for a limited time only, its price has been slashed by $250
Categories: Technology

The DJI Mini 4K is 'the most capable drone for beginners for the money' — and it's now back to a record-low price on Amazon

TechRadar News - Fri, 05/22/2026 - 05:37
This DJI Mini 4K has crashed to its lowest-ever price on Amazon — and we think it's the ideal drone for beginners.
Categories: Technology

Think iPhones have become boring? Apple could debut quad-curved screens on the iPhone 19 Pro series — and you know what that means for future Android phones

TechRadar News - Fri, 05/22/2026 - 05:28
The iPhone 19 Pro will reportedly have a quad-curved screen, though this isn't actually a new idea.
Categories: Technology

Pages

Subscribe to The Vortex aggregator