In my opinion best way to compare them is identifying how many cores and storage are available on each service tier using the following query:
SELECT * FROM sys.dm_user_db_resource_governance
For example on eastus region:
- Basic and S0 use one core.
- S4 and S3 use 2 coress
- S6 uses 3 cores
- S7 can use 6 to 12 cores, depending og generation (G4/G5) and zone.
- S9 uses 24 cores
- S12 uses 44 cores
- P1 uses one core with premium storage
- P2 uses 4 cores
- P6 uses 12 cores
- P11 uses 18 cores
- P15 uses 42.
Take in consideration the slo_name column on the query results, that tells you the hardware generation. The query also returns the max storage. You need to run the query on each service tier to better know the compute power available on the region you are located.
Now with that information you can use Azure SQL price calculator and compare vcore and DTU service tiers that have the same compute and storage.