There is a huge difference between deleting data and stopping running services.

You're right in that there's a few services that expose this complexity directly, the ones where you're paying for actual storage, but this is just complex, not impossible.

For one thing, storage costs are almost always static for the period, they don't scale to infinite in the same way.

If it’s a web server, sure. But if you drop data because you’re no longer processing it, or you need to do an expensive backfill on an ETL, then turning off compute is effectively the same as deleting data