An NVMe HAT is the single best upgrade you can give a Raspberry Pi 5, and after testing eight of them over the past three months, I can tell you the performance jump is night and day. Boot times drop from a sluggish 45-60 seconds on microSD to a snappy 10-15 seconds on NVMe, and sequential reads jump from around 90 MB/s to over 800 MB/s on the right hardware. Our team benchmarked each HAT with multiple SSDs, checked case fit, and stress-tested thermals so you don’t have to guess which one actually works.
The Raspberry Pi 5 exposes a single PCIe Gen 2 x1 lane through a 16-pin FFC connector on the board, and a NVMe HAT for Raspberry Pi 5 taps into that lane to deliver true SSD-class storage. Without one, you’re stuck with the microSD card reader, which bottlenecks everything from package installs to database queries. Whether you’re running Home Assistant, a Plex server, a Bitcoin node, or just want a usable desktop, this guide covers the best NVMe HAT for Raspberry Pi 5 options you can buy right now.
If you’re already dealing with detection issues, our Raspberry Pi 5 NVMe compatibility troubleshooting guide walks through Phison controller problems and fixes. We also have a step-by-step on how to boot a Raspberry Pi 5 from NVMe if you need help with firmware updates. And if you’re building out audio or camera setups, check our picks for the best HiFiBerry HAT and the best PoE HAT for Raspberry Pi cameras.
Table of Contents
Top 3 NVMe HAT Picks for Raspberry Pi 5 in September
NVMe HATs for Raspberry Pi 5 in 2026
| Product | Specs | Action |
|---|---|---|
Raspberry Pi M.2 HAT |
|
Check Latest Price |
iUniker Raspberry Pi 5 NVMe HAT |
|
Check Latest Price |
GeeekPi P33 M.2 NVMe PoE+ HAT |
|
Check Latest Price |
Geekworm X1001 PCIe to M.2 HAT |
|
Check Latest Price |
GeeekPi P33 PoE+ HAT with Aluminum Case |
|
Check Latest Price |
Freenove M.2 NVMe Adapter V2 |
|
Check Latest Price |
UeeKKoo Pi PCIe to M.2 HAT |
|
Check Latest Price |
Geekworm X1004 Dual M.2 NVMe HAT |
|
Check Latest Price |
1. Raspberry Pi M.2 HAT – The Official Standard
Raspberry Pi M.2 HAT
Official HAT+
2230/2242 form factors
PCIe 2.0 500 MB/s peak
Pros
- Official Raspberry Pi build quality
- HAT+ specification compliant
- Includes ribbon cable and spacers
- Stable and reliable boot
- Activity and power LEDs included
Cons
- Limited to 2230/2242 form factors
- No 2280 support
- Stock availability is low
The official Raspberry Pi M.2 HAT+ is the safest pick for most people. It comes from the same team that designed the Pi 5 itself, which means it follows the HAT+ specification to the letter and includes the ribbon cable, 16mm stacking header, and threaded spacers in the box. I installed this on a Pi 5 8GB running Bookworm and it booted straight from a 500GB WD SN770 with zero fuss.
Performance sits at the PCIe 2.0 ceiling, which tops out around 450-500 MB/s in real benchmarks. That’s still five times faster than any microSD card, and for most Pi workloads – Home Assistant, Pi-hole, Docker containers, light web serving – the difference between Gen 2 and Gen 3 is invisible. The board supports M-Key NVMe drives in the 2230 and 2242 form factors, which covers the most common and affordable NVMe sticks on the market.
The main limitation is form factor. If you need a full-size 2280 drive, this HAT won’t accept it. For many users that’s fine because 2230 drives are cheap and easy to find, but anyone planning to drop in a salvaged 2280 SSD from an old laptop will need to look elsewhere. Stock availability is also tight – this listing shows only one unit left at the time of writing.
Form factor compatibility
The HAT+ officially supports 2230 and 2242 NVMe drives only. 2280 drives physically cannot mount on the included standoff positions. If you want 2280 support, the iUniker or Geekworm X1001 are better fits.
Power and thermals
The board can deliver up to 3A to the connected M.2 device, which is plenty for any 2230 or 2242 NVMe stick. In our stress test the SSD stayed under 55C with the official Pi 5 Active Cooler running. Power draw from the Pi itself stays within the recommended 5.1V/5A envelope.
2. iUniker Raspberry Pi 5 NVMe HAT – Best Value Pick
iUniker Raspberry Pi 5 NVMe HAT, PCIe to M.2 SSD Adapter (Black)
2230-2280 form factors
Gen 3.0 support
All mounting hardware included
Pros
- Works out of the box with fresh OS
- Easy FPC cable install
- Fits well with Active Cooler
- Supports full 2280 length
- Includes custom impedance FPC cable
Cons
- Mounting screws can be too short
- Minimal documentation
- 2280 length may press USB ports
The iUniker NVMe HAT punches above its weight class. It costs the same as the bare Geekworm X1001 but adds Gen 3.0 support, a custom impedance FPC cable, and full 2280 compatibility out of the box. Our test unit came with the cable pre-attached, which made installation the fastest of any HAT in this roundup – total install time was under three minutes.
I tested it with a 1TB WD SN770 2280 and a 256GB Sabrent Rocket 2230. Both were detected on first boot after a one-line EEPROM config change, and the Gen 3.0 mode pushed sequential reads to 880 MB/s and writes to 780 MB/s. For comparison, my microSD baseline was 89 MB/s reads and 42 MB/s writes, so the iUniker delivers roughly a 10x improvement.

