If you are reading this then you most likely are already familiar with each device in general. You may have also researched other similar articles. I'm going to try and not repeat a lot of what others have said. I'll give you my opinion after having both devices and using them both.
First off, they are both voice activated assistants residing in a hardware profile that is generally unassuming. Both respond well and can do similar basic functions like a shopping list, listen to music via Pandora, Spotify or their own music systems like Google Music or Amazon Prime. Let's get down to the real differences.
The Echo comes it 3 different footprints from the Dot, to the Tap to the full Echo. The Dot (as of 4/25/2017) is 49.99. The Tap is 129.99 and the full Echo is 179.99. Each has their strengths and weaknesses. The Tap doesn't have voice activation and is portable, the Dot has a small bare bones speaker and the full Echo has a good speaker and microphone array. Most of my customers tend to get on full Echo and then augment other rooms with the Dot.
Google has one choice. It's $130. It does have the option of coming with multiple colors however. Both are unobtrusive.
This is a factor if you are going to place several devices in a home. You can get 3 Dots for a price just slightly over the cost of one Google Home. Most of my customers tend to place one in the living room, one in the kitchen, and one in a bedroom, but that will vary depending on your household needs.
Comparing Google Home vs the full Echo is fairly close. Both produce good sound with the Home having more bass, but projects sound mostly to the front. The Echo produces sound omni-directional but is weak on the bass. The Tap is similar to the full Echo and the Dot has a built in speaker that sounds like the quality one would expect from an OK clock radio. However, it can connect via bluetooth or a standard AUX port to other speakers.
SKILLS or SERVICES?
Lots of other comparison articles base this area on the sheer number of skills available. Yes, Amazon has thousands of more skills than does Google at this point in time, but it's irrelevant.
99% of the skills on both platforms are crap. The couple of dozen of really useful ones are available on both platforms. In reality, you aren't going to be activating thousands of skills. After 10 or so you begin to forget the activation words so you tend to stick with the good ones that are useful for your day to day actions.
The Echo can be activated by four different command words. "Alexa", "Amazon", "Computer", or "Echo". You can name each Echo device differently if you choose. Even if you do name them all the same they have the built in ability to tell which one is closest to your voice and only that one will respond.
Google Home will respond to "Ok, Google" or "Hey Google". Many Android phone users have discovered that saying "OK, Google" often triggers the Assistant on their phone as well and it is a problem for many.
This one spot where I think Google is falling a bit behind here. Part of the appeal of a virtual assistant is the ability to personalize...even anthropomorphize it. Alexa has a voice and even a bit of a personality. Apple didn't call Siri "Apple". They gave it a name. Google Home comes across a bit colder in this aspect. The first one that let's us choose our own unique name will make a leap in customization.
Both devices are fairly sensitive and don't require yelling. Unless, of course, you told it to crank up the volume all the way to 11....
Let's be honest. Both apps reek of the best user interface design by a hard core software engineer who doesn't like to deal with people. In other words, they both suck. On a 1 to 10 scale I'd give the Alexa App a 4 and the Google Home a 3.5. For comparison I rate IKEA furniture assembly instructions a solid 5.
Alexa is slow to launch, but it's simplistic menu is relatively easy to figure out what you want to do. If you want to add a smart home device you hit the Smart Home tab and go from there.
Google's "Home" app opens quickly. Navigation after that clearly shows the UI is designed based on the class structure of the underlying code. By that, I mean it is clear the engineer designed the UI around how they structured the software code in the app rather than how an actual human would use the app. For example, there are two areas where things are called "Devices", but in one area (Home Control) it refers to smart devices that are NOT Google Home and in the other area "Devices" it refers to ONLY Google Home devices.
Adding Skills in the Echo is pretty straight forward and an easy to reach Skills button takes you right there. On the Google Home you have to go to Menu->More Settings->Services. They need to float that Services button up to the main menu.
How well do each of them function as an interface into the modern smart home? A month ago Echo had this battle won hands down. Today, Google has caught up.
Both work with popular devices like Nest, Philips Hue, Wink, Wemo,
SmartThings and others. However, from my own personal experience Google Home seems to perform functions like turning lights on or off faster than the Echo. I've test this on the same network, same lights and both devices connected to the light and the Home is clearly faster.
Both devices handle simple requests like measurement conversion or simple math problems, weather forecasts and news briefing of top headlines. On general searching for information Google Home is better. It should be as it is powered by the powerful Google Search engine. Clear advantage for them here. Google does a better job of traffic reporting as you need only state where it is you want to go. The Echo requires you to login to the app and set a single address.
Google can also cast music and video to any Chromecast device. That is cool, but if you are not a big Chromecast user you won't care. Amazon comes close with the Firestick but it isn't quite the same process, especially on ease of use on the casting feature of Home.
One glaring problem on Google Home that boggles my mind is the inability to add an appointment on my Google Calendar or read my GMail account. Especially since this exists in its Google Assistant. Also especially since the Echo has had both of these for nearly 2 years now. Google also took forever in adding multi-user support. Welcome to 2015 Google!
If you want the convenience of shopping by voice the Echo is the only option. It's backed by Amazon.com so it should be a smooth experience. There are often deals on items when ordered through Alexa you don't even get on the Amazon.com website.
SO WHICH IS BETTER?
I have to give the worst answer in the world. It depends. Both do the basics well enough as to be indistinguishable.
If you are price sensitive the Echo offers more value choices and options.
If you are die hard Google and Android user the Home is going to be the product for you. It does better general searching, but still doesn't do everything it should in that area.
The Echo had the advantage on Smart Home integration, but that lead has all but disappeared.
It boils down to the more esoteric aspects of the devices. The Echo seems more of a personable device whereas the Home seems more like a robotic tool. That may not matter to many. Some will like the design of the Home over the Echo. Others will have an opposite opinion or not care.
Both systems are incredibly easy to get used to using. Voice is our most natural method of interfacing and having devices that give action to those voices just fits right.