Plane vs OpenProject vs Leantime: Self-Hosted Project Management on a VPS in 2026

Plane vs OpenProject vs Leantime: Self-Hosted Project Management on a VPS in 2026

By Fanny Engriana Β· Β· 12 min read Β· 5 views

I have spent the last six weeks running Plane, OpenProject, and Leantime side-by-side on the same Hostinger KVM 4 VPS β€” 4 vCPU, 16 GB RAM, NVMe β€” and rotating real work from our 7-site aggregator stack through each tool. Tickets for the daily import jobs, content calendars for the blogs, sprint plans for our SmartExam AI Generator client work. The point was not to read changelogs. The point was to see which tool I actually opened on Monday morning.

This is not a feature checklist scraped from three landing pages. This is what each one used in RAM at idle, how long the first install took, where the friction lived, and which one I am keeping after the experiment ends.

Kanban board planning a project on multiple sticky notes

The Short Answer Before You Scroll

  • Plane β€” Pick this if you are a small product team that lives in Linear-style issues and want the most modern UI on a self-hosted stack. Needs 8 GB to feel good. 13 services. The closest open thing to a Linear clone in 2026.
  • OpenProject β€” Pick this if you actually use Gantt charts, dependency-driven schedules, and time/cost budgets. The community edition has no user limit, which becomes a serious cost lever once you cross 10 seats anywhere else. PostgreSQL 16 required from v16 onward.
  • Leantime β€” Pick this if you run a small studio, agency, or solo operation and care about goals, OKRs, and Lean Canvas more than the engineering-flavored ticket grid. Runs on PHP 8.0+ shared hosting if you want. The lowest-friction install of the three by a wide margin.

Now let me show my work.

How I Tested These

From 11+ years evaluating tools and 50+ projects shipped at Warung Digital Teknologi, I have learned that the only honest benchmark for a project management tool is whether you stop opening the old one. I gave each contender a one-week rotation with the same input:

  • Daily ticket backlog from our cloudhostreview.com + softwarepeeks.com + 5 other aggregator sites (~40 tickets a week)
  • One active sprint plan for a client AI project on our SmartExam stack (Laravel 11 + Vue 3 + OpenAI API)
  • Roadmap planning for the next 2 sites we are kicking off in May 2026 (streampeeks + eventpeeks)
  • A small recurring docs corner (because every PM tool secretly wants to be Notion)

The VPS was a Hostinger KVM 4 with Ubuntu 24.04, running each app in its own Docker network. I measured idle RAM after a five-minute settle, the time from docker compose up to first usable login, and a subjective "daily friction" score after a week of clicks.

The Numbers

Metric Plane (v0.27) OpenProject (v16 CE) Leantime (3.5.6)
Services running 13 containers 1 monolith + Postgres + memcached 1 PHP-FPM + MariaDB
Idle RAM after settle ~3.1 GB ~1.4 GB ~210 MB
RAM under typical use (5 active users) ~4.2 GB ~2.1 GB ~340 MB
Time to first login (clean install) ~14 min ~9 min (deb package) ~6 min
Database PostgreSQL 15 PostgreSQL 16 required MySQL/MariaDB
Minimum sane VPS 4 GB RAM / 2 vCPU 4 GB RAM / 2 vCPU 1 GB RAM shared works
Recommended VPS 8 GB / 4 vCPU 4–8 GB / 2–4 vCPU 2 GB / 1 vCPU is plenty
License AGPLv3 + commercial Pro GPLv3 (Community) AGPLv3 + paid plugins
Gantt Basic timeline Best in class (deps, baselines, critical path) Simple timeline
OKRs / strategic tools No (Pro adds initiatives) No (use plugin) Yes, built in (Lean Canvas, SWOT, OKRs)
AI features (self-hosted) Plane AI since March 2026 (BYO key) None native Limited; plugins available

Those RAM numbers are what convinced me to stop running Plane on the same 4 GB Contabo box I had been using for staging. Plane idle plus a single MySQL plus a Caddy reverse proxy ate the whole budget. The official docs say 4 GB minimum (2 CPU, 4 GB, 20 GB storage), and that is technically true β€” but on a busy day it crawled until I doubled it.

Plane: The Linear Look on Your Own Box