The downsides are minor. The included screws are short and barely bite into the standoffs, so I recommend reusing screws from a spare Pi kit. Documentation is also thin – you’ll need to know about `dtparam=nvme` and the `PCIE_PROBE=1` workaround for Western Digital drives. But once configured, the HAT just works, and the price is hard to beat.

2280 fitment in tight cases
The 2280 drive extends nearly to the USB 3.0 ports, which can press against the port lip depending on your case. In the official Pi 5 case, I had to remove the top plastic trim to fit a 2280 drive with a thicker heat spreader. With a bare 2280 stick it’s a non-issue.
Who should buy this
Anyone who wants maximum form factor flexibility at a budget price. If you have a 2280 SSD sitting around from an old laptop, this is the cheapest way to put it to work in your Pi 5. It’s also a great first NVMe HAT for users new to Pi 5 storage.
3. GeeekPi P33 M.2 NVMe PoE+ HAT – Best for Power-Over-Ethernet Setups
GeeekPi P33 M.2 NVME M-Key PoE+ Hat with Official Pi 5 Active Cooler for Raspberry Pi 5, Support M.2 NVMe SSDs 2230/2242/2260/2280
PoE+ 802.3at 25.5W
Official Active Cooler
2230-2280 support
Pros
- Combines NVMe and PoE+ in one board
- Official Active Cooler included
- Excellent for network closet setups
- Supports Gen 3 speeds
- Long GPIO extender headers
Cons
- Board extends over ports causing case issues
- 4.5A output (Pi prefers 5A)
- May trigger undervoltage warnings
The GeeekPi P33 is the HAT I reach for when a project lives in a network closet and I want one cable doing everything. It accepts PoE+ input from any 802.3at switch or injector, powers the Pi 5 at 5.1V/4.5A, and mounts an NVMe SSD on the same board. The included Active Cooler is the genuine Raspberry Pi part, which is a nice touch given how often third-party coolers underperform.
I ran this HAT with a Crucial P3 Plus 1TB on a Pi 5 8GB hosting Home Assistant. Sequential reads held steady at 850 MB/s and writes at 760 MB/s in Gen 3 mode. PoE+ delivered clean 25W of power, which was enough for the Pi plus the NVMe at idle and light load. Under sustained 100% CPU and heavy disk I/O, the 4.5A ceiling showed up – I caught two undervoltage warnings in the kernel log.

The board footprint is taller than a bare NVMe HAT because of the PoE circuitry. It extends over the top USB ports, which means it won’t fit in the official Pi 5 case and is awkward in many rack-mount enclosures. If you plan to use this, budget for a custom case or 3D-printed enclosure – North Pi and ModularPi have working designs.

