Because it's against their business model.
They want you to subscribe and not come.
No wonder "no contract" chains are growing in some countries.
Less BS for the consumer, even if they have to "pay more" (i.e. the actual cost of the service).
(But yeah in the case where you actually want to pay for a gym membership and not go, those seem optimized for it)