Best Hardware for Self-Hosted NVR in 2026
Quick Recommendation
For most self-hosted NVR setups: an Intel N100 mini PC ($150-200), a Google Coral USB Accelerator ($25-35 used), a 2TB WD Purple HDD ($55-65), and a PoE switch ($50-80). Total: $280-380 for a system that handles 4-8 cameras with AI object detection and replaces $150+/year in cloud subscriptions.
What Makes NVR Hardware Different
NVR workloads have specific demands that general-purpose home servers don’t:
| Requirement | Why It Matters |
|---|---|
| Hardware video decode | Cameras stream H.264/H.265 — decoding in software burns CPU |
| Sustained sequential writes | Continuous recording writes hundreds of MB/s across cameras |
| AI inference capability | Object detection (person, car, package) needs dedicated silicon |
| Low idle power | NVR runs 24/7/365 — power draw compounds |
| Network throughput | Multiple HD/4K streams require reliable bandwidth |
The biggest mistake people make: throwing an old desktop at the problem. A 10-year-old i5 will decode video fine but draws 65W idle. An N100 mini PC does the same job at 10W.
Server Hardware
Best Overall: Intel N100 Mini PC
The Intel N100 is the sweet spot for self-hosted NVR. Its integrated GPU handles hardware decode of 10+ simultaneous H.264/H.265 streams. Intel Quick Sync Video does the heavy lifting — CPU stays below 20% even with 8 cameras.
| Intel N100 Mini PC Options | Price | RAM | Storage | Notes |
|---|---|---|---|---|
| Beelink Mini S12 Pro | $150 | 16 GB DDR5 | 500 GB SSD | Best budget option |
| Trigkey Speed S5 N100 | $160 | 16 GB DDR5 | 500 GB SSD | Dual 2.5GbE NICs |
| Minisforum UN100D | $180 | 16 GB DDR5 | 256 GB SSD | Dual HDMI, compact |
| GMKtec NucBox G3 | $170 | 16 GB DDR5 | 512 GB SSD | Good thermal design |
Why N100 over N95/N97: The N100 has a higher sustained TDP (6W vs 6W nominal, but better thermal headroom) and broader motherboard availability. The performance difference between N95/N97/N100 is negligible for NVR — pick whichever is cheapest.
Mid-Range: Intel i3-12100 / i5-12400
If you plan to run 12+ cameras or want to run Frigate alongside other services (Home Assistant, media server), step up to a 12th-gen Intel desktop CPU. The integrated UHD 730 GPU handles 20+ concurrent streams.
| Option | Price | Cameras | Power (Idle/Load) |
|---|---|---|---|
| Intel N100 mini PC | $150-200 | 4-8 | 8-15W |
| Intel i3-12100 build | $300-400 | 8-16 | 25-45W |
| Intel i5-12400 build | $400-550 | 16-32 | 30-60W |
| Used Dell OptiPlex (i5-10th gen) | $100-150 | 6-12 | 20-40W |
Budget: Used Dell/Lenovo Micro PCs
A used Dell OptiPlex Micro or Lenovo ThinkCentre Tiny with an 8th-10th gen i5 costs $80-150 on eBay and handles 6-10 cameras comfortably. Their Intel iGPU supports Quick Sync for hardware decode. Drawback: no M.2 expansion on older models, and USB 3.0 only (matters for Coral USB).
AI Accelerators
Object detection is the feature that makes self-hosted NVR competitive with cloud solutions. Without it, you get motion detection (every bush moving in the wind triggers an alert). With it, you get person/car/animal/package detection.
Google Coral TPU
The Google Coral is the default AI accelerator for Frigate. It runs inference at ~5ms per detection — fast enough for real-time detection across multiple cameras.
| Coral Product | Form Factor | Price (New/Used) | Interface | Inference Speed |
|---|---|---|---|---|
| Coral USB Accelerator | USB-A dongle | $60 / $25-35 | USB 3.0 | 4-5ms |
| Coral M.2 A+E key | M.2 card | $25-35 new | M.2 A+E | 4-5ms |
| Coral M.2 B+M key | M.2 card | $25-35 new | M.2 B+M | 4-5ms |
| Dual Coral M.2 | M.2 card | $35-45 new | M.2 | 2-3ms (2 TPUs) |
Recommendation: The M.2 variants are cheaper and more reliable than USB (no USB disconnect issues). If your mini PC has a free M.2 A+E slot (most N100 boards do — it’s the WiFi slot), use the M.2 Coral. Otherwise, the USB Accelerator works fine.
Dual Coral: Only needed for 10+ cameras with sub-object detection zones or multiple detection models. One Coral handles 8-10 cameras at 5 FPS detection easily.
NVIDIA GPU
If you already have an NVIDIA GPU (GTX 1050 Ti or newer), Frigate can use it for detection via TensorRT. Faster than Coral for large models but draws 30-75W — overkill for a dedicated NVR. Better suited for multi-purpose servers already running an NVIDIA card.
CPU-Only Detection
Possible but not recommended for more than 2-3 cameras. Detection runs at 100-300ms per frame on an N100 CPU, creating noticeable lag. Fine for a single doorbell camera; unusable at scale.
| Accelerator | Cameras Supported | Power Draw | Cost |
|---|---|---|---|
| None (CPU only) | 1-3 | 0W extra | $0 |
| Coral USB | 6-10 | 2-4W | $25-60 |
| Coral M.2 | 6-10 | 2-4W | $25-35 |
| Dual Coral M.2 | 10-20 | 4-8W | $35-45 |
| NVIDIA GTX 1050 Ti | 15-30 | 30-75W | $80-120 used |
Storage
NVR storage needs are predictable: calculate per-camera bitrate × retention period.
Storage Calculation
| Camera Resolution | Bitrate (H.265) | Daily Storage | 30-Day Storage |
|---|---|---|---|
| 1080p (2 MP) | 2-4 Mbps | 22-43 GB | 660-1,290 GB |
| 2K (4 MP) | 4-8 Mbps | 43-86 GB | 1,290-2,580 GB |
| 4K (8 MP) | 8-16 Mbps | 86-173 GB | 2,580-5,190 GB |
Real-world numbers with Frigate: Frigate records only when objects are detected (events-only mode), which cuts storage by 80-95%. A 4-camera 1080p setup with event-only recording uses 50-150 GB per month. Continuous recording uses 2-5 TB per month.
Recommended Drives
| Drive | Capacity | Price | Type | Notes |
|---|---|---|---|---|
| WD Purple WD23PURZ | 2 TB | $55-65 | CMR HDD | Surveillance-rated, 24/7 |
| WD Purple WD43PURZ | 4 TB | $85-100 | CMR HDD | Best value per TB |
| WD Purple WD84PURZ | 8 TB | $150-170 | CMR HDD | Large deployments |
| Seagate SkyHawk ST2000VX015 | 2 TB | $50-60 | CMR HDD | Surveillance-rated alternative |
Why surveillance-rated drives: WD Purple and Seagate SkyHawk drives use CMR (conventional magnetic recording), not SMR. SMR drives rewrite entire blocks during sustained sequential writes — exactly what NVR does. SMR drives will lag and drop frames. WD Red Plus (CMR) also works, but Purple drives are optimized for the write pattern.
SSD for NVR? Use a small SSD (128-256 GB) for Frigate’s cache/clips and the OS. Use an HDD for continuous recording. SSD endurance becomes a concern with 24/7 continuous writes, and the cost per TB is 3-5x higher.
Networking
PoE Switches
PoE (Power over Ethernet) cameras are strongly preferred over WiFi. A single Cat6 cable carries power and data. No batteries, no signal drops, no WiFi channel congestion.
| PoE Switch | Ports | PoE Budget | Price |
|---|---|---|---|
| TP-Link TL-SG1005PE | 5 (4 PoE) | 65W | $50 |
| TP-Link TL-SG1008PE | 8 (8 PoE) | 126W | $70-80 |
| Netgear GS308PP | 8 (8 PoE+) | 83W | $75-90 |
| TP-Link TL-SG1016PE | 16 (8 PoE) | 110W | $110-130 |
Power budget math: Most PoE cameras draw 7-12W. A 65W budget handles 4-5 cameras. A 126W budget handles 10+ cameras with headroom. Always buy more PoE budget than you think you need.
Network Isolation (Recommended)
Put cameras on a separate VLAN from your main network. Many IP cameras phone home to Chinese cloud services (Reolink, Dahua, Hikvision). A VLAN with no internet access prevents this while still allowing your NVR server to access camera streams.
Complete Build Examples
Budget Build: 4 Cameras (~$350)
| Component | Model | Price |
|---|---|---|
| Server | Used Dell OptiPlex Micro (i5-8500T) | $100 |
| AI Accelerator | Google Coral USB | $30 |
| Storage | WD Purple 2 TB | $60 |
| PoE Switch | TP-Link TL-SG1005PE | $50 |
| Cameras | 4× Reolink RLC-510A | $110 (4×$28) |
| Total | $350 |
Recommended Build: 6-8 Cameras (~$550)
| Component | Model | Price |
|---|---|---|
| Server | Beelink Mini S12 Pro (N100) | $150 |
| AI Accelerator | Coral M.2 A+E | $30 |
| Storage | WD Purple 4 TB | $90 |
| PoE Switch | TP-Link TL-SG1008PE | $75 |
| Cameras | 6× Reolink RLC-811A | $200 (6×$33) |
| Total | $545 |
Power User Build: 12-16 Cameras (~$1,000)
| Component | Model | Price |
|---|---|---|
| Server | Intel i3-12100 build (16 GB, 256 GB SSD) | $350 |
| AI Accelerator | Dual Coral M.2 | $40 |
| Storage | 2× WD Purple 8 TB (RAID 1) | $320 |
| PoE Switch | TP-Link TL-SG1016PE | $120 |
| Cameras | 12× Reolink RLC-811A | $400 (12×$33) |
| Total | $1,230 |
Power Consumption
NVR runs 24/7. Power draw matters.
| Component | Idle | Load |
|---|---|---|
| N100 mini PC | 8-10W | 15-20W |
| Google Coral USB/M.2 | 1-2W | 2-4W |
| 3.5” HDD (WD Purple) | 3-5W | 5-8W |
| 8-port PoE switch (loaded) | 10-15W | 15-25W |
| 4× PoE cameras | 28-48W | 28-48W |
| Total system | 50-80W | 65-105W |
At $0.12/kWh (US average): $53-92/year in electricity. Factor this into your cost comparison against cloud subscriptions.
What Can You Run On This Hardware?
An N100 mini PC handling NVR duties still has capacity for additional services:
| Service | RAM Overhead | CPU Impact | Compatible? |
|---|---|---|---|
| Home Assistant | 512 MB | Low | Yes — recommended alongside Frigate |
| Uptime Kuma | 128 MB | Minimal | Yes |
| Pi-hole | 128 MB | Minimal | Yes |
| Jellyfin (transcoding) | 1-2 GB | High (shared iGPU) | Possible but may conflict with video decode |
| Nextcloud | 512 MB-1 GB | Medium | Yes, if not storing camera footage there |
Avoid running Jellyfin transcoding on the same machine — both Frigate and Jellyfin want the iGPU for video processing.
Related
- Best Self-Hosted Video Surveillance
- How to Self-Host Frigate
- How to Self-Host ZoneMinder
- How to Self-Host Shinobi
- How to Self-Host Viseron
- PoE Camera Systems for Self-Hosted NVR
- Self-Hosted NVR Setup Guide
- Self-Hosted Alternatives to Ring
- Self-Hosted Alternatives to Nest Cam
- Frigate vs ZoneMinder
- Docker Compose Basics
- Backup Strategy
Get self-hosting tips in your inbox
Get the Docker Compose configs, hardware picks, and setup shortcuts we don't put in articles. Weekly. No spam.
Comments