> ## Documentation Index
> Fetch the complete documentation index at: https://mintlify.com/mullvad/mullvadvpn-app/llms.txt
> Use this file to discover all available pages before exploring further.

# Installation

> Download and install Mullvad VPN on Windows, macOS, Linux, Android, and iOS

Mullvad VPN provides official releases for all major platforms. You can download signed installers from the [official website](https://mullvad.net/download/) or from [GitHub releases](https://github.com/mullvad/mullvadvpn-app/releases/).

<Note>
  All releases are cryptographically signed. You can find code signing keys and verification instructions on [Mullvad's Open Source page](https://mullvad.net/en/guides/open-source/).
</Note>

## Windows

### System requirements

* Windows 10 or Windows 11
* Administrator privileges for installation

### Installation steps

<Steps>
  <Step title="Download the installer">
    Download the Windows installer (`.exe`) from [mullvad.net/download](https://mullvad.net/download/) or [GitHub releases](https://github.com/mullvad/mullvadvpn-app/releases/).
  </Step>

  <Step title="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.
  </Step>

  <Step title="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.
  </Step>

  <Step title="Launch the app">
    After installation completes, Mullvad VPN will start automatically. You can also launch it from the Start menu.
  </Step>
</Steps>

### 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

<Warning>
  The Mullvad daemon must run as the SYSTEM user to modify firewall rules and set up virtual network interfaces.
</Warning>

## macOS

### System requirements

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

### Installation steps

<Steps>
  <Step title="Download the installer">
    Download the macOS installer (`.pkg`) from [mullvad.net/download](https://mullvad.net/download/) or [GitHub releases](https://github.com/mullvad/mullvadvpn-app/releases/).

    Universal binaries are available that work on both Intel and Apple Silicon Macs.
  </Step>

  <Step title="Open the package">
    Double-click the downloaded `.pkg` file to start the installation.
  </Step>

  <Step title="Follow the installer">
    Click through the installer steps. You'll need to enter your administrator password to authorize the installation.
  </Step>

  <Step title="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
  </Step>
</Steps>

### 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

<Steps>
  <Step title="Download the DEB package">
    Download the `.deb` file for your architecture (amd64 or arm64) from [mullvad.net/download](https://mullvad.net/download/).
  </Step>

  <Step title="Install the package">
    Install using apt:

    ```bash theme={null}
    sudo apt install ./MullvadVPN-*.deb
    ```

    Or using dpkg:

    ```bash theme={null}
    sudo dpkg -i ./MullvadVPN-*.deb
    ```
  </Step>

  <Step title="Start the service">
    The daemon service starts automatically. You can verify it's running:

    ```bash theme={null}
    systemctl status mullvad-daemon
    ```
  </Step>
</Steps>

### Fedora/RHEL installation

<Steps>
  <Step title="Download the RPM package">
    Download the `.rpm` file for your architecture from [mullvad.net/download](https://mullvad.net/download/).
  </Step>

  <Step title="Install the package">
    ```bash theme={null}
    sudo dnf install ./MullvadVPN-*.rpm
    ```

    Or on older systems:

    ```bash theme={null}
    sudo yum install ./MullvadVPN-*.rpm
    ```
  </Step>
</Steps>

### 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:

```bash theme={null}
# Install via GNOME Extensions website
# https://extensions.gnome.org/extension/615/appindicator-support/

# Or install system packages
sudo apt install libappindicator3-1  # Debian/Ubuntu
```

<Note>
  On Linux, the daemon service applies blocking firewall rules during early boot to prevent leaks before the daemon starts.
</Note>

## Android

### System requirements

* Android 8 (Oreo) or newer

### Installation from Google Play Store

<Steps>
  <Step title="Open Google Play Store">
    Search for "Mullvad VPN" or visit the [direct link](https://play.google.com/store/apps/details?id=net.mullvad.mullvadvpn).
  </Step>

  <Step title="Install the app">
    Tap "Install" and wait for the download to complete.
  </Step>

  <Step title="Grant VPN permissions">
    When you first connect, Android will prompt you to allow VPN connections. Tap "OK" to grant permission.
  </Step>
</Steps>

### Installation from F-Droid

For users who prefer open-source app stores, Mullvad VPN is available on [F-Droid](https://f-droid.org/packages/net.mullvad.mullvadvpn/):

<Steps>
  <Step title="Install F-Droid">
    If you don't have F-Droid installed, download it from [f-droid.org](https://f-droid.org/).
  </Step>

  <Step title="Search for Mullvad VPN">
    Open F-Droid and search for "Mullvad VPN".
  </Step>

  <Step title="Install the app">
    Tap "Install" to download and install the app.
  </Step>
</Steps>

### Manual APK installation

You can also download the APK directly from [GitHub releases](https://github.com/mullvad/mullvadvpn-app/releases/):

```bash theme={null}
# Enable installation from unknown sources in Settings > Security
# Then download and open the APK file
```

<Warning>
  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.
</Warning>

### Recommended settings

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

<Steps>
  <Step title="Open the App Store">
    Search for "Mullvad VPN" or visit the [direct link](https://apps.apple.com/us/app/mullvad-vpn/id1488466513).
  </Step>

  <Step title="Install the app">
    Tap "Get" and authenticate with Face ID, Touch ID, or your Apple ID password.
  </Step>

  <Step title="Grant VPN permissions">
    When you first connect, iOS will prompt you to allow VPN configuration. Tap "Allow" to grant permission.
  </Step>
</Steps>

### 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

<Note>
  On iOS, the local network is always accessible with the current implementation. This is a platform-specific behavior.
</Note>

## Verifying your download

All releases are cryptographically signed. To verify your download:

<Steps>
  <Step title="Download the signature file">
    From the same location where you downloaded the installer, download the corresponding `.asc` signature file.
  </Step>

  <Step title="Import Mullvad's signing keys">
    Download the signing keys from [Mullvad's Open Source page](https://mullvad.net/en/guides/open-source/).
  </Step>

  <Step title="Verify the signature">
    Use GPG to verify the signature:

    ```bash theme={null}
    gpg --verify MullvadVPN-*.asc MullvadVPN-*
    ```
  </Step>
</Steps>

## Next steps

<Card title="Quick start guide" icon="rocket" href="/quickstart">
  Complete your first connection to Mullvad VPN
</Card>