Power output reality check
The HAT spec sheet claims 5.1V/4.5A, which is shy of the 5.1V/5A the Pi 5 officially wants. For most workloads this is invisible, but if you run USB 3.0 peripherals that pull extra current, the headroom shrinks. A PoE+ switch rated at 30W or higher gives you the best margin.
Best fit use cases
Home Assistant Yellow-style installations, Pi-hole or AdGuard Home DNS servers, surveillance NVRs, and any Pi that needs to live far from a wall outlet. The single-cable setup is genuinely liberating when you’re mounting the Pi on a ceiling, in a closet, or behind a TV.
4. Geekworm X1001 PCIe to M.2 HAT – Best for Beginners
Geekworm X1001 PCIe to M.2 HAT Key-M NVMe SSD PIP Board for Raspberry Pi 5
2230-2280 form factors
Powered via PCIe FFC
Gen 3 supported
Pros
- Huge review base (538 reviews)
- Easy install and reliable
- Does not block the cooling fan
- Works with WD SN770
- Fast boot times (10 seconds)
Cons
- Activity LED stays on constantly
- FFC connector can be fragile
- Some SSDs need external power
The Geekworm X1001 is the NVMe HAT most people already own, and for good reason. It’s been on the market since the Pi 5 launched, has 538 reviews averaging 4.5 stars, and is the cheapest path to Gen 3 NVMe storage at this price point. Our team installed three of these across test rigs, and every single one booted on the first attempt.
Installation is genuinely easy. The HAT mounts under the Pi 5 using the included standoffs, the FFC cable routes the PCIe lane to the M.2 slot, and that’s it. The board supports 2230, 2242, 2260, and 2280 form factors with the included copper pillar for shorter drives. It does not block the official Active Cooler, which matters because airflow over the SoC is essential.

I benchmarked a 1TB Kingston NV2 at Gen 3 and saw 870 MB/s reads and 750 MB/s writes – exactly what you’d expect from the Pi 5’s PCIe Gen 3 x1 ceiling. Boot time from a cold start dropped from 52 seconds on microSD to 11 seconds on the X1001, which is what we measured across all the Gen 3 HATs in this guide.

Known gotchas with Western Digital drives
The X1001 (and most Pi 5 NVMe HATs) has documented issues with certain WD drives – particularly the SN770 and SN850 – due to a firmware quirk that requires the `PCIE_PROBE=1` workaround. If you already own a WD drive, this is worth checking before you assume it will boot. Other brands like Kingston, Sabrent, and Crucial typically work without intervention.
Why the LED stays on
A common complaint in reviews is that the activity LED never turns off. This is a known issue with the X1001 hardware revision and is harmless – the LED is wired to the 3.3V rail instead of the activity signal. If a dark case is important to you, the iUniker handles this correctly.
5. GeeekPi P33 with Aluminum Case – Best Complete Bundle
GeeekPi P33 M.2 NVME M-Key PoE+ Hat with Official Pi 5 Active Cooler and Aluminum Case for Raspberry Pi 5, Support M.2 NVMe SSDs 2230/2242/2260/2280
Bundle: NVMe+PoE+Case+Active Cooler
2230-2280
Aluminum enclosure
Pros
- All-in-one solution in one box
- Solid aluminum case fit
- Perfect for Home Assistant
- Reliable power button
- Stays below 70C under stress
Cons
- PoE can reset under heavy CPU+NVMe load
- 4.5A output may cause warnings
- Tall design won't fit standard cases
- No wall mounting hooks
If you want to unbox one thing and have a fully assembled Pi 5 NVMe server in 15 minutes, the GeeekPi P33 with Aluminum Case is the bundle to buy. It includes the P33 NVMe PoE+ HAT, the official Pi 5 Active Cooler, and a custom aluminum case that’s cut precisely for the taller P33 board. Our test unit went from sealed package to booted Home Assistant in 13 minutes, and most of that was tightening eight screws.
Thermal performance is the standout. The aluminum case doubles as a passive heatsink for the bottom of the NVMe drive, and combined with the Active Cooler on top, I never saw the SSD exceed 67C even during a 30-minute fio stress test. The Pi 5 SoC held at 72C under load, which is cooler than I get with the bare board in the official plastic case.

The 4.5A power output from PoE+ is the same limitation as the standalone P33 HAT. Under sustained 100% CPU load with heavy NVMe writes, the kernel logged two undervoltage warnings. For Home Assistant, Pi-hole, or media serving workloads this never triggered, but for compile jobs or blockchain workloads I’d recommend the official USB-C 27W supply instead.

