5 Ways to Deploy Kirby CMS: Hosting, PHP Requirements & Real Costs

Devops & Infrastructure, Open Source, PHP, Tips & Tricks, and Tutorials

5 Ways to Deploy Kirby CMS: Hosting, PHP Requirements & Real Costs

So you've built your site with Kirby CMS and you're ready to ship it — but Kirby's flat-file architecture means hosting choices that work for WordPress (databases, shared cPanel boxes) aren't always the best fit. This guide breaks down five proven ways to deploy Kirby in 2026, with real pricing, PHP requirements, and the operational tradeoffs we've seen running automated deployments for thousands of PHP sites.

Kirby CMS hosting requirements (the short version)

Before picking a host, make sure it meets Kirby's baseline:

  • PHP 8.1+ with mbstring, ctype, curl, gd (or imagick), and json extensions enabled
  • Apache or nginx with mod_rewrite (or equivalent rewrite rules) so Kirby's routing works
  • Writable content/, media/, site/accounts/, and site/sessions/ directories — Kirby writes content as flat files
  • No database needed — that's the whole point of a flat-file CMS, and it's why your hosting bill can be smaller than a comparable WordPress setup
  • A Git workflow if you want sane deploys — flat-file content lives next to your code, so git push can ship both

That last point matters more than people realize. Because Kirby stores pages as YAML/Markdown files inside content/, your repo is your CMS. That makes Kirby unusually well-suited to Git-based deployment on a VPS — there's no wp_posts table to migrate between staging and production.

With that out of the way, here are the five hosting routes worth considering.

1. VPS (Virtual Private Server)

A VPS gives you complete control over your hosting environment, making it an excellent choice for developers who want to fine-tune their Kirby setup. Popular providers include DigitalOcean and Hetzner. For a worked Hetzner walkthrough on a sister flat-file PHP CMS, see how to deploy Craft CMS on Hetzner Cloud.

Pricing: Starts at $4–6/month for basic servers (Hetzner CX22, DO basic droplet)

Features

  • Full root access to your server
  • Choice of operating system (Ubuntu 24.04 LTS recommended for Kirby)
  • Custom PHP-FPM and nginx tuning
  • Ability to host multiple sites on one box
  • Shell access for direct server management

Pros

  • Complete control over the environment (PHP version, OPcache, memory limits)
  • Better performance — dedicated CPU and RAM, no noisy neighbours
  • Cost-effective for multiple sites; one $6/month box can comfortably host 3–5 small Kirby sites
  • Full control over security measures (firewall, fail2ban, automatic updates)

Cons

  • Requires DevOps knowledge — you own the OS, the web server, and the SSL renewal
  • Manual server maintenance (kernel updates, log rotation, backups)
  • No automatic CI/CD out of the box — you'll bolt on something like DeployHQ, GitHub Actions, or a git pull cron
  • Manual SSL setup (Let's Encrypt + certbot is the usual answer)

A VPS is the most flexible option, especially if you're moving up from shared hosting and want serious performance for not much money. The catch: you're now a sysadmin.

DeployHQ is a deployment platform that bridges the gap between your Git repository and any server, giving Kirby sites push-to-deploy without the GitHub Actions YAML rabbit hole.

Pricing: Free tier (10 deploys/month, 1 project), $9/month for unlimited deployments

Features

Pros

  • Works with any host you already have (cheap VPS, managed PHP host, even some shared hosts with SSH)
  • Setup usually under 10 minutes
  • Free tier is genuinely usable for a single Kirby site
  • Atomic deploys mean visitors never hit a half-deployed site mid-composer install

Cons

  • You still need somewhere to host (DeployHQ doesn't run your code, it ships it)
  • A bit of one-time setup to wire up SSH keys and exclusions

Read the complete guide to deploying Kirby with DeployHQ, or follow our step-by-step Kirby deployment tutorial for a hands-on walkthrough — including how to keep content/ out of your deployment payload so the Kirby Panel's writes survive each deploy.

3. Dokku (self-hosted PaaS)

Dokku is an open-source Platform-as-a-Service that acts like a mini-Heroku on your VPS. It uses Docker containers and Git workflows, making it a strong fit if you're already comfortable with Docker.

Pricing: Free (open-source) — you only pay for the VPS underneath ($5–10/month)

Features

  • Git-based deployments (git push dokku main)
  • Docker container management with the official PHP buildpack or your own Dockerfile
  • Automatic SSL via the Let's Encrypt plugin
  • Zero-downtime deployments (Dokku does blue/green by default)
  • Multiple environment support on one host

Pros

  • Free and open-source — no per-deploy fees
  • Great when you're hosting multiple apps; each gets its own container
  • Docker isolation means a bad deploy on one site can't take down the others

Cons

  • Requires DevOps knowledge to install and maintain Dokku itself
  • Needs a VPS to host (no managed Dokku service exists)
  • Docker layer adds memory overhead — a $5 VPS gets cramped fast with 3+ apps
  • Kirby's writable directories need explicit Docker volumes, otherwise Panel edits vanish on the next deploy (a classic gotcha)

Want to get started? Check the official guide for deploying Kirby with Dokku.

4. Managed PHP hosting (Krystal, Fortrabbit, etc.)

Managed hosts handle the OS, PHP-FPM, SSL, and backups — you upload code (often via SFTP or Git) and they take care of everything below. Krystal.io is one of the more developer-friendly options; Fortrabbit explicitly markets itself for Kirby and Craft CMS.

Pricing: Starts at $11/month (Krystal), $20/month (Fortrabbit App XS)

Features

  • Up to 5 sites on entry plans (Krystal)
  • 25GB+ storage typical
  • Free SSL certificates and automatic renewals
  • Daily backups
  • Customer support that actually answers PHP questions

Pros

  • Easier to set up than a VPS — no sudo apt install involved
  • Excellent customer support on the developer-focused hosts
  • No need to worry about kernel patches, log rotation, or fail2ban

Cons

  • 2–3× more expensive than a VPS for equivalent compute
  • Limited performance options (fixed PHP-FPM pool sizes, no custom OPcache tuning)
  • No full control over the server — if you need a specific PHP extension that isn't pre-installed, you're stuck

Managed hosting is the right answer when developer time is more expensive than the hosting bill. For agencies running ten Kirby sites for clients, the math often works out — but you'll still want zero-downtime deploys on top via DeployHQ rather than SFTP-overwrite-the-files.

5. GitHub Pages (static export)

While Kirby normally requires PHP, you can deploy it as a static site to GitHub Pages by pre-rendering the whole site at build time. It's a hack — but for marketing sites and portfolios, it works surprisingly well.

Pricing: Free for public repos, included with GitHub paid plans for private repos

Features

  • Automated builds via GitHub Actions
  • Free SSL certificates
  • Global CDN through GitHub's infrastructure
  • Version control for your content (the build output is committed)
  • Automatic deployments on git push

Pros

  • Completely free hosting
  • Excellent performance — static files served from a CDN
  • Zero server maintenance
  • Perfect for content-rare, traffic-spiky sites (a launch post on Hacker News won't bring it down)
  • Reliability backed by GitHub's infrastructure

Cons

  • No Panel — content has to be edited in code/Markdown, then pushed
  • Dynamic features (forms, search, comments) won't work without a third-party service
  • Not all Kirby plugins are compatible with the static export
  • Build time scales with site size — a 1,000-page Kirby site can take minutes to render

To set it up, use the kirby-static-site GitHub Action, which uses kirby3-static-site-generator under the hood.

Decision matrix: which path is right for you?

Pick the column that matches your situation:

Need Best option Why
Cheapest possible (and you'll edit in code) GitHub Pages Free, fast, but no Panel
Cheapest with Panel VPS + DeployHQ $6 VPS + free DeployHQ tier
Multiple sites, you know Docker Dokku on a VPS Container isolation + Git push
Multiple sites, you don't want sysadmin work Managed (Krystal/Fortrabbit) + DeployHQ Ops handled, atomic deploys layered on top
Single high-traffic site VPS + DeployHQ + CDN Full control, no platform tax
Agency with 10+ client sites Managed PHP host + DeployHQ Consistent ops + per-client environments

When picking your solution, also ask:

  • How comfortable are you with DevOps work and server administration?
  • What's your monthly budget — and is it just hosting, or hosting + your own time?
  • Will you need a staging environment? (For Kirby, the answer is almost always yes — you don't want to test plugin updates against a live Panel.)

Our recommendation: start with a $6/month VPS plus the DeployHQ free tier. It's flexible enough for almost every Kirby project, costs less than a coffee per month, and gives you push-to-deploy with rollback. Sign up for DeployHQ to get started.

FAQ

What are Kirby's exact PHP version and extension requirements?

As of Kirby 4.x (current major version), you need PHP 8.1 or newer with these extensions: mbstring, ctype, curl, json, and either gd or imagick for image processing. PHP 8.2 and 8.3 are both supported and recommended for new projects. Older PHP versions (7.x) are not supported by Kirby 4.

Can I self-host Kirby on a Raspberry Pi or home server?

Yes — Kirby's flat-file architecture means it runs fine on a Raspberry Pi 4 with 2GB RAM under nginx + PHP-FPM. The constraint is usually bandwidth and uptime, not compute. For a public site, a $4 VPS is more reliable; for a private intranet or family wiki, a Pi works well.

Kirby vs WordPress — which deploys more easily?

Kirby is significantly easier to deploy via Git than WordPress because it has no database. With WordPress, you have to coordinate code deploys with database migrations and worry about the wp_options.siteurl mismatch between environments. Kirby's content is just files in content/, so a git push (or a DeployHQ deploy) ships everything atomically. WordPress remains more popular and benefits from a larger plugin ecosystem.

What are the benefits of using Kirby for developers?

Kirby is open-source on GitHub and designed for extensibility, with a headless mode and built-in RESTful API for content and user management. Developers can add functionality with plugins or write their own in PHP — and because there's no database, plugin development is mostly file I/O instead of SQL gymnastics.

For more details, check out Kirby for Developers.

Is Kirby CMS suitable for large-scale websites?

Yes. Kirby handles large-scale projects, with documented sites running over 65,000 pages. For very large sites, enable Kirby's built-in caching and consider a CDN in front; flat-file lookups don't scale linearly forever, but the breaking point is much higher than most projects ever reach. See the Kirby Performance docs.

Is Kirby CMS open source? Is it free?

Kirby's source code is open source on GitHub under a custom license. It is not free for commercial use — for any for-profit project you need to purchase a license (one-time fee, perpetual). Personal sites, free non-profits, and trial/development environments don't require a license.

Can I run Kirby in Docker?

Yes — and it's a clean fit because Kirby is just PHP files. The official PHP Docker images plus a small Dockerfile are enough to get going. The non-obvious part is mounting content/, media/, site/accounts/, and site/sessions/ as Docker volumes so Panel writes survive container restarts. Once you've solved that, options 1, 3, and 4 above all work with Docker — Dokku is the most opinionated, a plain VPS gives you the most control.


Need help deploying Kirby? Email us at support@deployhq.com or follow @deployhq on X for deployment tips and product updates.