Alexa + Sonos: How it Works


Userlevel 7
Badge +26
  • Retired Sonos Staff
  • 12372 replies
So you’ve read all about Amazon Alexa working with Sonos and you want to know more. Here’s a rundown of how the integration works.

Your Amazon Alexa devices are listening for you to say the wake word, “Alexa”. When they hear that word, the microphones record what you say and send the audio to the Amazon Alexa cloud to be translated.

That voice line turns into a string of text. The Amazon protocols determine if it’s meant for Amazon Alexa or for a Sonos player. If it’s for Sonos, that text is then sent directly, and securely, over to the Sonos cloud to be turned into a command using our own codes.

Finally, the Sonos intended command goes down to the system.

Want to try it out?

Here are some fun commands to try. I like starting with:

“Alexa, play some salsa in the kitchen.”

This topic has been closed for further comments. You can use the search bar to find a similar topic, or create a new one by clicking Create Topic at the top of the page.

179 replies

Userlevel 2
It's a bummer that none of this works with my local music library. If all this does is allow you to tell Sonos to play the same streaming sources that Alexa can already play natively, what's the point of going with Sonos instead of simply connecting your Echo Dot to some nice speakers?
Userlevel 7
Badge +26
+1 on the 'Stop Playing" bug. Alexa wont stop playing music on a Sonos player even though she was able to start it.
Alexa might not be hearing the room name right, so make sure that it's picking up the one you want. For troubleshooting, try some of the suggestions here. What command are you using? Word for word is really important.

If I ask Alexa to start playing music in the bedroom all the Sonos speakers will play. Should it be possible to just start playing on one speaker or do I need to group/ungroup in the app before giving the play command?
It'll start playing in all the rooms that are grouped with that player. If you just want to play in that room, you'll need to separate the group out. We'd love to add some grouping features one day, so stay tuned. The skill will get better and have more features over time.

I'm unable to enable the Alexa skill. Despite going through the Amazon and then Sonos dognon pages it still doesnt appear as an enabke skill. Any ideas?
Just making sure, you were able to find the Sonos skill in the Alexa app, right? Once that's done, you need to log in with your Amazon account, then your Sonos account. Once that's done, just discover devices.

Where are you located? Are you in the US, UK or Germany?

Been waiting a long time for this - it's really great! My question for someone in the know:

I can enable two rooms to play from Pandora if I ask Alexa separately, i.e., one at a time. Is there something I'm missing to play in each room with just one command?

Already answered this above, but for now you'll need to target each room individually, or use the Sonos app to group them together.
Userlevel 2
Badge +1
I'm confused. I have the newer play5s. Both grouped as Living Room. I updated my app. I updated my Sonos system. I even scanned devices in Alexa app (but not sure if Sonos should show up there or not (it does not). I say things like "Alexa, play jazz in the living room" and she says things like "I cannot do that in the living room" and other versions of "no".

I have Hue bulbs that are grouped as Living Room too. Any ideas what I should be saying? How I should be saying it? Or why I am having problems?


My rooms show up as devices in Alexa app after scanning. You have to search for the sonos skill (and sort by release date, because searching will pull up a lot of non-official apps) to add the skill to your Alexa before searching.
I'm confused. I have the newer play5s. Both grouped as Living Room. I updated my app. I updated my Sonos system. I even scanned devices in Alexa app (but not sure if Sonos should show up there or not (it does not). I say things like "Alexa, play jazz in the living room" and she says things like "I cannot do that in the living room" and other versions of "no".

I have Hue bulbs that are grouped as Living Room too. Any ideas what I should be saying? How I should be saying it? Or why I am having problems?


More than likely it is defaulting to the bulbs. Name the bulbs "Living Room Lights" or something similar (or name the Sonos "Living Room Sonos".


I renamed the sonos pair to Couch. I have nothing else with Couch in the title. I say "Alexa play classical music on the Couch. (I also tried remove the "the" and just said Couch."

It does not work. She tries to play stuff on her own speaker.

It would really help if they had provided more info. I feel like I have no idea how to set this up or how to request from Alexa to play on Sonos.
I'm confused. I have the newer play5s. Both grouped as Living Room. I updated my app. I updated my Sonos system. I even scanned devices in Alexa app (but not sure if Sonos should show up there or not (it does not). I say things like "Alexa, play jazz in the living room" and she says things like "I cannot do that in the living room" and other versions of "no".

I have Hue bulbs that are grouped as Living Room too. Any ideas what I should be saying? How I should be saying it? Or why I am having problems?


My rooms show up in Alexa app after scanning. You have to search for the sonos skill (and sort by release date) to add the skill to your Alexa before searching.


Ahh. this may be it. I had no idea there was a skill involved in this case. Thanks.
Userlevel 7
Badge +26
I'm confused. I have the newer play5s. Both grouped as Living Room. I updated my app. I updated my Sonos system. I even scanned devices in Alexa app (but not sure if Sonos should show up there or not (it does not). I say things like "Alexa, play jazz in the living room" and she says things like "I cannot do that in the living room" and other versions of "no".

I have Hue bulbs that are grouped as Living Room too. Any ideas what I should be saying? How I should be saying it? Or why I am having problems?


More than likely it is defaulting to the bulbs. Name the bulbs "Living Room Lights" or something similar (or name the Sonos "Living Room Sonos".


I renamed the sonos pair to Couch. I have nothing else with Couch in the title. I say "Alexa play classical music on the Couch. (I also tried remove the "the" and just said Couch."

It does not work. She tries to play stuff on her own speaker.

It would really help if they had provided more info. I feel like I have no idea how to set this up or how to request from Alexa to play on Sonos.

Make sure you discover devices again after you change the name of Sonos or the names of the lights. That should solve the issue though.
Userlevel 7
Badge +26
It's a bummer that none of this works with my local music library. If all this does is allow you to tell Sonos to play the same streaming sources that Alexa can already play natively, what's the point of going with Sonos instead of simply connecting your Echo Dot to some nice speakers?
You can still use Alexa for controlling music that's already playing on Sonos, no matter the source. That includes volume commands, and starting/stopping. If you have a playlist in your Queue from anywhere, tell the Sonos player to play and it'll start up.
Ok. so after adding skill and scanning. If I say "Alexa, play jazz on Couch" it plays jazz on Alexa. But if I say. Alexa, play Music on Couch" it plays music on Sonos. So what should I be saying to have some... ANY control on what I hear on Sonos right now? 🙂
Userlevel 2
I was hoping you'd put something like this:

https://github.com/rgraciano/echo-sonos

On the devices themselves.
Userlevel 2
Badge +1
Ok. so after adding skill and scanning. If I say "Alexa, play jazz on Couch" it plays jazz on Alexa. But if I say. Alexa, play Music on Couch" it plays music on Sonos. So what should I be saying to have some... ANY control on what I hear on Sonos right now? :)

Here are all of the commands, you can see the general syntax you need to speak in order to control Sonos through alexa:

https://support.sonos.com/s/article/3514

I'm unable to enable the Alexa skill. Despite going through the Amazon and then Sonos dognon pages it still doesnt appear as an enabke skill. Any ideas?
Just making sure, you were able to find the Sonos skill in the Alexa app, right? Once that's done, you need to log in with your Amazon account, then your Sonos account. Once that's done, just discover devices.

Where are you located? Are you in the US, UK or Germany?


Yea I can find it alright. Click enable. It takes me to api.sonos.com, hit continue, tells me about the permissions that Alexa needs, hit OK. Takes me to na.account.amazon.com, click Continue and it takes me straight back to the Alexa app but the Skill is not shown in my skills. Im in the UK
3 Questions:

Is there an Alexa command to have Sonos "TV" audio play?
Is it possible to tell Alexa to play the same music/song/playlist in multiple rooms or "all"?
Is it possible to tell Alexa to play a *Sonos* playlist?
Userlevel 7
Badge +26
Ok. so after adding skill and scanning. If I say "Alexa, play jazz on Couch" it plays jazz on Alexa. But if I say. Alexa, play Music on Couch" it plays music on Sonos. So what should I be saying to have some... ANY control on what I hear on Sonos right now? :)

Here are all of the commands, you can see the general syntax you need to speak in order to control Sonos through alexa:

https://support.sonos.com/s/article/3514

Also, sometimes Alexa has trouble with the occasional room name. So you could try a different name and see if that works better. Make sure you re-discover devices after changing names.
Userlevel 7
Badge +26
3 Questions:

Is there an Alexa command to have Sonos "TV" audio play?
Is it possible to tell Alexa to play the same music/song/playlist in multiple rooms or "all"?
Is it possible to tell Alexa to play a *Sonos* playlist?


1. No. Alexa doesn't understand that your player has a TV input right now.
2. Not yet, but we'd love to add that one day.
3. Nope. Again, something we'd like to see for the future. Alexa doesn't have direct access right now to your favorites or library.
Userlevel 7
Badge +26

I'm unable to enable the Alexa skill. Despite going through the Amazon and then Sonos dognon pages it still doesnt appear as an enabke skill. Any ideas?
Just making sure, you were able to find the Sonos skill in the Alexa app, right? Once that's done, you need to log in with your Amazon account, then your Sonos account. Once that's done, just discover devices.

Where are you located? Are you in the US, UK or Germany?


Yea I can find it alright. Click enable. It takes me to api.sonos.com, hit continue, tells me about the permissions that Alexa needs, hit OK. Takes me to na.account.amazon.com, click Continue and it takes me straight back to the Alexa app but the Skill is not shown in my skills. Im in the UK

That's a tricky one. I'd say your best way to go is to give us a call on our support line. We'll take a look with you. You might want to try using a different device with the Alexa app if you have one you could try out.
3 Questions:

Is there an Alexa command to have Sonos "TV" audio play?
Is it possible to tell Alexa to play the same music/song/playlist in multiple rooms or "all"?
Is it possible to tell Alexa to play a *Sonos* playlist?


1. No. Alexa doesn't understand that your player has a TV input right now.
2. Not yet, but we'd love to add that one day.
3. Nope. Again, something we'd like to see for the future. Alexa doesn't have direct access right now to your favorites or library.


#1 is really unfortunate. The main thing I do is swap between TV and Music/Live Radio audio on my Sonos speakers.
I hope that comes in a future update.

Glad to see my employer, iHeartRadio is there and that feature works really well. 🙂
Userlevel 4
Badge +3
It's a bummer that none of this works with my local music library. If all this does is allow you to tell Sonos to play the same streaming sources that Alexa can already play natively, what's the point of going with Sonos instead of simply connecting your Echo Dot to some nice speakers?
You can still use Alexa for controlling music that's already playing on Sonos, no matter the source. That includes volume commands, and starting/stopping. If you have a playlist in your Queue from anywhere, tell the Sonos player to play and it'll start up.
Userlevel 4
Badge +3
Are you kddding me!!! So you are saying Alexa only works if you are signed up with an online streaming service! I waited 18 months to be told that! What is the point? Unbelievable. I have my own local collection of music precisely because I don't want an online steaming service
Are you kddding me!!! So you are saying Alexa only works if you are signed up with an online streaming service! I waited 18 months to be told that! What is the point? Unbelievable. I have my own local collection of music precisely because I don't want an online steaming service


Why can't you just upload your local music to say Amazon or Google Play? You can do that for free. Then just stream that way? Like, you can upload all of your content and control it once it's in their cloud.
I'm confused. I have the newer play5s. Both grouped as Living Room. I updated my app. I updated my Sonos system. I even scanned devices in Alexa app (but not sure if Sonos should show up there or not (it does not). I say things like "Alexa, play jazz in the living room" and she says things like "I cannot do that in the living room" and other versions of "no".

I have Hue bulbs that are grouped as Living Room too. Any ideas what I should be saying? How I should be saying it? Or why I am having problems?


More than likely it is defaulting to the bulbs. Name the bulbs "Living Room Lights" or something similar (or name the Sonos "Living Room Sonos".


I had the very same problem... had to rename the bulbs. Thanks!
It sounds to me as if Alexa doesn't pass 'search' commands to the Sonos cloud. It only passes exact commands if that makes sense.

In other words, if you say 'Alexa, play Tom Petty". Alexa will see that you Tom Petty Songs in your Amazon library, then tell Sonos to play Tom Petty songs from your Amazon library. On the other hand, if you want to don't have Amazon Prime, but have Tom Petty in your NAS library, Alexa doesn't know this, so can't tell Sonos what to do (even though Sonos would know what to do if you searched on the Sonos app)

That makes me think that there are, or will be, some more 'stated' features, that the interface isn't completely stateless.
Userlevel 1
It's a bummer that none of this works with my local music library. If all this does is allow you to tell Sonos to play the same streaming sources that Alexa can already play natively, what's the point of going with Sonos instead of simply connecting your Echo Dot to some nice speakers?

This is so disappointing - I live in an area with exceptionally poor internet bandwidth and usage caps and while I can use Alexa fine in my home for other things streaming even music is impossible so have a large local library to make up for this. Are they no plans even for this in the future?
Userlevel 4
It's a bummer that none of this works with my local music library. If all this does is allow you to tell Sonos to play the same streaming sources that Alexa can already play natively, what's the point of going with Sonos instead of simply connecting your Echo Dot to some nice speakers?

Limiting it to only music Alexa directly knows about makes this the most disappointing introduction of a much-anticipated feature of all time. Seems Alexa isn't really talking to the whole Sonos platform.

The major value of Sonos to me is that it is service-agnostic, so this sucks. My Sonos library is searchable via an API - that's how the client does it. This direction won't really be useful to me until Alexa can be like a full client, with search and control of playback of my library, playlists etc.
Userlevel 1

Alexa doesn't have direct connection to the stuff on your local player, like playlists and favorites, though it can change the play state. So if you start a playlist from your Sonos app, or have it in the queue, you can use the "Alexa, play on..." command to start the music, or use Alexa to change the tracks.
Yikes! That makes it pretty much useless for me. I have a great music library, and as a Canadian, I can't use Amazon Music or many other streaming services with Alexa yet.
Will this be available in the future? For me that's the beauty of Sonos, the way it handles the local music library. I can stream crappy sounding content on anything, my Sonos system is all about good quality sound from my collection.
Userlevel 7
Badge +26
Will this be available in the future? For me that's the beauty of Sonos, the way it handles the local music library. I can stream crappy sounding content on anything, my Sonos system is all about good quality sound from my collection.
The skill is going to improve over time, but we don't have full details to share on what's up next. We're adding support for Spotify soon though.

You can use Alexa to start playing from Amazon Music, Amazon Music Unlimited, Pandora, iHeartRadio, SiriusXM, TuneIn Radio, and we’re working to bring Spotify controls in the future too.

Also, any Alexa device on your account can use basic controls, such as play, pause, volume, and skip, on your Sonos players. This works for all services and music on Sonos, started through the Sonos app.