It's tempting to start a homelab by buying hardware. Resist that for an afternoon and answer three questions first - they'll save you from building something you have to redo in three months.

What do you actually want to run?

Be specific, not aspirational. "A media server, an ad blocker, and a password manager" is a plan. "Kubernetes" is not a goal, it's a tool - if you can't name the services you want running, you don't need an orchestrator yet, you need First Services.

Common starting motivations, roughly in order of how often people actually start here:

  • Stop paying for things you could self-host - password managers, note-taking, photo backup, media streaming.
  • Learn a skill for work - Linux administration, networking, Kubernetes, DevOps tooling.
  • Privacy - keep your data (photos, notes, browsing DNS) off third-party servers.
  • Just because - genuinely a fine reason, but be honest with yourself that it is one, since it changes how much you should spend.

Skip this one: if email hosting is on that list, cross it off now. Getting deliverability right (SPF/DKIM/DMARC, IP reputation, not silently landing in everyone's spam folder) is close to a full-time job even for professionals, and a single misconfigured mail server can get a home IP blocklisted for months. Use a cheap hosted mailbox (Fastmail, Proton Mail, Migadu) instead - this is one of the few things this guide recommends never self-hosting, at any tier.

Budget: figure out the ceiling before the floor

Decide the maximum you're willing to spend before you look at any hardware listings, not after. Homelab hardware shopping is a rabbit hole - "just one more drive bay" is how a $150 mini PC project becomes a $1,200 rack. A reasonable starting budget:

Budget What it buys
$0–100 An old laptop or desktop you already own, repurposed
$150–400 A used enterprise mini PC (e.g. a decommissioned office machine) or a Raspberry Pi + drive setup
$400–1000 A new mini PC (Intel N100 class) with decent RAM/storage, or a modest used server

You do not need rack-mounted enterprise gear to start. See Choosing Hardware for the actual trade-offs between used enterprise gear, mini PCs, and Raspberry Pi.

Constraints that matter more than spec sheets

These get ignored in favor of CPU benchmarks and bite people later:

  • Noise - enterprise servers are loud. If the machine lives near where you sleep or work, that 1U server with screaming fans is a mistake regardless of how cheap it was on eBay.
  • Power draw - an always-on machine costs money every single day it's plugged in. A 150W idle draw at your local electricity rate adds up over a year in a way a 15W mini PC's doesn't. If you don't know your rate, check a recent utility bill before assuming this doesn't matter.
  • Physical space - does it need a proper spot with airflow, or is it going on a shelf in a closet? Decide this before buying something that needs 2U of rack space you don't have.
  • Household tolerance - if other people live with you, a service going down because you're experimenting should be an inconvenience, not a crisis. Don't put your only DNS server or the family photo backup at risk until you've got a backup story - see Backups 101.

Write down what "done" looks like for this tier

Before moving on, write one or two sentences describing what you want running by the end of Beginner. Something like: "One machine, Docker, Pi-hole and Jellyfin running, backed up to an external drive." That's enough to keep you from over-provisioning for problems you don't have yet - the Intermediate tier is where virtualization and network segmentation earn their complexity, not before.

Next: Choosing Hardware.