Having used both, I'd say that AWS has a lot more "stuff" (services) and they tend to be more scalable and practical. Google tends to create fewer services that are (generally) rock-solid with some gems like BigQuery.
Fun Anecdote time:
6 months ago I needed 100 GPU machines for a bunch of batch processing.
I called my Google rep and contacted AWS and Azure at the same time.
Google struggled to give me enough instances and was only able to provide 10 at the time, with more on the way in other regions...
However, their GCE wouldn't let me create an autoscaling group with GPU instances. Their tooling simply didn't support it. After much hassling their support centers, my rep informed me they simply didn't support it yet, and he recommended I use AWS.
Azure never responded to my inquiries. Their UI and tooling is pretty lame too, and the service is expensive.
AWS increased my quota quickly and it worked great. Their support tends to be responsive if brief and biased towards making the problem go away by giving you what you want.