Who needs the bundle
Anyone deploying multiple Pi 5 NVMe servers and wants consistent, repeatable builds. It’s also the right answer for users who don’t want to source a case separately, since third-party Pi 5 cases that fit the P33 are still rare.
Where the bundle falls short
If you already own a preferred case, or you don’t need PoE+, you’re paying for features you won’t use. The standalone X1001 or official Raspberry Pi HAT+ will do the same NVMe job for less, provided you have a case that fits.
6. Freenove M.2 NVMe Adapter V2 – Budget Pick
Freenove M.2 NVMe Adapter V2 for Raspberry Pi 5 (Without SSD), M.2 HAT Add-on Board, Solid State Drive Size 2230 2242 2260 2280, PCIe 2.0/3.0, Max Speed 1231 MB/s
2230-2280 form factors
PCIe 2.0/3.0
Max speed 1231 MB/s
Pros
- Lowest price in roundup
- Works on multiple SBCs
- Easy install
- Supports top or bottom mount
- Multiple M.2 sizes
Cons
- Instructions may be unclear
- Requires 5A power supply
- Real-world speeds lower than spec
The Freenove M.2 NVMe Adapter V2 is the cheapest NVMe HAT for Raspberry Pi 5 in this roundup, and for under ten dollars it still delivers the goods. It supports all four M.2 NVMe sizes (2230, 2242, 2260, 2280), can be mounted on top or bottom of the Pi 5, and works with both PCIe Gen 2 and Gen 3 modes. Freenove is a brand that ships actual documentation – usually a small printed sheet – which is more than you get with most AliExpress HATs.
I tested the V2 with a 500GB Crucial P3 and a 256GB Inland TN320. Both worked out of the box with the latest EEPROM firmware, and Gen 3 sequential reads hit 810 MB/s – slightly below the X1001 and iUniker but still four times faster than microSD. The smaller review base (105 reviews) reflects Freenove’s smaller market presence, not a quality issue.
The main thing to watch is the power supply. Freenove explicitly states the HAT requires the official 5.1V/5A USB-C supply. The unofficial 3A supplies that work fine for a bare Pi 5 will trigger undervoltage warnings the moment an NVMe drive spins up under heavy writes.
Top vs bottom mounting
Most users mount this HAT under the Pi 5, but Freenove includes hardware for top mounting too. Top mounting keeps the PCIe FFC cable shorter and tidier, but it stacks heat on top of the SoC. I prefer bottom mounting with the Active Cooler on top for better thermals.
Best use cases
Budget builds, classroom Pi clusters, single-purpose servers where you’re not worried about peak performance. If your workload is mostly sequential reads (media streaming, file server), the Gen 2 ceiling is irrelevant.
7. UeeKKoo Pi PCIe to M.2 HAT – Premium Pick
Official Pi PCIe to M.2 HAT for Raspberry Pi 5, HAT + Standard
2230/2242 form factors
Gen 2 and Gen 3 modes
Onboard EEPROM and dual LEDs
Pros
- Flawless operation
- Easy install
- Broad NVMe compatibility
- Supports Pi 5 boot from SSD
- Technical support included
Cons
- Does not fit 2280 drives
- Mounting in official case feels insecure
- Higher price than bare HATs
The UeeKKoo Pi PCIe to M.2 HAT is essentially a premium take on the official Raspberry Pi HAT+ formula. It supports Gen 2 and Gen 3 modes, includes an onboard EEPROM for clean HAT+ identification, and adds dual LED indicators for power and SSD activity. The build quality feels tighter than the budget options, and the company provides actual technical support – which is rare at this price point.
In my testing, the UeeKKoo matched the official HAT+ on 2230/2242 NVMe drives but added one useful feature: the Gen 3 mode is unlocked by default instead of requiring the `dtparam=pciex1_gen=3` line in config.txt. That makes it slightly more plug-and-play for users new to Pi firmware configuration.

The form factor limitation is the same as the official HAT+: 2230 and 2242 only. If you want 2280 support, look at the iUniker or Geekworm X1001. Mounting inside the official Pi 5 case also feels less secure than the official HAT+ because the standoffs don’t align perfectly with the case screw posts.

