I have extensively used both Alexa, Google Assistant and Siri Smart Speakers, there are multiple things you need to consider. What exactly are you using your smart speaker for, lets see which speaker is best in each category. Buy a smart speaker that is compatible with all your smart devices at your home.
For example, in the same house, one will be Iphone user and the other will be android user, if you buy smart speaker that is compitable with only Iphone or Android. It may not be flexible to everyone.
We recommend the following speakers.
Sonos One has inbuilt Alexa and Google Assistant and you can control all your home while seamlessly connect your smart speaker to your TV, mobile and you can extend this speaker as a multi room speaker. If you want best sound with smart speaker. Then go for Sonos One.
If you want to control your smart devices with your voice that is all you want to do, then I recommend Nest Mini, it catches even though you are very far from the speaker, and you can also extend this multiroom and you can call each other using this smart speaker. And you can also make announcements to all the rooms, something like hey Google, Announce everyone Lunch is ready.
if you are non English speaker, it can catch pretty good your accent than other voice assistant Siri and Alexa.
When compared with Voice assistant between google and Alexa. Google assistant out performs in many aspects, especially in detecting your accent. But Alexa has more capabilities than google assistant. For example, I am connecting fire stick to my monitor and my monitor doesnt have a speaker and I connected my fire tv to Echo dot and it works perfectly and when I turn on the TV, my fire stick automatically connects back to my speaker but Nest Mini does not do that. I tried with google TV stick as well, Echo dot out performed. I just ask. Hey alexa connect to my bedroom tv and it just connects like that. If you have such requirements go for Echo Dot