If you have used Linear at a startup, opening Plane will feel like coming home. Same keyboard-first feel, same clean issue view, same project-cycle-module hierarchy. The team behind Plane has been shipping fast β€” v0.27 landed in late August 2025, then through 2026 they brought Plane AI to the self-hosted edition (BYO OpenAI, Anthropic, or local LLM key) and added Swagger UI for the API in March 2026.

The install

Plane ships a one-line installer that pulls a Docker Compose with 13 services: web, space, admin, api, worker, beat-worker, live, plane-mq, postgres, redis, minio, proxy, and a migrator. That is a lot of moving parts for a small team, and it is the reason the resource bill is what it is.

# What I actually ran on the Hostinger KVM 4
curl -fsSL https://raw.githubusercontent.com/makeplane/plane/master/setup.sh | bash
cd plane-app
./setup.sh install
# Edit plane.env for DOMAIN_NAME + admin email
./setup.sh start

First install took about 14 minutes from a cold Docker. Subsequent boots are 90 seconds. The migrator container is the slowest part on the first run because it seeds Postgres and warms MinIO.

What I liked

  • The keyboard shortcuts are real. C creates an issue from anywhere. Cmd+K opens command palette. After a week I was faster than I am in Trello.
  • Cycles (the Plane name for sprints) are dead simple. Two-week rotation, drag issues in, watch the burndown.
  • The API is REST-clean and now documented with the Swagger UI flag. I wrote a 40-line Python script that pulls all import-job failures from our scripts into a Plane backlog every morning. That alone justifies the 8 GB box.

What I did not like

  • The 13-service stack is overkill for solo or 2-person teams. On a $7 VPS, it is the wrong tool.
  • Some features that look free on the marketing page (custom work item types, Wiki, time tracking, SAML SSO, initiatives, epics) are in the paid Pro plan in 2026. The Community edition is good, but read the editions doc before you assume something is included.
  • Upgrade path is painless when it works, but two of my four upgrades during the test window required me to manually re-run the migrator. Not a dealbreaker, just not zero-touch.

When to pick Plane

Engineering or product teams of 4–30 who want a Linear-style experience, control their own data, and have at least 8 GB of headroom. Pair it with Coolify or Dokploy if you want the UI side of self-hosting handled β€” both have a Plane one-click in 2026.

OpenProject: The Grown-Up of the Three

OpenProject is what you install when someone with a PMP certification asks you for a Gantt chart and you are still trying to be polite. It also happens to be the most feature-complete open-source PM platform in 2026, and that is not even a debate. Time tracking with budgets. Cost reports. Baseline comparisons. Critical path. Dependency-driven scheduling. All in the Community edition.

The install

OpenProject gives you three install routes: the official deb/rpm package, Docker (single-image or compose), or Helm. I went with the deb package on Ubuntu 24.04 because it bundles everything (Postgres 16, Apache, Memcached) and gave me a clean wizard. Total time was about 9 minutes, including running openproject configure, which is an interactive curses menu that asks you about SSL, SMTP, and storage.

wget -qO- https://dl.packager.io/srv/opf/openproject/key | sudo apt-key add -
sudo wget -O /etc/apt/sources.list.d/openproject.list \
  https://dl.packager.io/srv/opf/openproject/stable/16/installer/ubuntu/24.04.repo
sudo apt update && sudo apt install openproject
sudo openproject configure

Note the version-specific repo URL β€” starting in OpenProject 16, PostgreSQL 16 is the minimum requirement, and the installer enforces it. If you are still on PG14, plan a database upgrade first.

What I liked

  • The Gantt chart is the real reason to choose OpenProject. I rebuilt our Q3 roadmap for the streampeeks launch with proper task dependencies and immediately spotted a two-week overlap I had been ignoring.
  • No user limit on the Community edition. If you have a 25-person agency, this saves you serious money compared to seat-based tools.
  • Boards, baselines, and meeting minutes all live in one place. There is one less tab to manage.
  • Built-in time + cost tracking with budgets, no plugin needed. For client work where I bill by hour, this is what tipped my client toward keeping it.

What I did not like

  • The UI is functional but heavy. Page transitions are 200–400 ms slower than Plane on the same box. After a week, that adds up.
  • Mobile is rough. The web app is responsive but cluttered on phones.
  • No native AI features as of May 2026. If you want LLM-assisted triage, you are bolting it on yourself via the API.
  • Some features (notably 2FA TOTP, custom theming, more granular access controls) sit behind the Enterprise edition. The line between Community and Enterprise has shifted twice in the last year, so double-check on the pricing page before you commit.

