If you're using AWS entirely, it's smooth sailing. But with a mixed stack, things get complicated.
With a mixed stack, things become a problem. With GCP and Azure, the DNS setup gets tricky when using CloudFront. With AWS, it's smooth and streamlined. Their GUI provides all the details and is very easy to navigate.
The challenge starts to occur because AWS gives you only one DNS endpoint for the entire service. This single endpoint covers your CDN, AWS server, and domain migration needs.
If you use any other solution like GCP or Azure, you face additional configuration changes and account management. You need separate accounts for AWS CloudFront and your chosen platform, like GCP. This means securing and managing two separate accounts – an extra responsibility.
With Cloudflare, you just need one account and pay for it. Managing the complex DNS details isn't your burden. However, on the flip side, CloudFront might require more hands-on management on your part.