Choose your operating system, then check your device architecture.
Desktop, mobile, and server devices use different installers. Compare the client options below, review architecture details, and check the installation requirements. After downloading, follow the guide to import a subscription and get set up.
Clients are listed in a consistent order for each platform. Start with the recommended option, then compare alternatives if you want to keep your existing setup or workflow.
Windows Clients
On a typical PC, check “Settings → System → About” for the system type. Downloads in this section are primarily x64. On ARM devices, first verify application compatibility with your version of Windows.
A good fit for first-time users who want to import subscriptions and choose a proxy through a graphical interface. After installation, add your configuration, confirm that a proxy group has an available option, and then enable the system proxy. Installing the client does not configure a connection by itself.
For desktop users who want to manage subscriptions, overrides, and service mode. Overrides layer local settings on top of a subscription configuration, making it easier to keep custom rules when the subscription updates. To get started, configure rule mode and the system proxy first. Set up TUN only if you need it; you don’t have to enable every network option.
A good choice if you already use FlClash on your phone and want a similar experience on your PC. AMD64 and x64 generally refer to the same architecture; this build isn’t limited to processors from a particular manufacturer. After importing your configuration, check your proxy group. Local ports and network settings must be configured separately on each device.
An alternative GUI for Windows. When switching clients, migrate your subscription source, local rules, and any required port settings. Don’t overwrite the new client’s data directory. If configuration loading fails, check the log for details before deciding whether to adjust your existing configuration.
An archived option for reviewing or migrating an existing setup only. Since this client is no longer maintained, don’t expect updates for new protocols or operating system compatibility. For new devices, choose a client listed above. Before migrating, save your subscription link and custom configuration; afterward, check which port the system proxy uses.
Windows · Archived
Windows installation requirements
Check
What to look for
Installation notes
System and architecture
Use a Windows 10 or 11 version that still receives security updates; confirm the system is x64
Check the installer for its minimum version. Don’t assume an x64 installer is a native ARM build
Runtime components
Some interfaces require runtime components such as WebView2
Install dependencies as prompted by the installer; don’t download runtimes from untrusted pop-ups
Network permissions
System proxy and TUN have different permission requirements
Enabling a service or TUN may require administrator approval; use a standard account to import subscriptions
Quit the old client before switching to avoid multiple processes changing the system proxy at once. Check the mixed port in your current client settings instead of reusing a port number from an old guide.
macOS Clients
Open “About This Mac” from the Apple menu and check whether the device lists a “Chip” or “Processor.” Apple Silicon uses ARM64; Intel Macs usually use x64. The buttons below also show the architecture of each actual download.
A good first option for Mac users. Choose the DMG that matches your chip, open the disk image, and move the app to the Applications folder before launching it. After importing a subscription, check that rule mode and the system proxy are working. Adjust other network settings only after basic access is confirmed.
For Mac users who want more control over subscriptions, rules, and service settings. Both Mac links in the current download list point to the same x64 file; neither is a native ARM64 build. Before using it on Apple Silicon, confirm that your system supports Rosetta translation and that the app is compatible.
For users who want a similar subscription management workflow across devices. The current Mac download is AMD64, and the Apple Silicon link points to the same file. Check translation compatibility before installing. You can reuse your configuration, but review permissions, ports, and network settings separately on your Mac.
For reviewing the older menu bar client or migrating an existing setup, not for new installations. Both links currently point to an archived x86_64 build. During migration, save your subscription source and local rules. Reconfigure permissions and background services in the new client instead of copying the old app directory.
DMG · Archived
macOS installation requirements
Device
Package architecture
Before installing
Apple Silicon
ARM64 is preferred; x64 builds require compatible translation support
Clash Plus has a dedicated ARM64 download; check the file details for other clients
Intel Mac
x64 / x86_64 / AMD64
Confirm the app supports your macOS version; architecture alone doesn’t guarantee compatibility with older systems
System and permissions
Use a supported macOS version; check the app’s requirements for the minimum
Grant network extension or background service permissions as needed; read the specific reason if macOS blocks the app
If macOS reports that an app is incompatible, check your chip and system version first. Don’t run commands that bypass system security protections. After quitting the client, also confirm the system proxy is back in the expected state.
Android Clients
Most recent phones use ARM64. Older devices may need ARMv7. If you’re unsure of your architecture, choose a universal build when available. Android will ask you to confirm the VPN connection the first time you connect.
A straightforward starting point for ARM64 phones. When installing, grant permission only to the browser or file manager you’re using, then revoke it afterward if you prefer. Open the client, add a subscription, choose a proxy group, and approve Android’s VPN connection request. Then return to your browser to test access.
Choose from ARM64, ARM, and universal builds to match your device. Universal builds include multiple architectures and usually take up more download and storage space. After importing a remote subscription, update it and confirm the configuration loads before connecting. App-based and rule-based routing are separate settings.
For users who want a similar workflow on their phone and desktop. Newer phones usually use ARM64; ARMv7 is for devices with that older architecture. If the connection drops when the screen locks, check battery management and background restrictions before troubleshooting subscriptions or rules. Reinstalling the app shouldn’t be the first step.
For users with existing Surfboard-compatible configurations. Its configuration format differs from Clash YAML, so don’t expect arbitrary Clash files to work as-is. Before downloading, check that your subscription provider offers a compatible format and supports the required proxy protocols, rules, and policy groups.
If another VPN app is installed, check which app is using the connection and allow background activity if needed
Android generally allows only one standard VPN connection at a time. If the connection drops immediately, check for other VPNs, work profiles, or device management policies, then review the client logs.
iOS Clients
Install on iPhone or iPad through the App Store. Check the app’s system requirements in its store listing, then import a compatible subscription or configuration.
Install from the App Store listing; the store also manages updates. On first launch, add a subscription or configuration, check the available proxy groups, and allow the VPN configuration when prompted. Granting permission doesn’t mean the subscription is ready to use. Return to the client to confirm it loaded, then test the connection.
If performance changes when switching between Wi-Fi and cellular, check the app’s cellular data permission and current network conditions. A VPN status icon alone doesn’t show that all traffic follows the same route; routing also depends on your configuration rules and proxy group.
Check the store listing for minimum iOS / iPadOS versions and supported devices
Open the App Store listing to check compatibility
Network permission
Allow the app to add a VPN configuration before connecting for the first time
Review and approve the system permission prompt
Subscriptions and connectivity
Import a valid configuration supported by the app
After updating a subscription, check the proxy group and test Wi-Fi and cellular separately
For product information, visit clashplus.io. Check the current App Store listing for installation and system compatibility details. If another VPN configuration is installed, confirm which one is currently active.
Linux Clients
For desktop use, start with a client that has a graphical interface. Check your distribution’s package format and processor architecture. DEB and RPM are package formats, not processor types.
For managing subscriptions, proxy groups, and rules on a Linux desktop. Debian- and Ubuntu-based distributions generally use DEB; Fedora and openSUSE typically use RPM. Check your specific system dependencies. After installation, test the GUI and configuration import before enabling system services or TUN.
For users on Debian-based desktops who want to keep the FlClash workflow. Whether apps follow the system proxy depends on your desktop environment and the apps themselves; command-line tools may not follow it automatically. If your browser works but your terminal doesn’t, check the terminal’s proxy settings before changing subscriptions.
DEB · AMD64
Linux installation requirements
Check
Requirement
How to check
Architecture
The GUI installers here are AMD64 / x86_64
Run uname -m; don’t mistake an ARM64 server for an x86_64 desktop
Distribution
Choose the matching package format and meet the installer’s listed dependencies
Run cat /etc/os-release to check your distribution
Desktop and permissions
GUI clients need a compatible desktop environment; TUN also requires network permissions
Let your system package manager handle dependencies, then check the logs after starting the service
For servers or routers without a desktop environment, see the Mihomo core section. The core and GUI clients have different installation methods; a DEB desktop app is not a universal proxy program for every device.
Mihomo Core
Mihomo is a core that handles proxy connections and rule matching. This section is for server, router, and other users who manage processes themselves. For a typical desktop, choose a GUI client—a client with a graphical interface—above.
Extract ZIP and GZ files before use. A GZ usually contains a single compressed executable, not an automatic installer. On Linux and macOS, confirm it has execute permission. Install DEB packages with a compatible package manager, then check the configuration path and service status.
Test that the configuration loads in a controlled environment before enabling network interception. If you allow LAN connections, restrict access to trusted sources; don’t expose proxy ports or the control interface directly to the public internet. Treat subscriptions, control interface passwords, and local configuration as sensitive information.
Core runtime requirements
Item
What to check
System and instruction set
Match the operating system and CPU architecture. For MIPS, also check endianness and floating-point ABI; this download isn’t compatible with every MIPS device
Configuration and directories
Prepare valid YAML and make sure the configuration, cache, and log directories are readable and writable. Test the configuration before starting a persistent service
Network interception
TUN requires system support and the right permissions. Configure DNS, routing, and firewall rules carefully to avoid losing remote access
For how core parameters map to client settings, see the Clash User Guide. Don’t test unverified routing rules over your only remote management connection.
After installation: Import, select, verify
Import a configuration
Open the client’s subscription or configuration page, add a remote subscription, paste the full link, and update it. To use a local YAML file, choose the file import option. Confirm the configuration loads successfully; if it doesn’t, check the logs instead of repeatedly toggling settings.
Choose a rule mode
Rule mode uses your configuration to decide what connects directly or through a proxy, making it a good starting point for your first test. Choose a proxy group, then enable the system proxy on desktop or approve VPN access on mobile. System proxy, TUN, and rule mode serve different purposes; they aren’t interchangeable options.
Test real-world connectivity
Open sites that should use the proxy and others that should connect directly, then check the connection details or logs to see which rules matched. An enabled toggle alone doesn’t confirm that everything is configured correctly. Once the connection works, set up auto-start, background activity, and other everyday options.
Which Clash client should I choose for my first download?
Start with Clash Plus on Windows, macOS, Android, or iOS. For Linux, start with Clash Verge Rev. Choose your operating system first, then check your processor architecture. If you already have a preferred client, choose another option for the same platform.
What’s the difference between ARM64, x64, and universal builds?
These labels indicate the processor architecture supported by an installer. x64 and AMD64 generally refer to the same 64-bit desktop architecture; ARM64 is common on phones and Apple Silicon devices. Android universal builds support multiple architectures and are usually larger. Check the package details and your system’s compatibility requirements.
Do I need a subscription after installing a Clash client?
A client reads configuration and handles connections, but it is not a proxy service. Import a valid subscription link or local configuration, select a proxy group, then enable system proxy or TUN mode if needed. Keep subscription links private and secure.
What should I save before upgrading a client?
Back up your subscription sources, local configuration, custom rules, and override settings. Note your mixed port, system proxy, and TUN status. Quit the old client before installing the new version. On first launch, check your subscription and proxy group, then test everyday websites and apps that should connect directly.
What should I check if a download button won’t open or an installer won’t run?
First determine whether the problem is downloading or installing. If the download fails, check your browser’s download history, available disk space, and network connection, then try again. If installation fails, confirm the file finished downloading, matches your processor architecture and operating system, and review any system alerts. Don’t keep running an installer that isn’t compatible with your device.
When should I use an archived client or the Mihomo core?
Archived clients are mainly for reviewing old configurations and migrating existing setups. For a new installation, choose a client that is still maintained. The Mihomo core is suited to server and router users who manage configuration, processes, and network permissions themselves. A GUI client is usually easier for desktop users to import subscriptions and view logs.