Skip to content

Command Palette

Search for a command to run...

How we test

protocol v4 · updated Jun 1, 2026 · applies to all 4 guides

Every number on this site — the cost, the setup time, the maintenance estimate — comes from actually doing the thing. This page is the exact protocol, so you can hold us to it.

The protocol

  1. 01
    Start from a fresh serverA brand-new VPS at the exact size the guide recommends — never a beefier machine that hides performance problems. The provider, plan and region are named in every guide.
  2. 02
    Deploy with a stopwatch runningWe follow our own guide, first attempt, timer running — including the parts where we read docs and fix our own mistakes. That time becomes the setup figure. It is measured, not estimated.
  3. 03
    Use it for two weeks, for realThe app replaces its SaaS counterpart in our own workflow for at least 14 days — real documents, real photos, real passwords. Anything that annoyed us makes it into the verdict.
  4. 04
    Break it, then restore from backupWe destroy the server and restore from the offsite backup the guide sets up. If the restore doesn't work, the guide doesn't ship.
  5. 05
    Re-check pricing, and show whenWe re-check vendor and provider pricing and stamp each page with the month it was last verified — so a stale price is visible, not hidden.

What the numbers mean

cost / moThe cheapest VPS that meets the app's documented minimums with 50% headroom, plus $0.60/mo for offsite backups. Your time is never priced in — that's what the effort column is for.
setupWall-clock time from empty server to working app, first attempt, mistakes included. Rounded up, never down.
maintenance / moTime spent on updates, backup checks and fixes during the test window, projected to a month. “~30 min/mo” means we spent about 15 minutes in two weeks.
savingsSaaS list price for the stated team size on annual billing, minus the self-hosted cost. If a free SaaS tier would genuinely cover you, we say so instead.

Difficulty is measured during that first stopwatch deploy — never guessed from the docs.

noteEvery price on the site carries the month it was last re-checked.

What earns a recommendation

An app gets the green module only if all four hold after the full protocol:

  • the restore drill succeeded on the first try
  • we kept using it voluntarily after the two weeks
  • maintenance stayed under an hour a month
  • the project is actively maintained with a plausible future

Fail any one and the verdict says so, plainly. Roughly a third of the apps we test don't get recommended.

Independence

Recommendations are ordered on price-to-performance and fit. Affiliate revenue never buys a better ranking, and when we can't recommend a partner honestly we don't link it. See how we make money for the full picture.

When we're wrong

If a reader reproduces a guide and gets a different number, we re-run the protocol and correct the page with a dated note. Major version releases trigger a full re-test. Tell us at hello@selfhostatlas.com.