In many countries, it’s common to have hundreds, even thousands of customers behind a single carrier-level CGNAT. This obviously prevents a lot of functionality from working.
In Germany, we’ve got enough IPv4s that every customer can have their own one, while e.g. in Asia CGNAT and IPv6 are long common.