Issues, cycles and roadmaps for engineering and product teams, on dedicated machines in Switzerland, the EU or your own datacentre. Pilae runs it on your own servers, or in Zurich, Switzerland, and eleven other Pilae Cloud regions.
- Licence
- AGPL-3.0
- Runs on
- Your own hardware, or any of 10+ Pilae regions — six of them in Switzerland and the EU
- Upgrades
- Pinned, tested against your configuration, applied in your window
- Upstream
- plane.so
Running Plane in production: what it takes
Pin and deploy
The whole stack at one tested version, on PostgreSQL and an S3-compatible bucket in the country you chose, with the published-boards service off until you need it.
Connect sign-in and mail
Email sign-in or OAuth on the Community Edition, OIDC or SAML through Keycloak or Entra ID on a paid Commercial Edition plan, and outgoing mail through your relay.
Keep it on the private network
Plane answers only on your private mesh behind the Pilae gate. Anyone outside it sees nothing, including the login page.
Back up and restore on a schedule
The database and the bucket go offsite daily, encrypted, in your chosen country. Once a month we restore both into a scratch instance, open a project and record the result in the console.
Upgrade in your window
Plane releases often and many releases carry database migrations. The Pilae Agent tests each upgrade on a copy of your data, waits for your approval and applies it in your window.
What Plane is, and who runs it
Self-hosted Plane for issues, sprints and roadmaps
Plane is a project tracker for engineering and product teams. Work items sit on boards, lists, calendars and timelines. Cycles are sprints, modules group larger pieces of work, and pages hold the specs and notes that sit next to them. It covers the ground most teams use Jira or Linear for, without the per-seat bill or a vendor holding your backlog.
A backlog says a lot: what you are building, what is broken, which customers asked for what. We run Plane on dedicated machines in any of 10+ Pilae Cloud regions, six of them in Switzerland and the EU, or on your own hardware, and it answers only on your private network. Nothing about your roadmap has to sit on a server you did not choose.
Plane in production: backups, upgrades and sign-in
Plane is a dozen services, not one container. We run it on PostgreSQL with attachments in an S3-compatible bucket, and back both up daily, encrypted, to an offsite location in your chosen country. Once a month we restore them into a scratch instance and record the test in the console, as described under backups. Upgrades go through the Pilae Agent: it tests each release on a copy of your data, waits for your approval and applies it in your window.
For single sign-on, Plane’s paid Commercial Edition plans connect to Keycloak or Entra ID over OIDC or SAML, and our identity service sets that up across your apps.
Plane licence and editions
The Community Edition has no per-user fee. If you are weighing it against Jira, see the Jira alternative, and our migration service plans and runs the move. See the plans for the price. Talk to us about the backlog you want to bring home.
Plane system requirements
Before anything is deployed, this is what has to exist. We size it with you in the first session, and we say so when your own hardware is already enough.
- CPU and memory
- 2 vCPU · 8 GBPlane is a dozen containers: web, API, workers, a scheduler, real-time collaboration and a proxy. We size production instances at 8 GB so imports and exports have room.
- Database
- PostgreSQLHolds workspaces, projects, issues, comments and pages. It runs as a managed instance we back up and restore, not a container volume nobody checks.
- Queue and cache
- RabbitMQ · ValkeyRabbitMQ carries background jobs such as notifications and exports. Valkey, the open-source Redis fork, holds sessions and cache.
- File storage
- S3-compatible bucketAttachments and images go to a bucket in the country you chose, backed up with the database so a restore brings both back together.
- Sign-in
- Password, magic link, OAuthThe Community Edition signs in with email or Google, GitHub and GitLab accounts. OIDC and SAML, for Keycloak or Entra ID, need a paid Commercial Edition plan.
- DNS and TLS
- 1 hostnameReachable on your private network through the Pilae gate on port 443. Certificates are issued and renewed automatically.
Migrating from Jira to Plane
Leaving Jira is mostly a question of how much of the configuration you want to keep. Projects, issues, comments, attachments, assignees, labels and parent and child links all have a place in Plane, and they come across. Custom workflows with many states, screens per issue type, and automation rules written over years do not map one to one, and most teams find that a good moment to simplify. With the Commercial Edition, including its free tier, Plane's own Jira importer moves Jira Cloud and Jira Server or Data Center projects. On the Community Edition, we move them through the Plane API from a Jira export. Either way, we agree the mapping of states, types and fields with each project owner before anything is imported, and the Jira keys are kept on each issue so links in commits, wiki pages and old emails still lead somewhere.
Inventory the Jira projects
Projects with activity in the last year, their workflows, issue types, custom fields and automations, and who owns each one. Archived projects stay as a read-only export.
Agree the mapping
States, issue types, priorities and custom fields are mapped to Plane states, labels and properties, project by project, with the owner signing off.
Import into staging
Issues, comments, attachments and links go into a staging copy of Plane. Owners check their boards and a sample of issues against Jira.
Cut over, keep Jira read-only
On the agreed day Jira goes read-only, the final changes are imported and teams start work in Plane. Jira stays readable until the subscription ends.
What a Plane deployment is made of
- proxyonly entry point, behind the Pilae gate
web, space, adminthe app, public boards, instance settings
- webworkspaces, issues, cycles, modules, pages
- spacepublished boards, off unless you ask
- adminsign-in methods, mail, instance settings
- api, worker, beatDjango API, background jobs, scheduler
- livereal-time editing of pages
data
- postgresbacked up daily, restored monthly
- valkeysessions and cache, rebuilt on restart
- rabbitmqjob queue
- bucketattachments, same country as the database
What Pilae is responsible for
A pinned version
A version we have run, not whatever latest resolves to that day.
A runbook
What it depends on, how it fails, what to do about it. In your repository.
A restore drill
Backups restored on a schedule. A backup nobody has restored is a file.
A patch window
Security updates in a window you agreed, with a rollback ready.
Someone watching
Every endpoint probed on the minute. An alert reaches a person, not a dashboard nobody opens.
- Where it runs
- zur1, fra1, fal1, gra1, ams1, hel1, lon1, ash1, hil1, sin1, tok1, syd1, on-premZurich, Frankfurt, Falkenstein, Gravelines, Amsterdam, Helsinki, London, Ashburn, Hillsboro, Singapore, Tokyo, Sydney, Your own hardware
- Who holds the credentials
- You do. Ours are separate, named, logged and revocable with one command. We ask before anything changes outside an agreed window.
- If you leave
- The machine, the data, the compose files and the runbook are already yours. Nothing stops when our access does.
What running Plane costs
On Starter, Plane runs in Pilae Cloud for CHF 449EUR 479USD 559 a month, hosting and onboarding included. On Business, it is one of up to three apps for CHF 1,590EUR 1,690USD 1,990 a month, on your own servers or in Pilae Cloud. Enterprise is quoted. The plans set what each includes; these are the inputs that move the price around them.
- Instance size
- The CPU, memory and, where a model runs, the GPUs the app needs for your users and your data.
- High availability
- One machine with tested restores, or a replicated setup that keeps serving when a node fails.
- Storage and backups
- How much data it holds, how long backups are kept, and point-in-time recovery for its database.
- Plan and support
- Starter, Business or Enterprise: support hours, response times in the contract and how often we review the service with you.
- Region
- Your own hardware, where the infrastructure is already yours, or a Pilae Cloud region, where machines are priced per month. On Starter, Pilae chooses the site.
- Sign-on and integrations
- Single sign-on, directory sync, mail relays and the other systems the app has to reach.
Plane: common questions
Is Plane open source?
Can Plane replace Jira?
Do we need the Commercial Edition?
What happens to Jira issue keys and links?
Where does our project data live?
Also in business
Odoo Community
Open-source ERP for sales, invoicing, inventory, purchasing and manufacturing, operated on your own servers or dedicated machines in Switzerland and the EU.
Replaces SAP Business One, Microsoft Dynamics
Cal.com
Booking pages synced with your calendars, run on dedicated machines in any of 10+ Pilae Cloud regions, six of them in Switzerland and the EU, or your own datacentre, from the MIT-licensed community edition of Cal.com.
Replaces Calendly
Twenty
An open-source CRM for contacts, companies and deals, with a data model you shape yourself, operated on your servers or dedicated machines in Switzerland and the EU.
Replaces Salesforce, HubSpot CRM
Bring us your Plane. We will tell you what it takes.
Thirty minutes on the deployment you already have, or the one you are about to start.