Platforms · Cores · Config compatibility

Clash Client Comparison Guide

Choose a client for your device, then check subscription format and core support. Similar interfaces don't mean configs are interchangeable.

  • Eight clients
  • Six selection criteria
  • Archived projects clearly marked

Top pick

Clash Plus is our top pick

For your first installation, or a consistent experience across Windows, macOS, Android, and iOS, start with Clash Plus. Import your subscription, choose a mode, and grant the required system permissions before deciding whether you need more advanced config editing. This makes issues easier to pinpoint than changing multiple settings at once.

Linux users should start with Clash Verge Rev; FlClash is another option. If you have specific needs for config extensions, desktop scripting, or switching cores, choose a tool from the table below. Features with the same name can still work differently across operating systems.

Clash Plus official site: clashplus.io →
Top pick

Find installers and architecture options in the download center for your device platform.

Choose a platform installer

Compare side by side

Client comparison table

Platform availability refers to builds in our download center, not every operating system a project has supported. On narrow screens, scroll the table horizontally.

Platform, core, maintenance status, difficulty, features, and recommended users
Client Platforms available here Core Maintenance Setup difficulty Key features and best for
Clash Plus
Top pick
Windows、macOS、Android、iOS Check the platform-specific release notes; don't infer the core from the brand name Actively maintained Low Subscriptions and proxy settings in one place; good for first-time users and multi-device setups.
Clash Verge Rev Windows、macOS、Linux mihomo (continuation of the Meta line) Actively maintained Moderate TUN, config extensions, and desktop controls; for users who want fine-grained settings.
FlClash Windows、macOS、Android、Linux mihomo Actively maintained Low to moderate Cross-platform interface and config management; suited to users on both desktop and Android.
Clash Nyanpasu Windows Core management available; features depend on the selected core Actively maintained Moderate to high Config management and core selection; suited to users who understand the distinction between the interface and the core.
Clash for Windows
No longer maintained
Windows (archived) Original Clash line; features depend on the archived build No longer maintained Easy to use, but migration costs need consideration Preserves familiar workflows for older setups; for historical config reference and migration only.
Clash Meta for Android Android Meta / mihomo line Actively maintained Moderate Clash configs and Android VPN routing; suited to users familiar with YAML.
Surfboard Android Independent implementation; not a Clash core Actively maintained Moderate; migrating config formats takes extra work Uses its own config system; suited to users with compatible configs or a specific use case.
ClashX Meta
No longer maintained
macOS (archived) Meta line; features depend on the archived build No longer maintained Low for basic tasks Menu bar controls; existing users should plan a move to a maintained client.

Maintenance labels are general guidance, not a promise about release frequency. Check the project's or app store's current information before installing. Difficulty reflects the learning curve for importing a config, granting permissions, and connecting—not performance.

Client reviews

Trade-offs and limitations

The client provides the interface and system integration; the core handles protocols and rules. A good choice needs both to fit.

First install / multiple devices

Clash Plus

Clash Plus is our recommended starting point for users who want a reliable everyday setup before learning about rules and DNS. Its main strengths are platform coverage and ease of use—not identical underlying behavior on every platform. On iOS in particular, system networking restrictions mean desktop features such as installing a service, listening on ports, or using TUN do not apply in the same way. When migrating a subscription, check supported config formats, protocols, and custom rules. If you rely on specific mihomo fields, check the documentation for your target platform first.

See Clash Plus platform options →

Desktop tuning / Linux

Clash Verge Rev

Clash Verge Rev is a good fit for managing proxy modes, system proxy settings, TUN, and config extensions on desktop. It follows the mihomo line, but the switches in its interface don't expose every core config field. Config extensions are also merged with subscription updates in a specific order. For custom rules you plan to maintain, use an extension feature supported by the client instead of editing subscription content that may be replaced on the next update. TUN permissions, service components, and routing behavior vary by operating system. If you have connection issues, first check that the required permissions have been granted.

See desktop download options →

Desktop and Android

FlClash

FlClash suits users who want a similar interface on desktop and Android. Its mihomo base makes it easier to reuse compatible subscriptions and rule concepts, but cross-platform support doesn't mean permissions, config storage, or background behavior are the same. Android requires system VPN permission; desktop may need a service or virtual network adapter. If you already have a working mihomo config, import a copy first and check proxy groups and DNS settings before adding platform-specific options. Don't sync every setting just because the interface looks the same: file paths and adapter names often need separate handling.

