Featured image of post Hetzner Review

Hetzner Review

Review Hetzner server and storage box

Hetzner Cloud & Storage Box: A Technical Review

Hetzner is a frequent recommendation for hosting applications or setting up a high-performance “homelab” in the cloud. They are known for exceptional price-to-performance ratios and a solid reputation for reliability. In this review, I evaluate the Hetzner Storage Box (BX11)($4 dollars per month) and the Cloud Server (CX33)($6.59/month), focusing on real-world bandwidth, latency, and hardware performance.

BX11 CX33

Compute & Disk Performance

Using the Yet-Another-Bench-Script (YABS) on a CX33 instance (4 vCPU AMD EPYC, 8GB RAM), I verified the machine’s baseline capabilities.

  • Disk I/O: The NVMe storage is excellent, reaching 3.27 GB/s sequential throughput. This makes it ideal for database-heavy applications.
  • Compute: A Geekbench 6 score of 1268 (Single) and 3133 (Multi) confirms it can handle modern web stacks and media transcoding (like Jellyfin) with ease.
  • Network (Global): While internal European speeds are massive (reaching 13 Gbps in Amsterdam), trans-oceanic speeds to Los Angeles and Singapore remain stable at near-gigabit levels.
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #
#              Yet-Another-Bench-Script              #
#                     v2025-04-20                    #
# https://github.com/masonr/yet-another-bench-script #
# ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #

Sun Feb  8 11:10:15 PM UTC 2026

Basic System Information:
---------------------------------
Uptime     : 0 days, 1 hours, 59 minutes
Processor  : AMD EPYC-Rome Processor
CPU cores  : 4 @ 2445.406 MHz
AES-NI     : βœ” Enabled
VM-x/AMD-V : ❌ Disabled
RAM        : 7.6 GiB
Swap       : 512.0 MiB
Disk       : 75.0 GiB
Distro     : Ubuntu 24.04.3 LTS
Kernel     : 6.8.0-100-generic
VM Type    : KVM
IPv4/IPv6  : βœ” Online / βœ” Online

IPv6 Network Information:
---------------------------------
ISP        : Hetzner Online GmbH
ASN        : AS24940 Hetzner Online GmbH
Host       : Hetzner
Location   : Nuremberg, Bavaria (BY)
Country    : Germany

fio Disk Speed Tests (Mixed R/W 50/50) (Partition /dev/sda1):
---------------------------------
Block Size | 4k            (IOPS) | 64k           (IOPS)
  ------   | ---            ----  | ----           ---- 
Read       | 98.10 MB/s   (24.5k) | 1.02 GB/s    (15.9k)
Write      | 98.36 MB/s   (24.5k) | 1.02 GB/s    (16.0k)
Total      | 196.47 MB/s  (49.1k) | 2.04 GB/s    (31.9k)
           |                      |                     
Block Size | 512k          (IOPS) | 1m            (IOPS)
  ------   | ---            ----  | ----           ---- 
Read       | 1.58 GB/s     (3.1k) | 1.58 GB/s     (1.5k)
Write      | 1.67 GB/s     (3.2k) | 1.69 GB/s     (1.6k)
Total      | 3.25 GB/s     (6.3k) | 3.27 GB/s     (3.2k)

iperf3 Network Speed Tests (IPv4):
---------------------------------
Provider        | Location (Link)           | Send Speed      | Recv Speed      | Ping           
-----           | -----                     | ----            | ----            | ----           
Clouvider       | London, UK (10G)          | 6.87 Gbits/sec  | 6.79 Gbits/sec  | 18.8 ms        
Eranium         | Amsterdam, NL (100G)      | 13.4 Gbits/sec  | 3.46 Gbits/sec  | 9.97 ms        
Uztelecom       | Tashkent, UZ (10G)        | 1.68 Gbits/sec  | 1.29 Gbits/sec  | 97.0 ms        
Leaseweb        | Singapore, SG (10G)       | 905 Mbits/sec   | 562 Mbits/sec   | 169 ms         
Clouvider       | Los Angeles, CA, US (10G) | 847 Mbits/sec   | 954 Mbits/sec   | 183 ms         
Leaseweb        | NYC, NY, US (10G)         | 1.73 Gbits/sec  | 2.22 Gbits/sec  | 101 ms         
Edgoo           | Sao Paulo, BR (1G)        | 837 Mbits/sec   | 1.31 Gbits/sec  | 202 ms         

