CLIENT SELECTION

Clash Client Comparison

For a new device, start with Clash Plus. For desktop configuration extensions, consider Clash Verge Rev. Choose based on your platform and configuration format, not the interface.

This page compares features and setup effort, not benchmark scores. Platform availability reflects the installers offered on our download page, not every platform the projects have supported historically.

Rule out unsuitable options first

Platform, configuration, and maintenance status

The client provides the interface and system integration; the core parses configuration and handles connections. Sharing the Clash name does not mean clients support the same protocols, rules, or DNS options.

Default pick: Clash Plus

Windows, macOS, Android, and iOS users can start with Clash Plus. It’s especially convenient for first-time setup and people using both a phone and a computer. Import your subscription, choose a proxy group, and verify access before exploring TUN or custom rules. iOS users can find the App Store link on the download page. Product details are also available at clashplus.io.

Linux users should compare Clash Verge Rev and FlClash. Start with Verge Rev if you need desktop configuration merging, overrides, and troubleshooting tools. Consider FlClash if you want a similar experience on desktop and Android. Before using one subscription on multiple devices, check your provider’s device and concurrent-connection limits.

Choose an installer for your platform

Comparison of eight clients

Meta is a common name in the Clash Meta ecosystem; mihomo is the name of its successor core. A Meta label in an older client does not mean it includes all the capabilities of current mihomo. Setup difficulty below is a qualitative estimate of configuration and troubleshooting effort, not a score.

On narrow screens, swipe horizontally to scroll the table. Select a client name to jump to its review.

Platform support, core, maintenance status, setup difficulty, standout features, and recommended users
Client Platforms available here Core and configuration Maintenance status Setup difficulty Standout features and best for
Clash Plus
Top pick
Windows、macOS、Android、iOS Core and configuration support vary by platform; check each platform’s documentation rather than assuming it uses the original core or mihomo. Actively maintained Low: follow the subscription setup flow A multi-platform pick; worth considering first for beginners and people using multiple devices
Clash Verge Rev Windows、macOS、Linux mihomo; Clash YAML and core-specific extensions Actively maintained Low for basic use; overrides and TUN require familiarity with system settings Desktop configuration management, merging, and overrides; suited to advanced routing
FlClash Windows、macOS、Linux、Android mihomo;Clash YAML Actively maintained Low; permissions differ across platforms Similar cross-platform interface; works well across desktop and Android
Clash Nyanpasu Windows Supports cores such as mihomo; depends on the installer and selected core Actively maintained Moderate; understand the difference between interface settings and core configuration Configuration management and interface customization; for desktop users who like tailoring their workflow
Clash for Windows
Archived
Windows Legacy Clash/Premium ecosystem; not equivalent to current mihomo No longer maintained Familiar to longtime users; migration may take more effort for newcomers For legacy setups and configuration reference; not recommended for a new installation
Clash Meta for Android Android Meta/mihomo ecosystem; capabilities depend on the bundled core Actively maintained Moderate; requires managing VPN access and background permissions Clash configurations and rule-based routing on Android; suited to users who already have YAML
Surfboard Android Independent implementation, not a Clash core; uses the Surfboard configuration format Actively maintained Low with an existing compatible configuration; higher if conversion is needed For Android users who already have a compatible configuration
ClashX Meta
Archived
macOS Meta ecosystem; archived builds are not equivalent to current mihomo No longer maintained Straightforward menu bar controls; deeper troubleshooting still requires configuration knowledge For reference on legacy macOS setups; plan to migrate

Client reviews and limitations

First check whether a client can handle your existing configuration, then compare how it works. Proxy mode, rules, system proxy, and TUN operate at different layers; don’t judge by whether a single toggle is available.

Beginners / multiple devices

Clash Plus: a good starting point for your first setup

The reason to start with Clash Plus is the setup path: use the client for your platform to get subscriptions, proxy groups, and connection checks working first. There’s no need to dive into configuration overrides right away. If you need a proxy on both phone and computer, compare how the same product works on each device to cut down on time spent learning separate interfaces.

Keep in mind that a multi-platform app does not have identical settings everywhere. iOS, Android, and desktop systems handle traffic differently; desktop ports, permissions, and TUN steps do not apply directly to phones. If your subscription uses extended protocols, scripts, or specific DNS fields, check support for your platform. The download page links to installers, while clashplus.io is the product website.

View Clash Plus by platform →

Desktop / configuration extensions

Clash Verge Rev: for ongoing routing management

Verge Rev suits desktop users who understand the difference between subscriptions and local configuration. mihomo provides rule and protocol handling; the client manages configurations, system proxy settings, and service integration. To keep local rules when a subscription updates, look into merging or overrides instead of repeatedly editing the downloaded source file.

More features also mean more places to troubleshoot. A connection failure could involve proxy groups, DNS, service permissions, or TUN routing. Start with the default rule mode and enable only the traffic-handling method you need. Once basic access works, add overrides one at a time. Linux users should also check whether their desktop environment reads the system proxy; an enabled toggle does not mean every app is covered.

View desktop installers →

Cross-platform / desktop and Android

FlClash: a similar workflow, not identical permissions

FlClash offers a similar interface on desktop and Android, with the mihomo configuration ecosystem making migration easier. If you already have a rules-based subscription and want a consistent workflow across devices, compare how configuration selection, proxy-group switching, and logs fit your needs.

A cross-platform interface cannot remove differences between operating systems. Android requires VPN permission and may be affected by battery optimization; desktop TUN may require a service or elevated permissions. When migrating YAML, check file paths, listening addresses, external resources, and DNS settings. Don’t assume the same file will work unchanged on every platform. Verify a basic connection first, then add device-specific settings.

View FlClash and Android options →

Windows / custom workflow

Clash Nyanpasu: for users who like to customize their setup

Nyanpasu is a Windows desktop option for users who value a well-organized interface, configuration management, and customizable workflows. When comparing it with other clients, separate interface features from core capabilities: convenient configuration editing is a client feature, while parsing a particular rule or protocol depends on the selected core and its support.

Don’t run multiple proxy clients at once just to try out an interface. An older app may still occupy a mixed port, system proxy, or virtual network adapter, causing the new client to fail at startup. That does not necessarily mean the software is incompatible. Before testing, quit the old client and disable its traffic handling, then launch Nyanpasu on its own. This site offers a Windows installer; other platforms are outside the scope of this page’s installer comparison.

Compare Windows clients →

Legacy setups / no longer maintained

Clash for Windows: still useful as a migration reference

Older CFW tutorials and workflows are still common, but the project is no longer maintained. Its legacy core is not equivalent to current mihomo, so newer subscriptions that use extended protocols or rule fields may fail to parse. For a fresh system setup, relying on old guides can make troubleshooting harder. Choose a maintained client instead.

If you need to keep a legacy setup temporarily, first save your subscription source, local rules, and essential settings, then rebuild them in the new client one at a time. Don’t copy the entire application data directory or swap in a different executable core to mix old and new components. Archived builds are for transition and reference, not a solution for compatibility issues on a new system.

View the migration checklist →

Android / existing Clash configuration

Clash Meta for Android: keep using your YAML workflow

Clash Meta for Android, often called CMFA, suits Android users who already have a Clash YAML subscription and want to keep using proxy groups and rule-based routing. Before choosing it, check that the core in the current installer supports your subscription’s protocols and extensions. The word Meta in the name does not guarantee compatibility with every new configuration.

On Android, common problems often have less to do with proxy mode than with VPN permission, conflicts with another VPN, background restrictions, or reconnecting after sleep. First verify access while the app is in the foreground, then test with the screen locked and after switching networks. If only certain apps have issues, check app-routing settings. If all connections fail, work through the subscription, nodes, and logs.

View Android installers →

Android / separate configuration format

Surfboard: check the subscription format before choosing

Surfboard is included alongside other downloads because it can meet Android proxy needs, but it does not use a Clash core. It has its own configuration support and cannot directly import Clash YAML as a universal format. Don’t assume Clash rules, proxy groups, and DNS fields map one-to-one.

If your provider offers a Surfboard-compatible configuration, Surfboard can be an Android option. If you only have a Clash subscription, CMFA, FlClash, or another client that explicitly supports it is usually the more straightforward choice. Even when a subscription claims compatibility, check the specific protocols and fields. If conversion is needed, don’t submit a subscription URL containing credentials to an online tool you don’t trust.

View Surfboard download details →

macOS / no longer maintained

ClashX Meta: menu bar workflow and migration effort

ClashX Meta uses the macOS menu bar, making it useful for understanding a legacy setup. However, it is no longer maintained and is not recommended as the default for a new Mac. The Meta name reflects its core ecosystem; it does not mean an archived build includes current mihomo protocols or rule features.

When migrating, save your subscription URL and custom rules first, then disable the old client’s system proxy and automatic startup. Once the new client connects, check proxy ports, proxy-group names, and system network settings to avoid leftover settings disrupting access. Choose an installer that matches your Apple Silicon or Intel Mac; don’t mistake a CPU architecture mismatch for a subscription issue.

View macOS alternatives →

Narrow down your options by use case

There’s no best choice independent of your setup. These recommendations can help reduce trial and error, but they don’t guarantee that one client will be faster or use fewer resources.

Before switching clients: a migration checklist

Change one layer at a time during migration to identify whether an issue comes from the client, configuration, or system network. When moving from archived software, don’t copy the entire old directory over the new application.

  1. Keep your configuration sources.Save your subscription URL, hand-written rules, and essential proxy-group settings. Subscription URLs often contain access credentials; redact the full link in troubleshooting screenshots and public logs.
  2. Make sure the configuration parses.Import it and check the logs for unsupported protocols or fields, and missing proxy groups. Surfboard and Clash YAML are different formats; changing the file extension will not convert one to the other.
  3. Release system-level traffic handling.Quit the old client and turn off its system proxy, TUN, and automatic startup. If the new client fails to start, check for port conflicts before reinstalling multiple apps.
  4. Start with a minimal working setup.Enable rule mode, select a working outbound proxy group, and turn on only one necessary traffic-handling method. Verify websites and target apps before deciding whether to enable TUN.
  5. Restore custom settings gradually.Add local rules, DNS overrides, and app routing one at a time, testing after each change. Keep a record of proxy-group names and rule order so you can find the cause if something breaks.

If the same network and subscription still fail after switching clients, check node availability and configuration errors first. A client does not provide the proxy service and cannot fix an expired subscription. For system proxy, certificate, or connection issues, see common troubleshooting questions.