Packages currently do not have the capability to vary their capacities/credits based on the number of given days in a calendar month but there are a number of ways to cater for this.
Consider using courses each month instead of packages. This can work in cases where your customers would be booking the same class each week or you were selling block of an individual class each month - eg. Monday 6pm Pilates. This would give you complete control over the number of sessions and pricing of each month's block/course as you create it.
Switching your membership payment intervals from monthly to 4 weekly would eliminate these variations and keep your admin simple. You could also adapt this same method by taking monthly payments offline, for example by recurring bank transfer, and gifting a membership with a 4 weekly interval. That way their credits would reset on the interval of weeks but you would still be maintaining the receipt of payments monthly and can set up the full term of the membership to match (eg. a membership with a 6 month term and 4 week intervals).
To maintain the automation of everything and payments through Gymcatch you could create your package with 5 available credits per month and clearly state in the terms of the package that the credits can only be used for the specific class or day so that when there are only 4 in the month there is 1 credit that expires on the package and in a month of 5 they have all the credits they need.
You may also be interested in: