Dual stack (run both and try to use v6 first) and NAT64 (run IPv6 only and NAT to v4 at the edge) are the main methods today. The former is more common inside homes/enterprises while the latter is more common in modern large carrier networks such as mobile phones since the alternative would be to CGNAT (double NAT) anyways and that creates more problems for clients than NAT64 (+more work to deploy).
Not to say CGNAT is unheard of, particularly if the network was large, old, and needed to expand.