Autoscaling where primary and scaled instance types are different

What is Autoscale behaviour with the primary instance being a different type than the scaled instance (or a mixed set of instance types). E.g Primary Instance is with 4vCPU and 8GB and scaled up instance is 2vCPU and 4GB, How it decides scaling and on what instance base it decides that now its time to scale.
Also is Autoscale intelligent enough to recognize instance type?

It can be, check out instance weighting:

Just remember that if you do use weighting, the asg capacity is in weighted units (not instances), as caught out one of our teams, that only had a single instance

Btw scaling polices of e.g CPU Utilization, this applies on ASG or Instance?
Like if my scaling policy is to scale up another instance when CPU utilization is 70% so is this 70% of ASG or 70% of Instance?
It’s the average across the instances in the ASG

Thanks, also there is no way to set weighting from console right?

Under the ASG and Instance Type Requirements

We configure with cloudformation, but you can also manage in the console.