See Android clients →

Config management / core selection

Clash Nyanpasu

Clash Nyanpasu stands out for its config and core management, making it a good fit for desktop users willing to understand the difference. Protocol support depends on the selected core and its config capabilities—not just the client name. Before switching cores, back up your config, note the current selection, and check whether the new core accepts the fields you use. Our download center lists a Windows installer; that reflects our available downloads, not the project's full platform support. If you only need to import a subscription and use it day to day, core switching probably shouldn't be your first priority.

See Windows installation options →

Archived clients / migrating old configs

Clash for Windows

Clash for Windows is no longer maintained. Its download listing is kept mainly for reference and migration from older setups, not as a default choice for new devices. Older tutorials may describe a familiar interface, but launching it doesn't add support for newer protocols, config fields, or system changes. When migrating, save your subscription source, custom rules, and proxy groups you want to keep. Don't overwrite the new client's entire config directory. After switching to a mihomo-based client, check old scripts and config extensions one by one; special syntax from the original Clash line may not work as-is.

See maintained Windows alternatives →

Android / Clash configs

Clash Meta for Android(CMFA)

CMFA is a good fit for users who want to use the Clash config ecosystem directly and are comfortable managing Android permissions. Its Meta/mihomo lineage doesn't mean it has exactly the same feature set as the older Clash for Android. After importing, first check that the config parses, then grant Android VPN permission. If connections drop in the background, check battery optimization and background restrictions. Usually, only one app can use Android's VPN slot at a time, so running another VPN-based tool may cause conflicts. A connected status only confirms the local service is running; test access and routing in the apps you actually use.

See CMFA download options →

Android / independent config system

Surfboard

Surfboard is another Android option, but it isn't a re-skinned Clash client. It has its own config system and supports Surge-style syntax; Clash YAML isn't a drop-in equivalent. If you already have a compatible subscription, check protocol, proxy group, and rule support before migrating. If your subscription is only available in Clash format, ask your provider whether it offers a matching format. Converting configs doesn't guarantee identical behavior, especially for DNS and proxy group selection. Choose Surfboard for a specific config need, not to match mihomo feature for feature.

See Surfboard platform options →

macOS / archived

ClashX Meta

ClashX Meta follows the Meta line and offers familiar menu bar controls for existing macOS users, but it is no longer maintained. Check the archived build itself for its core features; the Meta name doesn't guarantee support for everything in current mihomo releases. For a new installation, consider Clash Plus, Clash Verge Rev, or FlClash. When migrating an existing setup, note your system proxy settings and local port, then quit the old client to avoid port conflicts. Choose an Apple Silicon or Intel installer for your Mac's processor; matching file extensions alone don't mean a build is universal.

See macOS alternatives →

Narrow down your options

Recommendations by use case

Before switching clients

Config compatibility checklist

Importing a config is just the first step. Check that protocols, routing, and system-level traffic handling work as expected.

Three layers of compatibility

First, subscription format: node links, Clash YAML, and Surfboard configs are different formats. Second, core behavior: a recognized field doesn't guarantee behavior identical to your previous setup. Third, system integration: system proxy settings affect only apps that honor them, while TUN and Android VPN use different traffic-routing mechanisms.

Original Clash, Meta, and mihomo are related, but configs aren't universally interchangeable in both directions. In particular, don't use protocol fields from a newer core with an archived build that's no longer maintained.

Migrate in steps, with a rollback plan

  1. Save the original subscription source and a copy of your custom rules. Note the port and current proxy mode.
  2. Quit the old client and make sure its system proxy and virtual adapter routing have stopped.
  3. Import a copy into the new client and verify the connection with default settings first.
  4. Restore custom rules, DNS, and TUN settings one at a time, testing after each change.

If something goes wrong, check config parsing and connection logs before troubleshooting the network. Switching clients won't improve the quality of your server routes; changing the interface alone won't fix high latency or slow speeds.

Chosen a client? Head to the download center to select a platform and architecture. For questions about system proxy, TUN, or import errors, see the Troubleshooting.