Skip to main content
Mullvad VPN provides official releases for all major platforms. You can download signed installers from the official website or from GitHub releases.
All releases are cryptographically signed. You can find code signing keys and verification instructions on Mullvad’s Open Source page.

Windows

System requirements

  • Windows 10 or Windows 11
  • Administrator privileges for installation

Installation steps

1

Download the installer

Download the Windows installer (.exe) from mullvad.net/download or GitHub releases.
2

Run the installer

Double-click the downloaded .exe file. You may see a Windows SmartScreen warning - click “More info” and then “Run anyway” if needed.
3

Complete installation

The installer will install the Mullvad VPN service and desktop application. The service runs as a system service under the SYSTEM user account.
4

Launch the app

After installation completes, Mullvad VPN will start automatically. You can also launch it from the Start menu.

What gets installed

  • mullvad-daemon: System service that manages VPN connections and firewall rules
  • Mullvad VPN: Desktop GUI application
  • mullvad: Command-line interface (CLI) tool
  • WFP (Windows Filtering Platform) integration: For firewall management
  • Wintun driver: Virtual network adapter driver
The Mullvad daemon must run as the SYSTEM user to modify firewall rules and set up virtual network interfaces.

macOS

System requirements

  • macOS: The three latest major releases are officially supported
  • Administrator privileges for installation

Installation steps

1

Download the installer

Download the macOS installer (.pkg) from mullvad.net/download or GitHub releases.Universal binaries are available that work on both Intel and Apple Silicon Macs.
2

Open the package

Double-click the downloaded .pkg file to start the installation.
3

Follow the installer

Click through the installer steps. You’ll need to enter your administrator password to authorize the installation.
4

Grant system permissions

After installation, you may need to grant permissions in System Preferences:
  • Allow the system extension in Security & Privacy settings
  • Grant VPN configuration permissions if prompted

What gets installed

  • mullvad-daemon: System service (/Library/LaunchDaemons/net.mullvad.daemon.plist)
  • Mullvad VPN.app: Desktop application in /Applications
  • mullvad: CLI tool
  • PF (Packet Filter) integration: For firewall management

Uninstallation

To uninstall on macOS, drag the Mullvad VPN app to the Trash. The system service will be removed automatically.

Linux

System requirements

Mullvad VPN is officially supported on:
  • Ubuntu: The two latest LTS releases and latest non-LTS releases
  • Fedora: Versions not yet EOL
  • Debian: Version 12 and newer
The app is tested on the GNOME desktop environment but should work with other desktop environments.

Debian/Ubuntu installation

1

Download the DEB package

Download the .deb file for your architecture (amd64 or arm64) from mullvad.net/download.
2

Install the package

Install using apt:
sudo apt install ./MullvadVPN-*.deb
Or using dpkg:
sudo dpkg -i ./MullvadVPN-*.deb
3

Start the service

The daemon service starts automatically. You can verify it’s running:
systemctl status mullvad-daemon

Fedora/RHEL installation

1

Download the RPM package

Download the .rpm file for your architecture from mullvad.net/download.
2

Install the package

sudo dnf install ./MullvadVPN-*.rpm
Or on older systems:
sudo yum install ./MullvadVPN-*.rpm

What gets installed

  • mullvad-daemon: systemd service
  • Mullvad VPN: Desktop GUI application
  • mullvad: CLI tool (/usr/bin/mullvad)
  • nftables integration: For firewall management

Tray icon support

On GNOME, you may need to install the AppIndicator extension for the tray icon to appear:
# Install via GNOME Extensions website
# https://extensions.gnome.org/extension/615/appindicator-support/

# Or install system packages
sudo apt install libappindicator3-1  # Debian/Ubuntu
On Linux, the daemon service applies blocking firewall rules during early boot to prevent leaks before the daemon starts.

Android

System requirements

  • Android 8 (Oreo) or newer

Installation from Google Play Store

1

Open Google Play Store

Search for “Mullvad VPN” or visit the direct link.
2

Install the app

Tap “Install” and wait for the download to complete.
3

Grant VPN permissions

When you first connect, Android will prompt you to allow VPN connections. Tap “OK” to grant permission.

Installation from F-Droid

For users who prefer open-source app stores, Mullvad VPN is available on F-Droid:
1

Install F-Droid

If you don’t have F-Droid installed, download it from f-droid.org.
2

Search for Mullvad VPN

Open F-Droid and search for “Mullvad VPN”.
3

Install the app

Tap “Install” to download and install the app.

Manual APK installation

You can also download the APK directly from GitHub releases:
# Enable installation from unknown sources in Settings > Security
# Then download and open the APK file
The Android app uses the VPN Service API. Some traffic is exempt by the Android system and may leak outside the VPN, including connectivity checks, NTP requests, and traffic to/from hotspot clients. This is a platform limitation.
Enable “Block connections without VPN” in Android system settings:
  1. Go to Settings → Network & internet → VPN
  2. Tap the settings icon next to Mullvad VPN
  3. Enable “Block connections without VPN”
This enables Android’s built-in kill switch to block traffic that doesn’t go through the VPN.

iOS

System requirements

  • iOS 17.0 or newer

Installation from App Store

1

Open the App Store

Search for “Mullvad VPN” or visit the direct link.
2

Install the app

Tap “Get” and authenticate with Face ID, Touch ID, or your Apple ID password.
3

Grant VPN permissions

When you first connect, iOS will prompt you to allow VPN configuration. Tap “Allow” to grant permission.

App architecture

The iOS implementation is completely standalone:
  • Main app: User interface and account management
  • Packet Tunnel Extension: Handles VPN connection using WireGuard
  • WireGuard-go integration: Manages tunnel traffic
On iOS, the local network is always accessible with the current implementation. This is a platform-specific behavior.

Verifying your download

All releases are cryptographically signed. To verify your download:
1

Download the signature file

From the same location where you downloaded the installer, download the corresponding .asc signature file.
2

Import Mullvad's signing keys

Download the signing keys from Mullvad’s Open Source page.
3

Verify the signature

Use GPG to verify the signature:
gpg --verify MullvadVPN-*.asc MullvadVPN-*

Next steps

Quick start guide

Complete your first connection to Mullvad VPN

Build docs developers (and LLMs) love