That is if the number of Internet users don't grow and since it is so easy to spin up an instance even for just $5 a month these days, many people are rather willing to spin up more than they would have physically to use more IPv4 addresses.
But seeing how attaching an extra IP to an instance is so cheap everywhere, it seems there's no immediate threat to lack of address spaces but I'd like to know about a proper research.
The other thing is Docker and Kubernetes are not supporting IPv6 today so that definitely locks a lot of the more modern cloud deployments to IPv4, even if it's S2S communication which could have been IPv6 only (since you would control both ends) otherwise... so that's another thing.
However, new network layer technologies like "Layer-3 all the way to the server" are allowing providers to use their entire IPv4 allocation by having BGP pushing /32 routes internally and this has been the biggest helper in my opinion, no longer do you have a static /24 allocation and a bunch of dead space that can't be freed easily.
Of course people who are new to OPs/Dev haven't really seen this much- but I would probably venture more than 50% of ipv4 space is locked into allocations that are mostly empty.
-- I also think there is still an increasing population of internet users and VPS/Cloud providers give a cheap and easy way to be online too.. $5 for a VPS in most cases.
Nothing but the external entry points in a cloud need to be publicly accessible IPv4.