Platform downloads · Architecture · Before you install

Clash downloads and client packages

Choose your operating system, then check your processor architecture. Use a GUI client on desktop or mobile; choose the Mihomo core for servers and routers.

The client and connection service are separate. Import a valid subscription or local configuration after installation.

Desktop client / EXE

Windows clients

For a first install, start with Clash Plus. The GUI clients below are x64 packages for compatible Windows devices. ARM devices require a separate compatibility check; these are not native ARM64 builds.

Clash Verge Rev

A good fit for desktop users who want to manage configurations, rules, and traffic-routing settings. System proxy and TUN route traffic differently. Test the system proxy first, then configure the permissions and services TUN requires if needed.

Windows · x64 · EXE

FlClash

A good fit if you want a similar interface across desktop and mobile. Choose the installer for a first install. If you use the ZIP package, extract it to a permanent folder; don’t run it from inside the archive or move its data files while it’s in use.

Windows · AMD64

Clash Nyanpasu

Another desktop interface for managing configurations. Back up your existing Clash configuration, then import it separately into the new client. Settings may not map one-to-one, so review overrides, ports, and startup options in particular.

Windows · x64 · EXE

Clash for Windows

Discontinued

Kept for reference in legacy environments and configuration migrations—not recommended for a first install. This archived client uses an older core that may not recognize newer protocols or configuration fields. If configuration parsing fails, consider switching to a maintained client.

Windows · Archived installer

Windows requirements and setup

CheckRequirements and recommendations
Operating systemUse a supported version of Windows 10 or Windows 11. Check the installer for the specific minimum version required.
ProcessorCheck Settings → System → About for your system type. Packages in this section are x64 / AMD64.
Permissions and portsFor everyday use, start with the system proxy. TUN or background services may require administrator approval. If a port is already in use, quit the old client first.

Before and after installation

Choose the right package and migrate your configuration

Get the app running first, then handle configuration and connectivity. Troubleshooting one issue at a time makes it easier to find the cause.

Check what type of file you downloaded

Installers, disk images, archives, and core binaries serve different purposes. On Windows, an EXE usually starts an installer; on macOS, a DMG is a disk image that contains an app; on Android, an APK is installed by the system installer. On Linux, both the distribution’s package format and the architecture must match. The file extension alone doesn’t tell you whether a package will work.

Don’t keep opening a file while your browser is still downloading it. If the system says the package isn’t compatible, note the full message and check your system type instead of repeatedly switching clients. Installation failures and invalid subscriptions happen at different stages and should be troubleshot separately.

Keep your configuration; don’t copy the whole data directory

Before upgrading, save your subscription URL, local YAML, custom rules, and overrides. Note your ports, DNS mode, and whether TUN is enabled. Subscription URLs may contain credentials, so don’t post them on public forums or include them in screenshots. When switching clients, rebuild the configuration using the import feature, then check any local changes manually.

Automatic subscription updates may overwrite directly edited settings. For changes you need to keep, use the client’s supported override or extension mechanism. A new client may not recognize the old client’s database, cache, or service state. Copying the entire directory can carry old problems over too.

Know the difference between system proxy and TUN

The system proxy affects apps that read the system proxy settings. TUN uses a virtual network interface to handle matching traffic and involves additional permissions, routes, and DNS settings. Start by testing the system proxy. Once the configuration works, decide whether to enable TUN based on the needs of your apps.

Fully quit the old client before switching, including any background process in the system tray or menu bar. Two clients changing proxy settings at the same time can leave the switch enabled while traffic still goes through the old port. If installation requires permission, check which app and action the prompt refers to first.

Check startup and connectivity separately

If the client opens, the app is running—but that doesn’t mean you’re connected. Next, check that the subscription updates, the configuration is enabled, the proxy mode is right, and the system or app is using the selected traffic-routing method. Rule mode routes traffic based on rule order; it doesn’t send every connection through the proxy.

When something goes wrong, check the error type in the logs first. Configuration parsing, port conflicts, permission failures, and remote connection failures call for different fixes. Note the relevant error, then change one setting at a time. Changing DNS, mode, and routing together makes it harder to identify the cause.

Download FAQs

Package and installation FAQs

How to choose an architecture, upgrade, and get started.

Downloading Clash for the first time? Which client should you choose?

For Windows, macOS, Android, and iOS, start with Clash Plus. For Linux, start with Clash Verge Rev. Check your device architecture before choosing a package. Clients do not include a subscription service, so you’ll need to import a working configuration after installation.

What’s the difference between ARM64, AMD64, x64, and Universal?

AMD64 and x64 usually refer to the same 64-bit x86 architecture; ARM64 is a different 64-bit architecture. Android Universal packages include multiple architectures and are usually larger. Check your system or device specifications before downloading—don’t choose based on the device brand alone.

Can Apple silicon Macs use any macOS download?

Don’t choose based on the section heading alone. Clash Plus has a dedicated ARM64 package. The listed macOS downloads for Clash Verge Rev, FlClash, and ClashX Meta are x64 or x86_64. On Apple silicon, check Rosetta compatibility before using these packages, or choose a native ARM64 build when available.

Why can’t I connect right after downloading?

The installer includes the client, not a connection service. Import a valid subscription or local configuration, make sure it’s enabled, then turn on the system proxy or TUN as needed. Verify one traffic-routing method first to avoid running multiple proxy clients at once.

What should I keep before upgrading a client?

Export or back up your subscription URL, local configuration, custom rules, and override settings. Note your ports and traffic-routing method. Fully quit the old client before installing the new version, then check that your configuration migrated on first launch. Don’t overwrite the entire data directory when switching clients.

Should you download a GUI client or the Mihomo core?

For everyday desktop and mobile use, choose a GUI client for configuration imports, mode switching, and logs. The Mihomo core is mainly for servers, routers, and command-line setups; you’ll need to manage the configuration, startup process, permissions, and service yourself.