- n
- 194 apps
- measured
- Oct 2026
- method
- How we test
- dataset
- latestdoi:10.5281/zenodo.22983606
- license
- CC BY 4.0
SelfHost Atlas (2026). The median self-hosted app takes 1.4 GB of disk right after install; 21 apps at 5 GB or more hold 44% of the total. https://selfhostatlas.com/blog/self-hosted-app-disk-footprint. Data: doi:10.5281/zenodo.22983606The median self-hosted app takes 1.4 GB of disk right after install; 21 apps at 5 GB or more hold 44% of the total
Nov 5, 2026 · 7 min read
data as of · Oct 2026Data & methodn=194
- n
- 194 apps
- measured
- Oct 2026
- method
- How we test
- dataset
- latestdoi:10.5281/zenodo.22983606
- license
- CC BY 4.0
SelfHost Atlas (2026). The median self-hosted app takes 1.4 GB of disk right after install; 21 apps at 5 GB or more hold 44% of the total. https://selfhostatlas.com/blog/self-hosted-app-disk-footprint. Data: doi:10.5281/zenodo.22983606Docker disk footprint for 194 self-hosted apps, each installed on a server pruned of earlier apps: median 1,388.5 MB, from 19 MB (RustDesk) to 27,324 MB (PostHog). Disk tracks idle RAM at the rank level (rho 0.84), but twelve apps that idle under 256 MB still take more than 2 GB of disk.
- median Docker disk footprint right after install, of 194 apps
- 1,388.5 MB
- apps measured
- 194
- data as of
- Oct 2026
Our idle-RAM posts cover one of the two numbers the harness records for every app it installs. The other is how much disk Docker is using once the install has finished. For the 194 apps with a measurement, the median is 1,388.5 MB. The range runs from 19 MB to 27,324 MB.
The distribution
| Disk footprint | Apps |
|---|---|
| Under 500 MB | 56 |
| 500 to 999 MB | 22 |
| 1,000 to 1,999 MB | 43 |
| 2,000 to 4,999 MB | 52 |
| 5,000 MB and over | 21 |
- 78 of the 194 apps (40%) take less than 1 GB; eleven take less than 100 MB.
- The 21 apps at 5 GB or more account for 196,072 of the 447,891 MB in the whole set, which is 44% of all the disk for 11% of the apps.
- The 56 apps under 500 MB have a median footprint of 264.5 MB and add up to 14,088 MB together, about half of PostHog on its own.
The heaviest ten
| App | Disk | Idle RAM |
|---|---|---|
| PostHog | 27,324 MB | 16,824 MB |
| Strapi | 17,554 MB | 189 MB |
| Sentry | 14,609 MB | 13,284 MB |
| Windmill | 14,205 MB | 933 MB |
| Dify | 11,180 MB | 1,787 MB |
| Payload | 10,454 MB | 100 MB |
| LibreChat | 10,109 MB | 1,115 MB |
| Huly | 9,813 MB | 3,699 MB |
| Supabase | 8,372 MB | 1,285 MB |
| Krayin CRM | 8,238 MB | 466 MB |
Seven apps take more than 10,000 MB. Two of them, Strapi and Payload, are unremarkable on RAM: both idle under 200 MB. The reason is in how they are installed. Neither project publishes an official prebuilt image, so our snippet for Strapi scaffolds a project and builds the image on the server, and the Payload one does the same. The footprint we record is everything docker system df counts, including Docker's build cache. The dataset keeps only the total, not the split between images and cache, so we cannot say how much of the 17,554 MB is cache, but a local build is the likely reason these two stand out.
The lightest ten
| App | Disk | Idle RAM |
|---|---|---|
| RustDesk | 19 MB | 3 MB |
| Glance | 34 MB | 6 MB |
| Shiori | 49 MB | 5 MB |
| Syncthing | 60 MB | 18 MB |
| Tinyauth | 62 MB | 8 MB |
| Gatus | 75 MB | 8 MB |
| KeeWeb | 77 MB | 7 MB |
| IT Tools | 81 MB | 4 MB |
| Dozzle | 83 MB | 12 MB |
| WriteFreely | 83 MB | 16 MB |
Disk follows RAM, with notable exceptions
Divide each app's disk footprint by its idle RAM and the median of those ratios is 6.6. The rank correlation between the two figures across the 194 apps is 0.84, so heavy-RAM apps are usually heavy on disk too, but the top of the two lists differs. Only three of the ten heaviest apps by idle RAM (PostHog, Sentry and Huly) are also in the disk top ten. The other seven, Zulip, Graylog, Langfuse, Twenty, Mailcow, Immich and Teable, all idle above 1,800 MB and take between 2,539 and 5,836 MB of disk, below Krayin CRM.
The more useful mismatch runs the other way. Twelve apps idle under 256 MB but take more than 2 GB of disk:
| App | Idle RAM | Disk |
|---|---|---|
| Strapi | 189 MB | 17,554 MB |
| Payload | 100 MB | 10,454 MB |
| Komodo | 110 MB | 3,794 MB |
| PeerTube | 210 MB | 3,786 MB |
| Odoo | 176 MB | 3,618 MB |
| Nextcloud | 210 MB | 3,377 MB |
| PhotoPrism | 102 MB | 3,240 MB |
| Lemmy | 250 MB | 2,646 MB |
| HeyForm | 239 MB | 2,597 MB |
| Jellyfin | 170 MB | 2,362 MB |
| MediaWiki | 106 MB | 2,188 MB |
| SuiteCRM | 105 MB | 2,156 MB |
If you size a small server by RAM alone, these are the apps that take a large share of a small disk before you have stored a single file in them.
Disk by category
These are the 22 categories with at least four measured apps, covering 118 of the 194. Thirteen of them have a median above the overall 1,388.5 MB.
| Category | Measured apps | Median disk (MB) | Lightest–heaviest (MB) |
|---|---|---|---|
| Backend & BaaS | 5 | 8,372 | 2,034–17,554 |
| AI Chat Interfaces | 5 | 4,580 | 2,359–10,109 |
| Team chat | 4 | 3,643.5 | 499–5,740 |
| Photo backup & gallery | 4 | 2,975 | 1,271–5,836 |
| No-code database | 4 | 2,865 | 2,230–4,192 |
| Workflow automation | 5 | 2,800 | 970–14,205 |
| CRM | 7 | 2,156 | 1,575–8,238 |
| Web analytics | 5 | 1,844 | 1,266–27,324 |
| Bookmarks | 4 | 1,696 | 49–2,995 |
| Project Management | 11 | 1,637 | 126–9,813 |
| Observability | 7 | 1,450 | 364–5,503 |
| Notes | 6 | 1,434 | 100–3,159 |
| Wiki & docs | 5 | 1,416 | 867–2,188 |
| SSO & Identity | 8 | 848.5 | 62–2,344 |
| Developer tools | 4 | 838.5 | 81–7,331 |
| Monitoring | 7 | 817 | 75–2,658 |
| Password manager | 4 | 789.5 | 77–1,234 |
| Media server | 5 | 516 | 333–2,362 |
| Dashboards | 4 | 429.5 | 34–577 |
| Code hosting | 4 | 378 | 181–1,271 |
| Media automation | 6 | 356 | 263–1,140 |
| File sharing | 4 | 264 | 135–1,681 |
As with idle RAM by category, the spread inside a category is usually wider than the gap between category medians, so the per-app figure on each app's page is the one to use.
What this number is
The disk figure is the total docker system df reports, images, containers, local volumes and build cache together, read at least 30 seconds after the install finishes (the harness waits longer while any container still reports that it is starting), at the same moment as the idle-RAM reading. Before each app the harness removes every container, volume, network, image and build-cache entry from the previous one, so the total on the box is that app's footprint alone. It is a first-boot figure with an empty database and no user files; a photo library or a mail store grows from here.
Three limits to keep in mind:
- It is Docker's accounting, not a measurement of a specific directory, and apps installed by building an image locally carry their build cache.
- Two apps that pull the same base image share its layers on one host, so the figures do not simply add up across a stack.
- 188 of the 194 measurements were taken on a Google Cloud e2-standard-2 running Ubuntu 26.04 LTS with Docker; six apps (PostHog, Sentry, Langfuse, RustDesk, AppFlowy and LiteLLM) were run on larger e2-standard machines. Each figure is one reading, not an average.
The install harness and its clean-server protocol are described on How we test; the disk reading itself is the docker system df total described above. The RAM side of the same measurements is in the heaviest-and-lightest post.
About the numbers
This post uses the install-verification dataset exported on 2026-10-16 (256 records, 194 with a measured disk figure, every one of which also has a measured idle RAM; measured between 2026-08-28 and 2026-10-14). The dataset is CC BY 4.0 and cited as DOI 10.5281/zenodo.22983606. Our earlier idle-RAM report reported disk for a smaller, older set of 96 apps; the two should not be compared directly.
Apps in this post
Related

A Raspberry Pi 5 (8 GB) has the RAM for 192 of the 194 apps we measured
Applying the RAM budget from our hardware pages to 194 measured idle figures: what fits on a Pi 5, what a Pi 4 gives up, and why a RAM count alone is not a plan, since every figure here was measured on x86.

Leaving Notion: a 2 GB server lists at about the price of one Notion Plus seat
Notion Plus is $10 per member per month billed yearly, $12 billed monthly. A 1 vCPU, 2 GB VPS lists at $10 to $12 a month at three providers, and all seven Notion alternatives in our catalog list a minimum of 2 GB or less. What that comparison covers, and what it leaves out.

Idle RAM by Self-Hosted Category: 1.4 GB to 32 MB
Median idle RAM for the 22 self-hosted categories with at least four measured apps. In 19 of them, the heaviest app idles at ten times or more the lightest one, so a category's median is a rough guide at best.
One email when we publish new measurements.
No digests, no roundups. Just the new numbers and what changed.