You specify the upper limit for vCPUs in your compute environment. There is no guarantee that it can scale to that, though. Availability of instances in the AZs of the region you've selected, Service Limits or available IP addresses in your subnets could e.g. be a limit in your case.
Have you checked your account's Service Quotas? You will find limits on number of spot requests as well as number of running EC2 instances for instance families in your account. Please find information on how to access to your Service Quotas and how to increase them here: https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html
I take from your description, that you specify the instance family to be either m4 or r4. If your containers are flexible to run on multiple instance types, you should follow AWS' best practices for Spot and diversify the Compute Environment. AWS Batch e.g. offers the 'optimal' preset already, that will choose instances from the m- and c-family.
OS in Batch compute environment suddenly changed?asked 2 years ago
how to delete compute environment that is invalid ?Accepted Answerasked 10 months ago
Does using SPOT_CAPACITY _OPTIMIZED launch spot instances into an auto-scaling group in AWS Batch?asked 3 months ago
Why are so few instances running with my AWS Batch Compute Environment config?asked 6 months ago
Unable to use launch template with AWS Batch Compute EnvironmentAccepted Answerasked a month ago
BEST_FIT_PROGRESSIVE works weird, maxiumum vcpus = 4, gave me 96
Cannot delete Compute Environment, CloudFormation rollback stuckasked 2 years ago
How to use AWS Batch with AWS embedded metrics?asked 3 months ago
AWS Batch limit number of instancesAccepted Answerasked 5 months ago
Managed compute environment, launches m4 instead of m5Accepted Answer