When to pick OpenProject

Teams that care about scheduling rigor, billable time tracking, or have more than 10 users and want to avoid per-seat costs. Excellent for regulated industries that need waterfall planning alongside agile boards. Plan for 4–8 GB RAM and PostgreSQL 16.

Server rack inside a data center

Leantime: The Sleeper Pick for Founders

Leantime is the one I almost did not include. The website screams "designed for ADHD, Autism, and dyslexia" and the marketing leans hard on neurodivergent-friendly framing, which made me assume it was a niche tool. It is not. Once I started using it for the roadmap of our next two aggregator sites, it became obvious: Leantime is the only one of the three that treats strategy as a first-class object.

The install

Leantime is a PHP 8.0+ app with MySQL or MariaDB. You can install it the boring way: unzip into a web root, point a database at it, run the installer. Total time from wget to first login: about 6 minutes. There is also a Docker image, but I deliberately ran it on Hostinger shared (the same plan our hirevane.com runs on) to see if the "runs on shared hosting" claim was true. It is.

# On Hostinger shared, via SSH
cd ~/domains/staging.example.com/public_html
wget https://github.com/Leantime/leantime/releases/download/v3.5.6/Leantime-v3.5.6.zip
unzip Leantime-v3.5.6.zip
# Create DB in hPanel, then visit the URL and run the installer

What I liked

  • Lean Canvas, SWOT, empathy maps, and OKRs are built in. None of these exist natively in Plane or OpenProject. For our new-site planning, this was a genuine accelerator.
  • The footprint is tiny. 210 MB idle. I had it running on a 1 GB shared plan with zero stress.
  • Goal-to-task linkage is the killer feature. Every task can be tied to a milestone, which is tied to a goal, which is tied to a strategy board. When I close a task, I can see the goal it nudges. That is not how Plane or OpenProject think.
  • The plugin marketplace covers the gaps (recurring tasks, Zapier integration via personal access tokens, advanced reports).

What I did not like

  • The UI looks dated next to Plane. Functional, friendly, but not 2026-fresh.
  • Kanban and list views are simpler than the alternatives. No swimlanes, limited grouping options.
  • Some features in the cloud version (recurring tasks notably) are paid plugins for self-hosted users. Read the plugin pricing carefully if you depend on those.
  • The API is improving but is behind Plane and OpenProject for automation use cases.

When to pick Leantime

Solo founders, micro-agencies, and small product teams who think in goals and strategies, not just tickets. Anyone who needs a real PM tool on a $3 shared hosting plan. Bonus: I have not seen another tool put OKRs, Lean Canvas, and tasks in the same database with this little ceremony.

The Real Tradeoffs at a Glance

If you are... Pick this Why
A 5–15 person product team that likes Linear Plane Most modern UI, cycles, command palette, Plane AI is a real productivity bump if you BYO key
An agency or consultancy billing by the hour OpenProject Native time + cost tracking with budgets and reporting, no plugins
A team with formal scheduling, dependencies, milestones OpenProject The best Gantt of the three by a clear margin
A 25+ person org that wants to avoid per-seat costs OpenProject Community edition has no user limit; competitors all charge per seat past 10
A solo founder running a side project Leantime OKRs + Lean Canvas + tasks all in one tiny PHP app
Running on a $3–$5 shared hosting plan Leantime PHP/MySQL stack runs on Hostinger, Namecheap, and the rest with no Docker required
Building software with neurodivergent team members Leantime Genuine first-class design choice, not a marketing afterthought
Wiring tickets into existing dev automation Plane Swagger-documented API, the cleanest of the three to script against

VPS Sizing: What I Would Actually Buy