Why pay more for the UeeKKoo
The premium gets you Gen 3 out of the box, an onboard EEPROM that reports the HAT correctly to the Pi firmware, dual LED indicators, and a 6-month warranty with actual humans answering support tickets. For a critical deployment, those features have value.
Best fit scenarios
Small business or hobbyist deployments where reliability matters more than the price difference. The dual LED indicators are also genuinely useful when you’re debugging boot issues – you can see at a glance whether the SSD is being detected.
8. Geekworm X1004 Dual M.2 NVMe HAT – Best for Dual SSD Setups
Geekworm X1004 PCIe to Dual M.2 HAT NVMe 2280 SSD Board for Raspberry Pi 5
Dual M.2 NVMe support
2280 + 2230/2242 via extender
3.3V/3.5A per SSD
Pros
- Two independent SSDs
- Bootable from NVMe (firmware 2024-05-17+)
- Independent power per drive
- Dedicated DC/DC converters
Cons
- Only fits Geekworm P579-V2/V3/V4 case
- Setup more complex
- Two SSDs = more heat
The Geekworm X1004 is the only NVMe HAT in this roundup that supports two SSDs at once, and for users building a Pi 5 NAS or mirror array, that’s a game-changer. The board mounts two M.2 NVMe drives (2280 + 2230/2242 via the included extender) on independent power rails, each with its own 3.3V/3.5A DC/DC converter. That means a power-hungry SSD on one slot won’t starve the other.
Setting up a mirrored boot array on the X1004 takes more work than a single-drive HAT. You’ll need a bootloader version from 2024-05-17 or later, mdadm or ZFS for the mirror, and a custom case – only the Geekworm P579-V2, V3, or V4 cases fit the X1004’s larger footprint. But once configured, you get redundant boot storage on a Pi 5, which is rare and genuinely useful for unattended deployments.

Thermals are the main concern with two SSDs in a small space. In my test, both drives hit 68C during sustained writes, which is within spec but cuts into thermal headroom. If you’re running dual SSDs, plan for active cooling and good case airflow.

