- Newest
- Most votes
- Most comments
I ran into this same issue. I shrank an existing postgres rds instance from 1TB to 50GB (a huge drop I know). We confirmed that usage was only about 26 GB so I gave it almost 50% of headroom thinking this was plenty for operations and a considerable cost saving. However, shortly after the storage allocation dropped during the blue green deployment, the logs started showing the panic. Storage autoscaling kicked in after seeing the drop from almost a TB of free storage space to only 23 GB and immediately autoscaled to the max storage capacity (3TB). At the end of this test we had an RDS instance with a storage allocation 3x bigger than where we started.
Many thanks to JP for finding a possible workaround. The moderator response and AI responses to this finding should probably be removed and documentation updated or the bug fixed for this problem.
You're right that there have been challenges with the RDS Blue/Green deployment feature for shrinking storage volumes. This feature was announced in November 2024 for PostgreSQL (v12+), MySQL (v5.7+), and MariaDB (v10.4+).
The issue you're experiencing is related to a specific requirement for storage reduction: the target allocated storage must be at least 20% more than your current storage usage (not your current allocated storage). This means if you're using only a small portion of your allocated storage, you should be able to reduce it significantly, but there's a minimum threshold that must be maintained.
For example, if you have 100GB allocated but are only using 7GB, your minimum target size would need to be at least: 7GB + (7GB × 0.2) = 8.4GB.
Your workaround of disabling storage autoscaling before the Blue/Green deployment and re-enabling it afterward is a good approach. This helps avoid conflicts between the autoscaling settings and the manual storage modification during the Blue/Green process.
If you continue to experience issues where the storage increases instead of decreases, it would be worth checking your exact current storage usage via CloudWatch's FreeStorageSpace metric (which shows values in bytes, while the RDS Console shows storage in GiB). This will help ensure you're setting an appropriate target storage size that meets the 20% buffer requirement.
Sources
RDS Blue/Green deployment does NOT allow shrinking | AWS re:Post
Amazon RDS Blue/Green Deployments support storage volume shrink - AWS
Managing capacity automatically with Amazon RDS storage autoscaling - Amazon Relational Database Service
Your answer is wrong and should be deleted. I know about the 20% buffer requirement. My workaround wouldn't have worked if your answer were correct.
Relevant content
- asked a year ago

It is hard to know for sure without a more concrete example but shrink storage is not an exact api. There needs to be enough head room to be able to move to the target storage. In your case you probably did not meet this requirement. Yes, if you do not want storage to increase you need to disable storage autoscaling. But understand that storage autoscaling is there to prevent running into storage full.