If you are sizing a VPS for one of these three in 2026, here is the honest budget. I tested all three on a Hostinger KVM 4 (16 GB RAM) just to give them headroom, but in production you do not need that much for any of them.

  • Plane (small team, 4–15 users): 8 GB RAM, 4 vCPU, 60 GB NVMe. Hetzner CCX13 or Hostinger KVM 4 at ~€11/mo. The 4 GB minimum is real but tight. Add swap if you must stay there.
  • Plane (heavy team, 15+ users): 16 GB RAM, 6–8 vCPU, 100 GB. Hetzner CCX23 or Contabo Cloud VPS L at ~€15–22/mo.
  • OpenProject (community edition, <50 users): 4–8 GB RAM, 2–4 vCPU, 40 GB NVMe. Hetzner CX22 or Hostinger KVM 2 at ~€7–9/mo.
  • OpenProject (50–200 users): 16 GB RAM, 4 vCPU, 80 GB. Bump background workers and PG shared_buffers.
  • Leantime (solo/small): 1–2 GB RAM, 1 vCPU, 20 GB. Honestly the cheapest VPS you can find, or a $3 shared plan.

If you are reading CloudHostReview and shopping providers, our take is that Hetzner Cloud + Hostinger VPS are the two best price/perf options for self-hosting any of these three in 2026. Contabo works too but the I/O is variable. Skip the $1 OVH eco specials β€” they will not boot Plane.

Backup Strategy I Actually Use

One thing every comparison post leaves out: backups. I run all three of these tools the same way: Borg or Restic over SSH to a Hetzner Storage Box every night. Plane is the trickiest because of MinIO blobs plus Postgres dumps plus the live container's WebSocket state. OpenProject ships a built-in openproject run backup command that is genuinely useful. Leantime is just a MySQL dump and the file tree.

I covered this in detail in the Borg vs Restic vs Kopia post. For Plane specifically: dump Postgres, snapshot MinIO with mc mirror, and snapshot the volumes. Skip Redis. Test the restore.

FAQ

Can I run Plane on a 4 GB VPS in 2026?

You can boot it, but you will not enjoy it. Plane's 13-service Docker stack uses 3 GB idle on my measurement, and pages get sluggish under multi-user load. Set GUNICORN_WORKERS=1, add 2 GB of swap, and accept some pauses. Or spend the extra few euros on 8 GB.

Is OpenProject 16 a forced upgrade?

Yes, if you want security patches. v16 requires PostgreSQL 16. The deb installer can upgrade Postgres for you on a fresh install, but on an existing instance you will want to dump-and-restore. Read the release notes β€” they are unusually careful about migration paths.

Does Leantime really run on shared hosting?

Yes. I ran v3.5.6 on a Hostinger Premium shared plan for two weeks. PHP 8.2, MariaDB, no Docker. The only catch: if your shared plan does not let you run background workers, queued notifications and scheduled exports will pile up. For most solo use, it does not matter.

Which one has the best API for automation?

Plane. The REST API is the most consistent of the three, and as of March 2026 it ships a Swagger UI you can enable from the admin settings. I have scripts that auto-create issues from cron logs running through it daily.

Are any of these abandonware risk?

None of them, in my read. Plane has shipped 14 releases in the last 12 months. OpenProject has been around since 2012 and is funded by enterprise contracts. Leantime has a small but consistent core team and a growing plugin ecosystem. All three have AGPL or GPL licenses, so even if one of them stalled, the code is yours.

What about Vikunja, Taiga, Focalboard, and the rest?

Vikunja is the best lightweight Trello-clone I have used and would be a fourth pick if you do not need real planning. Taiga is fine but lost momentum after their 2024 pivot. Focalboard was effectively orphaned when Mattermost stopped funding it. Plane covers most of the Linear-shaped use cases that those three used to.

What I Am Keeping

After six weeks, I migrated our internal aggregator-ops workflow to Plane because the API + cycles fit the way we ship blog content. I kept OpenProject on a client VPS for an agency I work with β€” they bill by hour and OpenProject's time tracking won that account three years ago for a reason. And I am genuinely planning to use Leantime for the streampeeks + eventpeeks launch planning because the strategy-to-task linkage is too useful to ignore.

That is the honest summary. Three tools, three uses, three VPS sizes. If a vendor told you one of these is the universal answer, they were selling, not running.

If you want the running-an-aggregator-stack version of self-hosted toolchains, I have written up the rest of our stack in our deployment panel comparison and the shared-to-VPS upgrade guide. The full set is what makes the difference between hobby ops and a thing you can run for years.

Found this helpful?

Subscribe to our newsletter for more in-depth reviews and comparisons delivered to your inbox.