Old deployments will no longer fill up your Appwrite Cloud storage_
From November 5, 2026, inactive deployments on Appwrite Cloud are cleaned up after 30 days by default, so they stop counting toward your storage. Your active deployment always stays.

If you're on the Free plan and your storage keeps creeping toward the limit, old deployments are a likely reason.
Every time you push to Git or redeploy, your function or site gets a new deployment, and the old one sticks around. Only one of them, the active deployment, serves your traffic. The rest are inactive, but each one is still a full copy of your code and build, and it takes up storage. On the Free plan, that's the same 2GB your files and databases use. A few months of pushes can fill most of it.
From November 5, 2026, you won't have to clean them up by hand. By default, inactive deployments on Appwrite Cloud are cleaned up once they're more than 30 days old, and the space goes back to your files and databases. If you want more history, you can keep them for longer, up to a maximum that depends on your plan. Your active deployment always stays.
More room on the Free plan
Old deployments are why many Free plan users run out of storage. Say each deployment of your site is 40MB and you deploy twice a week. After six months, that's about 50 deployments and your whole 2GB. With the cleanup, only the deployments you created in the last 30 days stay: about 9 of them, or roughly 350MB.
On the Free and Education plans, each function or site also keeps only its 100 newest inactive deployments, so a project that deploys many times a day can't pile up hundreds of them within those 30 days.
To see how much space your deployments use today, open your project's Overview page, select Storage, and choose Functions or Sites in the list next to the chart.
What always stays
Two kinds of deployments are never cleaned up, however old they are:
- The active deployment of each function and site, the one serving your traffic.
- Any deployment a custom domain points to, such as a domain pinned to a Git branch.
When an inactive deployment is cleaned up, its preview URL stops working too.
Keep deployments for longer
Today, every function and site is set to Keep deployments forever unless you've changed it. On November 5, those switch to 30 days, and the first cleanup removes every inactive deployment that's already older than that. If you want more history for rollbacks, choose a longer retention period before then.
Open your function or site in the Console and go to Settings > Build > Retention. Turn off Keep deployments forever, choose a Retention period up to your plan's maximum, and click Update.
| Plan | Default | Maximum | Deployments kept |
|---|---|---|---|
| Free | 30 days | 90 days | Newest 100 |
| Education | 30 days | 90 days | Newest 100 |
| Start | 30 days | 3 years | No limit |
| Pro | 30 days | 3 years | No limit |
For a longer or custom policy, talk to our sales team.
If you've already picked a longer period than your plan allows, it drops to your plan's maximum: a Free function set to 1 year keeps 90 days.
A deployment's age counts from the day you created it, not the day it stopped being active. Say your site has run the same deployment for six months. When you push a new one, the old one is already more than 30 days old, so it's cleaned up within about an hour. If you might need it again, download its source code first so you can redeploy it later.
To keep a copy of a deployment's files, download it before it's cleaned up. On the Deployments tab, open the deployment's menu and choose Download > Source code or Build output.
Self-hosted Appwrite
Nothing changes on self-hosted Appwrite. Deployments are kept forever by default, and you can set any retention period you like.
Resources
On November 5, 2026. From then on, inactive deployments more than 30 days old are cleaned up automatically, unless you choose a longer retention period. Self-hosted Appwrite isn't affected.
No. Only inactive deployments are cleaned up. The active deployment of each function and site always stays, however old it is, and so does any deployment a custom domain points to.
Every deployment's code and build count toward your storage, and on the Free plan that's 2GB for your whole organization, shared with your files and databases. Old deployments you'll never use again can take up a big part of it. Cleaning them up after 30 days gives that space back without you doing anything.
Inactive deployments are kept for 30 days by default on every plan. You can choose up to 90 days on the Free and Education plans, and up to 3 years on the Start and Pro plans. On Free and Education, each function or site also keeps only its 100 newest inactive deployments. For a longer or custom policy, our sales team can set one up for you.
Not on Appwrite Cloud. Functions and sites set to keep deployments forever, which is the default today, switch to 30 days on November 5. You can choose a longer retention period up to your plan's maximum, and download any deployment you want to keep a copy of.
From the day you created it, not the day it stopped being active. A deployment that served traffic for six months is already more than 30 days old, so it's cleaned up within about an hour after a newer deployment replaces it. If you might need it again, download its source code first so you can redeploy it later.





