AWS supports the concept of "normalised units", which is effectively the small instance size for EC2 or the small Single-AZ instance size for RDS. Personally I would find very helpful to quote pricing in normalised unit, especially for those resources which are size flexible.
So the price for regular linux t2 us-east-1, for example, is effectively the price for regular linux t2.small us-east-1. However, the price for a regular linux m5 us-east-1 is less obvious as the corresponding small instance size is NOT being made available by AWS.
This can be derived by taking the price of a different instance size and applying the corresponding normalisation factor, e.g. regular linux m5 us-east-1 is effectively the price for regular linux m5.large us-east-1 divided by 4 (4 x small = 1 x large). Note AWS pricing doesn't always scale up perfectly with size, so it's important to follow a convention as to which instance size should be used to derive such normalised price when small is NOT available. My preference would be to use the size which is closest to small.
Example 1: For regular linux g3 us-west-2, the closest instance size to small is 4xlarge: let's take the 1Y NUF STD price for regular linux g3.4xlarge us-west-2 which is $0.778. This means that the corresponding price for regular linux g3 us-west-2 would be $0.778/32 = $0.0243125.
Example 2: For postgresql db.r4 us-west-2, the closest instance size to small is large: let's take the 1Y NUF STD price for postgresql db.r4.large us-west-2SingleAZ which is $0.144. This means that the price for 1Y NUF STD postgresql db.r4 us-west-2 would be $0.144/4 = $0.036.
AWS supports the concept of "normalised units", which is effectively the small instance size for EC2 or the small Single-AZ instance size for RDS. Personally I would find very helpful to quote pricing in normalised unit, especially for those resources which are size flexible.
So the price for regular linux t2 us-east-1, for example, is effectively the price for regular linux t2.small us-east-1. However, the price for a regular linux m5 us-east-1 is less obvious as the corresponding small instance size is NOT being made available by AWS.
This can be derived by taking the price of a different instance size and applying the corresponding normalisation factor, e.g. regular linux m5 us-east-1 is effectively the price for regular linux m5.large us-east-1 divided by 4 (4 x small = 1 x large). Note AWS pricing doesn't always scale up perfectly with size, so it's important to follow a convention as to which instance size should be used to derive such normalised price when small is NOT available. My preference would be to use the size which is closest to small.
Example 1: For regular linux g3 us-west-2, the closest instance size to small is 4xlarge: let's take the 1Y NUF STD price for regular linux g3.4xlarge us-west-2 which is $0.778. This means that the corresponding price for regular linux g3 us-west-2 would be $0.778/32 = $0.0243125.
Example 2: For postgresql db.r4 us-west-2, the closest instance size to small is large: let's take the 1Y NUF STD price for postgresql db.r4.large us-west-2SingleAZ which is $0.144. This means that the price for 1Y NUF STD postgresql db.r4 us-west-2 would be $0.144/4 = $0.036.