This is now how lambda works. A lambda instance sticks around for 10s of minutes at most. So you'll have cold starts every day no matter how often you deploy.
If you have very little traffic you might actually have cold starts often as the lifetime of a lambda is determined based on its use.
Unfortunately AWS has always been rather unspecific about this behavior but here's a link to a pluralsight blog https://www.pluralsight.com/resources/blog/cloud/how-long-do...
When a lambda is invocated, that docker container isn’t immediately destroyed. It’s kept around for reuse.
So there isn’t a realistic scenario where you would get a million cold starts in a month.
Lambda is far more economic given the memory requirements, but we recently moved to Rust+Candle to shave off ~300ms on cold starts as the lag could be really jarring.