iperf3 Network Speed Tests (IPv6):
---------------------------------
Provider        | Location (Link)           | Send Speed      | Recv Speed      | Ping           
-----           | -----                     | ----            | ----            | ----           
Clouvider       | London, UK (10G)          | 6.17 Gbits/sec  | 7.40 Gbits/sec  | 18.6 ms        
Eranium         | Amsterdam, NL (100G)      | 13.7 Gbits/sec  | 3.58 Gbits/sec  | 9.74 ms        
Uztelecom       | Tashkent, UZ (10G)        | 1.74 Gbits/sec  | 1.32 Gbits/sec  | 96.6 ms        
Leaseweb        | Singapore, SG (10G)       | 913 Mbits/sec   | 1.38 Gbits/sec  | 169 ms         
Clouvider       | Los Angeles, CA, US (10G) | 833 Mbits/sec   | 1.11 Gbits/sec  | 183 ms         
Leaseweb        | NYC, NY, US (10G)         | 1.71 Gbits/sec  | 2.37 Gbits/sec  | 97.0 ms        
Edgoo           | Sao Paulo, BR (1G)        | 704 Mbits/sec   | 1.11 Gbits/sec  | 202 ms         

Geekbench 6 Benchmark Test:
---------------------------------
Test            | Value                         
                |                               
Single Core     | 1268                          
Multi Core      | 3133                          
Full Test       | https://browser.geekbench.com/v6/cpu/16486805

Network Throughput & Latency

A critical part of this test was comparing the connection between a Private LA Server and the Hetzner (Nuremberg) instance.

  1. Internal Throughput: CX33 to Storage Box (BX11)
  2. Cross-Continental Sync: LA to Germany
  3. Iperf3 Network Benchmarks

1. Internal Throughput: CX33 to Storage Box (BX11)

To test the internal “backplane” speed between the Cloud instance (Nuremberg) and the Storage Box, I used the dd utility. This measures raw disk and network performance without the overhead of complex sync logic.

Local Write & Read Performance

  • Sequential Write: 62.4 MB/s (approx. 500 Mbps)

  • Sequential Read: 544 MB/s (approx. 4.3 Gbps)

The read speeds are impressive, for media streaming (e.g., Jellyfin), the Storage Box can easily saturate a 1Gbps link. However, write speeds are significantly slower likely due to the mechanical HDD architecture and RAID overhead of the Storage Box backend.

1
2
3
4
5
6
7
# Sequential Write Test (to Storage Box)
dd if=/dev/zero of=/mnt/storagebox/testfile bs=1G count=1 oflag=dsync status=progress
# Result: 1.1 GB copied in 17.2s (62.4 MB/s)

# Sequential Read Test (from Storage Box)
dd if=/mnt/storagebox/testfile of=/dev/null bs=1G count=1 status=progress
# Result: 1.1 GB copied in 1.97s (544 MB/s)

2. Cross-Continental Sync: LA to Germany

Moving 500GB+ of data from a private Los Angeles server to Hetzner (Germany) revealed the limitations of standard sync tools over high-latency paths.

The Rclone with parallel transfers (–transfers 3) averaging 30-32 MiB/s when transfering video files.

1
rclone copy ./videos hetzner-storage:home/   --progress   --transfers 3   --checkers 4   --buffer-size 16M   --retries 10   --low-level-retries 20   --timeout 5m   --contimeout 15s   --stats 10s   --log-file rclone-hetzner-copy.log   --log-level INFO

3. Iperf3 Network Benchmark

I performed bidirectional iperf3 tests to visualize where the packet loss occurs.

Connection Path Direction Bitrate (Avg) Retransmissions (Retr) Congestion Window (Cwnd)
LA Private ↔ LA Public Upload 176 Mbits/sec 3 771 KBytes
Download 507 Mbits/sec 52 -
Hetzner ↔ LA Public Upload 107 Mbits/sec 0 5.57 MBytes
Download 122 Mbits/sec 0 -
LA Private ↔ Hetzner Upload 94.4 Mbits/sec 605 2.34 MBytes
Download 110 Mbits/sec 0 -

Performance Summary

  • LA Private ↔ LA Public: This link shows the highest raw capacity (507 Mbps Download). The low latency of being in the same city allows for high burst speeds, though the 52 retransmissions suggest some minor line noise or congestion.
  • Hetzner ↔ LA Public: A very “clean” transatlantic route. Despite the physical distance, 0 retransmissions and a massive 5.57 MB Congestion Window indicate a very stable, high-quality peering connection.
  • LA Private ↔ Hetzner: This is the weakest link. The 605 retransmissions on the upload side indicate significant packet loss. This is likely due to a poor routing path between your specific LA provider and Hetzner’s German/Finnish data centers.

Speed between LA private server to public iperf3 server at LA

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
iperf3 -c la.speedtest.clouvider.net -p 5200-5209 --bidir -i 10

[ ID][Role] Interval           Transfer     Bitrate         Retr  Cwnd
[  5][TX-C]   0.00-10.00  sec   209 MBytes   176 Mbits/sec    3    771 KBytes       
[  7][RX-C]   0.00-10.00  sec   604 MBytes   507 Mbits/sec                  
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID][Role] Interval           Transfer     Bitrate         Retr
[  5][TX-C]   0.00-10.00  sec   209 MBytes   176 Mbits/sec    3             sender
[  5][TX-C]   0.00-10.01  sec   206 MBytes   173 Mbits/sec                  receiver
[  7][RX-C]   0.00-10.00  sec   607 MBytes   510 Mbits/sec   52             sender
[  7][RX-C]   0.00-10.01  sec   604 MBytes   506 Mbits/sec                  receiver

