ClashX Node Speed Testing and Selection Tips: Find the Fastest Proxy Server

Article 11 cover image

Why Speed Testing

Choosing the right proxy node is crucial for network experience. Different nodes have varying latency, bandwidth, and stability, which directly affect:

  • Page Load Speed: Low-latency nodes load web pages faster
  • Video Streaming: High-bandwidth nodes are suitable for HD video
  • Gaming Experience: Stable low-latency nodes reduce lag
  • Download Speed: Quality routes fully utilize your bandwidth
💡
Best Practice

Regular speed testing is recommended as node performance changes with time and network conditions. ClashX can be configured for automatic speed testing to ensure you always use the optimal node.

Understanding latency Metrics

Speed testing mainly focuses on the following metrics:

latency (latency / Ping)

The time required for data to travel from your device to the proxy server and back, measured in milliseconds (ms).

< 50ms
Excellent
50-100ms
Good
100-200ms
Fair
200-500ms
Poor
> 500ms
Very Poor

Packet Loss

The percentage of data packets that fail to reach their destination. Packet loss above 1% affects user experience, especially for real-time applications (gaming, video calls).

Bandwidth

The maximum data transfer rate a node can provide. Note: ClashX's latency test doesn't measure bandwidth; it needs to be evaluated through actual use or dedicated speed test tools.

⚠️
Limitations of Speed Testing

Speed test results are only for reference. Actual experience is also affected by server load, routing optimization, target website location, and other factors.

Manual Testing Methods

Method 1: ClashX Built-in Speed Test

The simplest and most direct speed testing method:

  1. Click the ClashX icon in the menu bar
  2. Select "Proxy" menu
  3. Click "latency Test" (Benchmark)
  4. Wait a few seconds, latency values will appear next to all nodes

Speed Test Shortcut

You can set a shortcut for latency testing:

1. Open "System Preferences" → "Keyboard" → "Shortcuts" → "App Shortcuts"
2. Add ClashX, enter menu title "Benchmark"
3. Set your preferred shortcut, such as ⌘⇧T

Method 2: Policy Group Speed Test

If you use policy groups (such as url-test), you can test a specific policy group separately:

  1. Click the ClashX icon in the menu bar
  2. Select the corresponding policy group
  3. Right-click the policy group name
  4. Select "Test latency"

Method 3: Dashboard Speed Test

Use the web control panel for more detailed speed testing:

  1. Visit http://127.0.0.1:9090/ui
  2. Click the "Proxies" tab
  3. Select the policy group or node to test
  4. Click the speed test button (lightning icon)

The advantage of Dashboard is viewing more detailed information, including speed test history.

Automatic Testing Configuration

Manual speed testing is simple but requires frequent operation. A better approach is to configure automatic speed test policy groups.

url-test Auto-Select

Automatically selects the node with the lowest latency:

proxy-groups:
  - name: "♻️ Auto Select"
    type: url-test
    proxies:
      - "Hong Kong 01"
      - "Hong Kong 02"
      - "Japan 01"
      - "US 01"
    url: "http://www.gstatic.com/generate_204"
    interval: 300      # test every 300 seconds
    tolerance: 50      # no switch if latency diff < 50ms

Key Parameter Description

  • url: Speed test target URL. Recommended to use http://www.gstatic.com/generate_204, a lightweight and fast speed test address
  • interval: Testing interval (seconds). Recommended 300-600 seconds, too frequent wastes resources
  • tolerance: Tolerance value (milliseconds). New node must be faster than current node by more than this value to switch, avoiding frequent jumping

fallback Failover

Automatically switches when the main node fails:

proxy-groups:
  - name: "🔰 Failover"
    type: fallback
    proxies:
      - "primary node"
      - "backup node 1"
      - "backup node 2"
    url: "http://www.gstatic.com/generate_204"
    interval: 300
    timeout: 2000  # timeout 2000ms

load-balance Load Balancing

Distributes traffic among multiple healthy nodes:

proxy-groups:
  - name: "⚖️ Load Balance"
    type: load-balance
    proxies:
      - "Node 1"
      - "Node 2"
      - "Node 3"
    url: "http://www.gstatic.com/generate_204"
    interval: 300
    strategy: consistent-hashing  # or round-robin

strategy parameter:

  • consistent-hashing: Allocates based on destination address, same website always uses same node, suitable for session-preserving scenarios
  • round-robin: Round-robin allocation, each request uses different node, suitable for downloading scenarios
💡
Combining Policy Groups

You can create a url-test auto-select group, then include it in a select manual selection group. This provides both automatic optimization and manual control flexibility.

Node Selection Strategies

Select by Purpose

Different usage scenarios require different types of nodes:

Usage Scenario Recommended Features Node Type
Web Browsing Low latency Nearby nodes (Hong Kong, Japan, Singapore)
Video Streaming High Bandwidth, Stable Content location node (e.g., US node for Netflix US content)
Gaming Acceleration Ultra-low latency, Low Packet Loss Quality routes to game server location
Large File Downloads High Bandwidth Load balancing group or high-speed dedicated line
Daily Work Stability fallback failover group

Select by Geographic Location

Geographic location has a significant impact on latency:

  • China Mainland Users: Hong Kong, Taiwan, Japan, Singapore nodes typically have lowest latency (20-80ms)
  • European Users: Local European nodes are best
  • Cross-border Access: When accessing services in specific countries, selecting nodes in that country usually works best

Route Quality Identification

Common route types (descending quality):

  1. IPLC / IEPL Dedicated Line: Point-to-point dedicated line, low latency, high stability, expensive
  2. CN2 GIA: Premium telecom route, low latency, stable during peak hours
  3. CN2 GT: Standard telecom route, good value
  4. BGP Multi-line: Automatically selects carrier routing
  5. Regular Route: Cheap but may be congested during peak hours
⚠️
Pitfalls to Avoid

• Don't just look at latency, also pay attention to stability and actual speed
• Daytime test results may differ from evening peak hours
• Don't put all traffic on one node

Performance Optimization Tips

1. Multiple Node Backup

Configure fallback policy group to ensure automatic switching when main node fails:

proxy-groups:
  - name: "🚀 Primary Nodes"
    type: fallback
    proxies:
      - "Hong Kong IPLC 01"
      - "Hong Kong CN2 01"
      - "Japan 01"
    url: "http://www.gstatic.com/generate_204"
    interval: 300

2. Traffic Splitting Strategy

Configure different node groups for different services:

proxy-groups:
  - name: "🎬 Streaming"
    type: select
    proxies:
      - "US Node Group"
      - "Hong Kong Node Group"

  - name: "🎮 Gaming"
    type: url-test
    proxies:
      - "Low-latency Node 1"
      - "Low-latency Node 2"
    interval: 60  # more frequent tests for gaming

  - name: "📥 Download"
    type: load-balance
    proxies:
      - "High-bandwidth Node 1"
      - "High-bandwidth Node 2"

3. Speed Test URL Selection

Different speed test URLs may give different results:

  • http://www.gstatic.com/generate_204 - Google service, globally applicable
  • https://cp.cloudflare.com/generate_204 - Cloudflare, suitable for CDN testing
  • http://www.apple.com/library/test/success.html - Apple, suitable for iOS users

4. Regular Maintenance

Develop good maintenance habits:

  • Manually test speed once a week to understand node status
  • Delete long-term failed nodes promptly
  • Follow service provider notifications for maintenance and upgrade information
  • Testing during peak hours (8-11 PM) better reflects actual conditions

5. Use Dashboard Monitoring

Web Dashboard provides real-time monitoring and history:

  • View currently used nodes
  • View traffic and latency for each connection
  • Analyze which apps use the most traffic
  • Discover abnormal traffic and connections

Node Selection Summary

Best Practices:

  • Use url-test to auto-select nodes for daily browsing
  • Use fallback to ensure critical service stability
  • Configure dedicated policy groups for special purposes (streaming, gaming)
  • Regularly manually test speed to understand true node conditions
  • Don't over-rely on automatic speed testing, adjust based on actual experience