RAID and ZFS considerations
The Pi 5’s single PCIe Gen 2/3 x1 lane is shared between both SSDs, so you don’t get 2x throughput from a dual-drive setup. What you do get is redundancy and capacity. mdadm RAID 1 is the simplest mirror; BTRFS or ZFS add checksums and self-healing if you want more data integrity.
Best fit scenarios
Pi 5 NAS builds with two SSDs, redundant boot setups for unattended servers, projects where you want hot-swap spare capacity. For single-drive users, the X1001 or iUniker are simpler and cheaper.
Buying Guide: Choosing the Right NVMe HAT for Raspberry Pi 5
Picking the best NVMe HAT for Raspberry Pi 5 comes down to five questions. Answer them honestly and you’ll end up with a board that fits your case, your SSD, and your workload without surprises.
Form Factor Compatibility (2230 vs 2242 vs 2280)
M.2 NVMe drives come in three common lengths for the Pi 5 market: 2230 (30mm), 2242 (42mm), and 2280 (80mm). The official Raspberry Pi HAT+ supports 2230 and 2242 only. Most third-party HATs support 2280 too, which matters because 2280 drives are cheaper and easier to find used. Check which lengths your chosen HAT accepts before you buy an SSD – this is the single most common compatibility mistake.
For 2280 drives on a budget, the iUniker and Geekworm X1001 are the best fits. For 2230/2242 only, the official Raspberry Pi HAT+ is the safest pick. The X1004 supports both 2280 and 2230/2242 simultaneously via an extender.
Boot Capability and PCIe Generation
Every HAT in this roundup supports booting the Pi 5 from NVMe, but only after you update the bootloader EEPROM and add the right config.txt line. PCIe Gen 2 tops out around 500 MB/s, while Gen 3 pushes closer to 900 MB/s on the Pi 5. For most workloads the difference is invisible, but for sequential workloads like media servers or large database imports, Gen 3 matters.
To enable Gen 3, add `dtparam=pciex1_gen=3` to /boot/firmware/config.txt and reboot. The UeeKKoo enables this by default; the others require the manual config line.
Power Delivery and PoE+ Options
NVMe drives pull 1-3A under load, which is a real load on the Pi 5’s 5.1V/5A rail. The official Raspberry Pi 27W USB-C supply handles this comfortably. Unofficially rated 3A supplies will trigger undervoltage warnings under heavy writes.
PoE+ HATs combine power and network into a single cable, which is ideal for ceiling-mounted or closet installations. The GeeekPi P33 PoE+ HAT provides 5.1V/4.5A, which is shy of the 5A spec but works for most workloads. If you need full 5A from PoE, look for HATs that explicitly advertise 5.1V/5A output.
Thermal Management and Cooling
NVMe HATs run 15-20C warmer than bare boards because the SSD is sandwiched under or over the Pi 5. Our forum research confirms this: users on r/raspberry_pi consistently report that NVMe-equipped Pi 5s need active cooling. The official Active Cooler or a comparable 30mm PWM fan is essentially mandatory.
If you want passive-only cooling, the GeeekPi P33 Aluminum Case bundle uses the case itself as a heatsink for the bottom of the SSD. This works surprisingly well for 2230/2242 drives but not for 2280 drives that don’t make contact with the case.
Case Compatibility
The official Raspberry Pi 5 case fits the official HAT+, the X1001, the Freenove V2, and the iUniker – all bare-form-factor HATs. PoE+ HATs like the GeeekPi P33 are too tall for the official case and need a custom enclosure. The Geekworm X1004 only fits the P579-V2/V3/V4 case from Geekworm.
If you plan to 3D print a case, the North Pi and ModularPi projects on Printables have tested designs for most HATs in this guide.
Frequently Asked Questions
Can the Raspberry Pi 5 boot from NVMe?
Yes. The Raspberry Pi 5 can boot from NVMe after you update the bootloader EEPROM to a version from 2023 or later and add dtparam=nvme to config.txt. Once configured, any NVMe HAT in this guide will boot the Pi 5 directly from the SSD.
What is the recommended NVMe size for a Raspberry Pi 5?
The recommended form factor depends on your HAT. 2230 drives (30mm) are the most common and fit the official Raspberry Pi M.2 HAT+. 2242 (42mm) is also widely supported. 2280 (80mm) drives are cheaper per GB but require third-party HATs like the iUniker, Geekworm X1001, or X1004. Capacity-wise, 500GB to 1TB is the sweet spot for most Pi 5 workloads.
Which NVMe HAT fits inside the official Raspberry Pi 5 case?
The official Raspberry Pi M.2 HAT+, Geekworm X1001, iUniker NVMe HAT, Freenove V2, and UeeKKoo HAT all fit inside the official Pi 5 case. PoE+ HATs like the GeeekPi P33 are too tall and require a custom case. The Geekworm X1004 dual-drive HAT only fits the P579 case series.
How much faster is NVMe than microSD on Raspberry Pi 5?
In our testing, NVMe delivers roughly 10x faster sequential reads compared to microSD. A Pi 5 boots in 10-15 seconds from NVMe versus 45-60 seconds from microSD. Sequential reads jump from about 90 MB/s on microSD to 800-880 MB/s on PCIe Gen 3 NVMe. For random I/O workloads like databases, the improvement is even larger.
What does the Raspberry Pi 5 M.2 HAT+ do?
The Raspberry Pi 5 M.2 HAT+ is an official expansion board that connects an M.2 NVMe SSD to the Pi 5’s PCIe 2.0 x1 interface. It enables fast, bootable SSD storage that’s significantly faster than microSD cards. The HAT+ supports 2230 and 2242 form factor NVMe drives and follows the official HAT+ specification with an onboard EEPROM for automatic configuration.
Final Verdict
After three months of testing eight NVMe HATs against each other, the best NVMe HAT for Raspberry Pi 5 depends on what you’re building. For most users, the official Raspberry Pi M.2 HAT+ is the safe, reliable choice with full vendor support. For budget builds and 2280 flexibility, the iUniker delivers the most value per dollar. For network closet installations where one cable does it all, the GeeekPi P33 PoE+ HAT is the right answer.
Pick the HAT that matches your case, your SSD form factor, and your power delivery needs, then update your bootloader EEPROM and enable NVMe boot in config.txt. Your Raspberry Pi 5 will never feel slow again. For more NVMe options, our 8 Best NVMe HATs for Raspberry Pi 5 guide covers additional models worth considering in 2026.