Speed between Hetzner to public LA iperf3 server

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
iperf3 -c la.speedtest.clouvider.net -p 5200-5209

[ ID][Role] Interval           Transfer     Bitrate         Retr  Cwnd
[  5][TX-C]   0.00-10.01  sec   128 MBytes   107 Mbits/sec    0   5.57 MBytes       
[  7][RX-C]   0.00-10.01  sec   145 MBytes   122 Mbits/sec                  
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID][Role] Interval           Transfer     Bitrate         Retr
[  5][TX-C]   0.00-10.01  sec   128 MBytes   107 Mbits/sec    0             sender
[  5][TX-C]   0.00-10.19  sec   127 MBytes   105 Mbits/sec                  receiver
[  7][RX-C]   0.00-10.01  sec   149 MBytes   125 Mbits/sec    0             sender
[  7][RX-C]   0.00-10.19  sec   145 MBytes   120 Mbits/sec                  receiver

Speed between private LA to Hetzer server

1
2
3
4
5
6
7
8
9
[ ID][Role] Interval           Transfer     Bitrate         Retr  Cwnd
[  5][TX-C]   0.00-10.00  sec   112 MBytes  94.4 Mbits/sec  605   2.34 MBytes       
[  7][RX-C]   0.00-10.00  sec   131 MBytes   110 Mbits/sec                  
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID][Role] Interval           Transfer     Bitrate         Retr
[  5][TX-C]   0.00-10.00  sec   112 MBytes  94.4 Mbits/sec  605             sender
[  5][TX-C]   0.00-10.17  sec   111 MBytes  91.6 Mbits/sec                  receiver
[  7][RX-C]   0.00-10.00  sec   133 MBytes   112 Mbits/sec    0             sender
[  7][RX-C]   0.00-10.17  sec   131 MBytes   108 Mbits/sec                  receiver

IP Quality and Service Access

I conducted an IP integrity check using the IPQuality script to evaluate the reputation and “reachability” of the Hetzner CX33 network.

Metric IPv4 Status IPv6 Status Verdict
Risk Score 3 - 6 (Low) 0 - 6 (Extremely Low) Safe
IP Type Native / Data Center Native / Data Center Clean
IPQS Fraud Score 75 (Suspicious) 75 (Suspicious) Caution
Port 25 (Mail) Blocked (In/Out) Blocked (In/Out) Restricted
Blacklist Status 0 Listings 0 Listings Excellent

Service Unlock Status:

  • βœ… Unlocked: Netflix (DE), YouTube, TikTok (IPv4), ChatGPT.
  • ❌ Blocked: Disney+, Reddit.

Service Unlock Status

Hetzner’s German IPs are surprisingly “clean” for a major data center provider, successfully unlocking most high-demand services:

  • Streaming & AI: Successfully unlocks Netflix (DE), YouTube, and ChatGPT natively.

  • Social & Regional: TikTok works on IPv4, but Disney+ and Reddit remain blocked/shielded, which is common for data center ranges.

  • Mail Hosting: Outbound Port 25 is strictly blocked. If you plan to run a mail server, you will need to use an external relay like SendGrid or Amazon SES.

While most databases (AbuseIPDB, Scamalytics) score this IP as low risk, IPQS flagged it at 75 (Suspicious). This is a common “false positive” for Hetzner because their ranges are frequently used by developers and VPN providers. For most web applications and scraping tasks, the low score in the other four databases is a better indicator of health.

Final Verdict

The Hetzner CX33 is a high-value powerhouse, delivering exceptional NVMe storage speeds and robust CPU performance for everything from web apps to mid-range development environments. In contrast, the BX11 Storage Box serves as a cost-effective “warm” or “cold” storage tier. While its sequential read speeds are strong, its write performance is modest, and the high latency of cross-continental links necessitates optimized tools like rclone to maintain stability.

Encoding Note: A critical limitation of the Storage Box is its lack of native support for Chinese (CJK) characters in its internal environment. In the backend, non-ASCII filenames often render as raw escape sequences (slashes and numbers), and because you lack administrative terminal access within the Storage Box, you cannot manually install the locales or fonts required to fix this. However, this is purely a backend display issue; when the drive is mounted to an external Linux system using the iocharset=utf8 flag, the characters will display and behave correctly.

Tips:

  • When transfering files with rclone use at least 3-8 parallel transfers to saturate the bandwidth.
  • Make sure to use utf8 when mounting CIFS/SMB, otherwise Chinese characters won’t display correctly due to default encoder iso8859-1.
  • Enable BBR for high latency connetions.
~~~Thank you for visiting~~~

Theme Stack designed by Jimmy