Mullvad VPN
Security
Usability
Rank 2 of 68 in the register
Sweden · Commercial VPN
Exits in 50 countries
Head to head
The gap
The security score is not a total of good things. It starts at 100 and eight channels each take a share of what is left, so one channel can settle a record on its own. Both records are drawn here on the same scale — the model’s own cap of 0.9 — rather than on a scale fitted to this pair, which would make every comparison look equally dramatic.
Line by line
Every field the contract publishes about a provider, in the contract’s own groups, including the rows where the two agree — a table that printed only differences would invent a disagreement, and one that printed only the interesting rows would be us choosing what is interesting. Open a group to read its rows; each one says how many it holds and how many of them the two records answer differently.
A green cell means the methodology itself prices that value below the other one, not that we prefer it. Rows the model does not price carry no mark at all: price is never marked, because nothing in the model says cheaper is safer, and neither is coverage, platform count or devices. Where a value was never established the cell says so instead of showing a zero.
What actually happened
Other pairs
Pairs within the top ten get a page — 80 comparisons in all. Records below that are not paired here: a comparison earns a page where the choice between the two is a real one, and that choice is made near the top of the register.
Security
Usability
Rank 2 of 68 in the register
Sweden · Commercial VPN
Exits in 50 countries
Security
Usability
Rank 13 of 68 in the register
Netherlands · Commercial VPN
Exits in 100 countries
1 documented demand, none of which produced data
1 documented demand, 1 of which produced data
Recent changes
Notes
On the record as a whole.
The April 2023 search warrant is the strongest single item in this record: police attended the office and left with nothing, which is practice evidence rather than paper and ages far more slowly than an audit. Pricing is a flat 5 EUR/month on every term; U04_price_monthly carries 5.80 (the USD equivalent Mullvad states on its own page); U04b_price_yearly is 69.60, the full year at that rate.
On the record as a whole.
surfshark.com is not Cloudflare-walled the way nordvpn.com is: robots.txt, static pages and even the two ISAE 3000 no-logs assurance report PDFs and the December 2025 SecuRing infrastructure pentest report are all fetchable directly, and robots.txt's own Disallow list named the exact PDF paths (evidently meant to keep them out of search results, not to hide them from a direct link).
Both audit PDFs were opened and read in full (level A). The 2025 report's appendix and the privacy policy describe the same record in the same terms: 'user ID and/or your IP address and connection to VPN server time stamps', automatically deleted within 15 minutes of the session ending.
This record was previously read twice — connection_timestamps in V11 from the audit wording, source_ip in C01 from the policy wording — and graded at the worse of the two, which made the fifteen-minute buffer cost more than saying nothing at all: a blank on C01 is the market prior 0.550 and source_ip is 0.750.
R29 now draws the line: state deleted within a declared window tied to the end of the session is the connection, not a record of it, so both fields read connection_timestamps on the same sentence. What is still charged is what outlives the session — the last login date in policy section 2.3.1 and the connection timestamps the auditor names.
Surfshark and NordVPN share a parent (Nord Security, since 2022) but Surfshark's own about-us page states the brands merged 'while operating independently' with separate infrastructure — M18 is set to separate on that basis, mirroring the nordvpn.com record.
U12a is partial rather than yes on the server table's own P2P column: 88 of the 100 listed countries carry it and twelve do not (AU, CL, CO, HR, GR, IE, JP, MX, NZ, TW, TR, AE). The column is drawn client-side, so it was read off the rendered table rather than the static HTML, where every row carries every label.
The transparency report at /transparency-report — which is where /warrant-canary now redirects — carries the April-June 2026 quarter as a table: 374,719 DMCA notices, 33 inquiries from government institutions, 1 warrant, 0 national security letters and 0 gag orders. P08 counts the 34 legal requests and leaves the DMCA notices out: those are copyright complaints about traffic, not requests for a user's data.
The same page states Surfshark is retiring its warrant canary in favour of quarterly reporting, which is why P07 is removed rather than none — the canary existed and was withdrawn deliberately.
U07_protocols carries proprietary for Dausos on Surfshark's own word — its protocol page calls Dausos "Surfshark's proprietary protocol" and publishes no source for it — and that single value is what sets C13_weakest_protocol and the hygiene charge that follows. IKEv2 is kept because Surfshark still documents it, though its own blog records the removal from the Windows app; Shadowsocks is gone from the support index and is not listed.
Open questions
Still open on this record.
The audit cadence. Mullvad publishes an audit index in the app repository and it is honest about cadence: the index states outright that the main app audits happen every two years, with extras in between, which is why regularity is recorded as repeated at no fixed interval rather than as an annual series — no annual cadence is claimed by anyone.
Two reports, one date. Two separate engagements share 2026-02-17 and the record names both: Assured's code review of GotaTun, the userspace WireGuard implementation (no critical, high or medium issues; two low and nine notes), and Leviathan's Mobile App Profile assessment of the Android app, whose compliance report gives February 17, 2026 as its date of evaluation and AL2 as its assurance level. One date, two reports, no contradiction.
Why the count reads eight. The audit count is eight because the GotaTun review sits outside the app repository's own list. Before them, a 30 person-day X41 D-Sec review across all five platforms found six vulnerabilities — three high, two medium, one low, none critical.
What no engagement covers. What none of these engagements covers is the server fleet: every one of them examines the app or the tunnel protocol, which is why fleet coverage is recorded as not applicable rather than as a sample. The no-logs claim on the infrastructure side therefore rests on the April 2023 search warrant — Swedish police came for customer data and left without it — and not on any audit.
Reproducible builds, Android only. Reproducible builds are Android-only, from version 2025.2 onward, so the field stays partial; the desktop and iOS builds are not verifiable bit-for-bit. Turkey is the one mandate country on the offered list and the hosting behind it is not established.
Nothing published about demands. Nothing on record rests on anything the provider publishes about demands it receives: there is no transparency report and no warrant canary, so the April 2023 seizure carries that ground alone. Kill-switch coverage and P2P policy are unestablished; the latest audit is a protocol code review, not a no-logs engagement, so V11 is silent and retention leans on the declaration.
Still open on this record.
The two prices. U04_price_monthly=16.45 and U04b_price_yearly=79.00 are the Surfshark Starter (VPN + Alternative ID) renewal figures in USD. The pricing page itself only ever shows the promotional first-term rate, but the ToS links a current-recurring-amounts page (surfshark.com/terms-of-service/pricing) that lists renewal prices by term — read there on a US IP, since currency is geo-locked. There is no VPN-only tier below Starter.
What no primary document confirmed. C00_architecture, C08_servers_ownership, U09, U11, V12/V13, X04, X06-X08, X10, X11 were not confirmed against a primary document in the time available and are left unknown. M11_owner_jurisdiction and X04_owner_group_history carry the same gap recorded for nordvpn.json: Nord Security's own jurisdiction and record are not stated on either brand's site.
India, and the secret-order regime. P04_mandate_response=withdrew_physical is the June 2022 India exit, restored from Surfshark's own blog (surfshark.com/blog/surfshark-servers-certin-india) after the earlier run found the /trust-center page no longer carried it. P11=judicial_only rests on the transparency report showing the April 2026 Amsterdam District Court warrant and its National-Security-letter and gag-order counters at zero.
Two reports found, maybe not all. Only two Deloitte no-logs reports (Dec 2022, Jun 2025) were found published; there may be others not linked from robots.txt that this audit did not search for by other means.
25 Sep 20261 changes
Monthly price USD, month-to-month plan, as chargedU04_price_monthly
5.8 changed to 5.69
12 Sep 20264 changes
Security scoresecurity.score
65 changed to 64
Security scoresecurity.score
64 changed to 60
Works under active censorshipU06_censorship_circumvention
none changed to claimed
Usability scoreusability.score
55 changed to 64
13 Sep 20261 changes
Why this provider is in the catalogueM14_inclusion_basis
hand_picked changed to adverse_record
29 Aug 20264 changes
Actual disclosure historyP02_disclosure_history
not on the record changed to account_data_disclosed
Court record of compelled productionP03_court_record
not on the record changed to produced_account_data
Transparency reportP05_transparency_report
not on the record changed to fresh_with_numbers
Reported numbers plausible for this scaleP06_report_plausibility
not on the record changed to plausible
Mullvad VPN and Surfshark were assessed by the HushFleet team: Mullvad VPN scores 60/100 for security, in the Acceptable band, and Surfshark 16/100, in the Insufficient band. They share an independent audit. The 44-point gap opens widest on Integrity — “Has it been caught saying one thing and doing another?” — taking 0% from Mullvad VPN and 35% from Surfshark.
| Mullvad VPN | Surfshark | |
|---|---|---|
| Security | 60 acceptable · rank 2 of 68 | 16 insufficient · rank 13 of 68 |
| Usability | 64 out of 100 | 67 out of 100 |
| Record completeness | 87% usability 75% | 67% usability 83% |
| Mullvad VPN | Surfshark | |
|---|---|---|
| Who operates the exit | Run by the provider itself provider_operatedBmullvad.net · | — not establishedno source published |
| Retention as declared | Nothing that links traffic to a person none_linkableBmullvad.net · | Connection timestamps connection_timestampsBsurfshark.com · |
| RAM-only diskless servers | Yes, on the provider's word yes_declaredBmullvad.net · | Yes, checked by someone independent yes_verifiedAsurfshark.com · |
| IP allocation model | Exit address shared between users sharedBmullvad.net · | Dedicated address offered as an option dedicated_optionBsurfshark.com · |
| Signup without email | Yes, on the provider's word yes_declaredBmullvad.net · | — not establishedno source published |
| Anonymous payment options | Cash · Cryptocurrency paid directly · Prepaid voucher or gift cardBmullvad.net · | — not establishedno source published |
| Own DNS inside the tunnel | Yes, on the provider's word yes_declaredBmullvad.net · | — not establishedno source published |
| Worst third-party SDK category in the app | No third-party SDK noneBmullvad.net · | — not establishedno source published |
| Worst third-party tracker category on the site | No third-party tracker noneBmullvad.net · | — not establishedno source published |
| Who owns the hardware | Owned and rented both mixedBmullvad.net · | — not establishedno source published |
| Offered countries that sit under a logging mandate | 1 TurkeyBmullvad.net · | 5 United Arab Emirates, India, Kazakhstan, Turkey, VietnamBapi.surfshark.com · |
| Hosting in the mandate countries it offers | — not establishedno source published | Physical and virtual both mixedBapi.surfshark.com · |
| Incorporation country mandates retention | No such mandate no | No such mandate no |
| Beneficial owner sits under a retention regime | No such regime noCmullvad.net · | — not establishedno source published |
| Persistent device identifier | None held noneBplay.google.com · | — not establishedno source published |
| Weakest protocol still offered | — the question does not ariseBmullvad.net · 2 sources · | A vendor protocol with no published source proprietaryBsupport.surfshark.com · 2 sources · |
| What the exit does to passing traffic | — not established | — not established |
| Mullvad VPN | Surfshark | |
|---|---|---|
| At least one independent audit | Yes, and the report was read yes_verified | Yes, and the report was read yes_verified |
| How the report is published | The full report is published full_pdf | The full report is published full_pdf |
| Subject of the audit | The protocol · The app's securityAassured.se · 2 sources · | The no-logs claim itself · The infrastructureAsurfshark.com · |
| Server fleet coverage | — the question does not ariseno source published | A sample of servers sampleAsurfshark.com · |
| Auditor name | Assured Security Consultants (GotaTun code review) and Leviathan Security Group (Android Mobile App Profile assessment) — two engagements, both reports dated 2026-02-17 |
| Mullvad VPN | Surfshark | |
|---|---|---|
| Server seizure by law enforcement | Seized, and nothing usable was on it seizure_no_dataBmullvad.net · | No seizure on record none_knownno source published · |
| Actual disclosure history | No disclosure on record none_knownBmullvad.net · | Account data was handed over account_data_disclosedBsurfshark.com · |
| Court record of compelled production | No court record none_knownBmullvad.net · |
| Mullvad VPN | Surfshark | |
|---|---|---|
| Documented gap between claim and behaviour | No documented lie none | No documented lie none |
| Marketing against audit findings | No gap on record none | No gap on record none |
| Ownership structure transparency | Ownership is stated and checkable clearBmullvad.net · | Ownership is partly stated partialBsurfshark.com · |
| Adverse events on the owner group record | Nothing adverse on record cleanCmullvad.net · | — not establishedno source published |
| How the service is paid for | Paid subscriptions only paid_only | Paid subscriptions only |
| Mullvad VPN | Surfshark | |
|---|---|---|
| Legal entity | Mullvad VPN AB, Box 53049, 400 14 Gothenburg, SwedenBmullvad.net · | Surfshark B.V.Asurfshark.com · 2 sources · |
| Where the company sits | Sweden SEBmullvad.net · | Netherlands NLAsurfshark.com · 2 sources · |
| Year the service launched | 2009Bmullvad.net · | 2018 |
| Mullvad VPN | Surfshark | |
|---|---|---|
| Platforms with a client | 5 Android, iOS, Linux, macOS, WindowsBmullvad.net · | 9 Windows, macOS, Linux, Android, iOS, Browser extension, Android TV, Apple TV, Fire TVBsurfshark.com · |
| Countries with an exit | 50 countriesBmullvad.net · | 100 countriesBapi.surfshark.com · |
| Paying monthly | $5.69 per monthBmullvad.net · | $16.45 per monthBsurfshark.com |
| ChannelPressure taken from what was left | Mullvad VPNDominant channel: Retention0 to 0.9, longer is worse | SurfsharkDominant channel: Integrity0 to 0.9, longer is worse |
|---|---|---|
| IntegrityHas it been caught saying one thing and doing another? | 0.000 | 0.348 |
| RetentionDoes a record exist that links traffic to a person, and who checked? | 0.218 | 0.332 |
| HygieneWhat identifying material is collected in passing, and can the client be checked at all? | 0.050 | 0.264 |
| DisclosureHas it already handed something over? | 0.000 | 0.250 |
| IgnoranceHow much of this did nobody establish? | 0.103 | 0.214 |
| JurisdictionCan someone compel what exists, without the provider getting a say? | 0.050 | 0.117 |
| ArchitectureWho operates the exit, and what does it do to the traffic? | 0.050 | 0.050 |
| SilenceTen years, millions of users and nothing on record? | 0.000 | 0.000 |
| What is left of 100The channels multiply: each one takes a share of what the one before it left standing | 60 | 16 |
By circumstance
| Mullvad VPN | Surfshark | |
|---|---|---|
| Torrenting | — not established | Allowed on some servers partial |
| Streaming | — not established | Reachable yes |
| Devices at once | 5 | unlimited |
| Under censorship | Claimed to work claimed | Claimed to work claimed |
| Exits in mandate countries | 1 Turkey | 5 United Arab Emirates, India, Kazakhstan, Turkey, Vietnam |
| Hosting in those countries | — not established | Physical and virtual both mixed |
| Company under a mandate | No such mandate no | No such mandate no |
| Secret orders | Orders go through a judge judicial_only | Orders go through a judge judicial_only |
| Deloitte Lietuva UABAsurfshark.com · |
| Auditor category | A security specialist security_specialistBgithub.com · | One of the Big Four big4Asurfshark.com · |
|---|
| Assurance standard | Another standard otherBgithub.com · | ISAE 3000 isae3000Asurfshark.com · |
|---|
| Date of latest report | 2026-02-17Aassured.se · 2 sources · | 2025-06-10Asurfshark.com · |
|---|
| Audit cadence | Repeated, at no fixed interval repeated_irregular | Repeated, at no fixed interval repeated_irregular |
|---|
| Total published audits | 8Bgithub.com · 2 sources · | 2Asurfshark.com · 2 sources · |
|---|
| Retention as the report states it | The report does not address retention not_statedBgithub.com · | Connection timestamps connection_timestampsAsurfshark.com · |
|---|
| Client source code published | Every client allBgithub.com · | — not establishedno source published |
|---|
| Reproducible builds | On some platforms partialBmullvad.net · | — not establishedno source published |
|---|
| Separate pentest | Yes, and the report was read yes_verified | Yes, and the report was read yes_verified |
|---|
| Strength of the assurance opinion | — the question does not ariseno source published | A reasonable-assurance opinion reasonableAsurfshark.com · |
|---|
produced_account_data| Response to a national logging mandate | Was never present in that country no_presenceBmullvad.net · | Pulled its servers out rather than comply withdrew_physicalBsurfshark.com · |
|---|
| Transparency report | — not establishedno source published | Current, with request numbers fresh_with_numbersBsurfshark.com · |
|---|
| Reported numbers plausible for this scale | — the question does not ariseno source published | The numbers are plausible at this scale plausibleBsurfshark.com · |
|---|
| Warrant canary discipline | — not establishedno source published | Taken down removedBsurfshark.com · |
|---|
| Requests received | — not establishedno source published | 34Bsurfshark.com · |
|---|
| Requests that produced data | — not establishedno source published | 1Bsurfshark.com · |
|---|
| Secret-order regime | Orders go through a judge judicial_only | Orders go through a judge judicial_only |
|---|
| Chronology of documented enforcement events | 1 documented demandBmullvad.net · | 1 documented demandBsurfshark.com · |
|---|
paid_only| Claims of 100% anonymity or military-grade crypto | — not established | — not established |
|---|
| Aggressive lifetime subscriptions | Does not noBmullvad.net · | — not establishedno source published |
|---|
| Coverage exists only on affiliate sites | Covered outside affiliate sites too noBmullvad.net · | — not establishedno source published |
|---|
| Security incident and how it was disclosed | Disclosed by the provider, promptly self_disclosed_promptBmullvad.net · | No incident on record none_knownno source published · |
|---|
| Affiliate programme and payout tier | No affiliate programme noneBmullvad.net · | — not establishedno source published |
|---|
| Owner-run review media discloses the tie | — the question does not ariseno source published | — not establishedno source published |
|---|
| App store declaration | The store form matches the published policy matches_policyBapps.apple.com · 3 sources · | Behaviour is declared to the store, not in the policy undisclosed_behaviourBplay.google.com · 2 sources · |
|---|
| User base scale (mass >=10M, mid >=1M, niche <1M) | Mid: a million users or more midBmullvad.net · | — not establishedno source published |
|---|
| Ultimate beneficial owner as written | Amagicom AB, 100% owned by founders Fredrik Stromberg and Daniel BerntssonBmullvad.net · | Nord SecurityBsurfshark.com · |
|---|
| Other businesses of the owner group | None disclosedBmullvad.net · | A portfolio of other appsBsurfshark.com · |
|---|
| Country of the ultimate beneficial owner | SEBmullvad.net · | — not establishedno source published |
|---|
| Owner group | independentBmullvad.net · | nord_securityBsurfshark.com · |
|---|
| Date the current owner took control | — the question does not ariseno source published | 2022Bsurfshark.com · |
|---|
| Role of this brand inside the group | The group's principal brand principal | The group's principal brand principal |
|---|
| Infrastructure shared with cluster siblings | Separate infrastructure separate | Separate infrastructure separate |
|---|
| Paying yearly | $69.60 a year at renewal, billed onceBmullvad.net · | $79.00 a year at renewal, billed onceBsurfshark.com · |
|---|
| Usable free tier | No free tier none | No free tier none |
|---|
| Works under active censorship | Claimed to work claimed | Claimed to work claimed |
|---|
| Protocols offered | 1 WireGuardBmullvad.net · 2 sources · | 4 WireGuard, OpenVPN, IKEv2, A vendor protocol with no published sourceBsupport.surfshark.com · 2 sources · |
|---|
| Kill switch coverage | — not establishedno source published | On every platform all_platformsBsurfshark.com · |
|---|
| Split tunneling available | Available yesBmullvad.net · | — not establishedno source published |
|---|
| Simultaneous connections | 5Bmullvad.net · | unlimitedBsurfshark.com · |
|---|
| Friction to start using it | No account needed no_accountBmullvad.net · | — not establishedno source published |
|---|
| P2P allowed | — not establishedno source published | Allowed on some servers partialBsurfshark.com · |
|---|
| Major streaming services reachable | — not establishedno source published | Reachable yesBsupport.surfshark.com · 2 sources · |
|---|