Announcements

Help Wizard

Step 1

NEXT STEP

Implement an actual shuffle function

Yes, you read that right.  The "shuffle" function in Spotify is nothing more than a randomizer.  There's a difference?  YES.

 

RANDOM - Play one song.  The next song can be ANY song in your playlist.  Including the one you just listened to.  Though I've never had this specifically happen, I literally just heard the same song that I heard 2 songs ago.  This is how Spotify's "shuffle" currently functions.

 

SHUFFLE - Take your entire list, shuffle them (like cards), and play the first song in the shuffle.  Once finished, move that song off the pile.  Once the pile is depleted, shuffle the deck again and start over (maybe pop a message up).

 

I know enough about programming (not much) to know that shuffling is probably a bit harder than random, but come on.  I may be in the minority, but I don't have a lot of little playlists.  I have one list with nearly a thousand songs in it, because I like all the music, and am rarely not in the mood for one of those songs.  But what I can't stand is hearing the same song over and over again.  I think there may even be songs in my list I haven't heard yet, while I've heard others 4-5 times.

 

I know it may not matter much, but I would probably lay down the money for at least a year subscription if this feature was implemented.

 

EDIT: Another user pointed out that I can see what all is queued up in my shuffle by clicking the Play Queue link, and that Spotify supposedly sets up a rolling shuffle of 50 songs.  It would be nice if this range could be expanded to say 50-100% of your playlist.

 

EDIT 4/6/12: I just dealt with the same song 16 tracks later.  The song played the first time yesterday afternoon.  I went home, listened for a bit on my home PC (just a few songs), then started listening again this morning.  If the list recycles itself after a day, or if you log in from another computer, I see that as an area for improvement.

Updated: 2016-02-05

Hey folks, we have made some improvements to our shuffle algorithm that we are turning on as a default for all users. We'd love your feedback on how your shuffle experience changes after today (Feb 5, 2016). Thanks for your feedback, your comments are essential to helping us improve Spotify. 

 

Update Aug 2018:

Hi folks, it sounds like quite a few of you are experiencing only the top tracks in a playlist shuffling/ playing when using Connect. This has already been reported here.

 

We’ve given a transparent status there explaining there isn’t a current timeline for a fix. Please do leave a VOTE there if you’re experiencing the issue and a comment. We can then bring this information back internally to show the size of the issue for our users.

 

If however you are experiencing issues with Shuffle when not using Connect, please get back to us in this thread we've the questions we've listed and click +VOTE. Thank you! 



Comments
tbryancooper

Shuffle is so terrible. I sorted a 20,000+ playlist by song title, and after clicking next about 50 times, the only songs it will play are songs that start with the letter "A" or a number. Not random at all. I would like to be able to shuffle my entire library without being stuck in a small subset of my library. 

MatthewTski

Improved Shuffle Logic (Because the current one SUCKS)

 

Let’s say there are 4 artists throughout a 10 song playlist. Artists A1-A4, they have this number of songs:

A1

1 Song

A2

2 Song

A3

3 Song

A4

4 Song

 

To start, each artist is assigned a number, 1-4, and a probability factor of 100% to be chosen at random. The probability factor is calculated by what percentage of the remaining songs in a playlist does this artists songs consist of, so A4s initial probability factor would be 40%.

To ward off back to back plays from high probability factor artists, their probability factor is automatically set to 0% no matter the artist. The next song that might be chosen is the percentage of the playlist that artist comprised of when their song was chosen, so instead of a fair chance at being chosen like other non-chosen songs, it has a percentage of the chance of a song that hasn’t been chosen yet.

 

 

(Though to be quite honest I think if the probability factor was calculated with the number of songs currently in the playlist instead of when that artists song was initially chosen, the results would be a lot more “random”)

 

 

 

 

 

 

 

 

 

 

On the next page is a rough example of how this logic would work.

Playlist Start

(1) A1 - A2 - A3 - A4

A4 is chosen, has 4/10 songs in playlist (40% playlist domination), one is played, now A4 has 3/9 songs (33% playlist domination). A4 has a 0% chance of coming up next in rotation.

(2) A1 - A2 - A3

A2 is chosen, has 2/9 songs in playlist (22% playlist domination), one is played and A2 now has 1/8 songs (12% playlist domination). A2 has a 0% chance of coming up next in rotation.

(3) A1 - A3 - A4 (33% Probability)

A3 is chosen, has 3/8 songs in playlist (37% playlist domination), one is played and A3 now has 2/7 songs (28% playlist domination). A3 has a 0% chance of coming up next in rotation.

(4) A1 - A2 (12% Probability) - A4 (66% Probability)

A4 is chosen, has 3/7 songs in playlist (42% playlist domination), one is played and A3 now has 2/6 songs (28% playlist domination). A3 has a 0% chance of coming up next in rotation.

(5) A1 - A2 (24% Probability) – A3 (28% Probability)

A1 is chosen, has 1/6 songs in playlist (16% playlist domination), one is played and A1 now has 0/5 songs (0% playlist domination). A1 has a 0% chance of coming up next in rotation.

(6) A2 (48% Probability) – A3 (56% Probability) – A4 (33% Probability)

A3 is chosen, has 2/5 songs in playlist (40% playlist domination), one is played and A3 now has 1/4 songs (20% playlist domination). A3 has a 0% chance of coming up next in rotation.

(7) A2 (98% Probability) – A4 (66% Probability)

A2 is chosen, has 1/4 songs in playlist (20% playlist domination), one is played and A2 now has 0/3 songs (0% playlist domination). A2 has a 0% chance of coming up next in rotation.

(8) A3 (20% Probability) – A4 (132% Probability)

A4 is chosen, has 2/3 songs in playlist (66% playlist domination), one is played and A4 now has 1/2 songs (50% playlist domination). A4 has a 0% chance of coming up next in rotation.

(9) A3 (100% Probability)

A3 is chosen, has 1/2 songs in playlist (50% playlist domination), one is played and A3 now has 0/1 songs (0% playlist domination). A3 has a 0% chance of coming up next in rotation.

(10) A4 (100% Probability)

A4 is chosen, has 1/1 songs in playlist (100% playlist domination), one is played and A4 now has 0/1 songs (0% playlist domination). A4 has a 0% chance of coming up next in rotation.

Playlist Stop

 

MatthewTski

So the current shuffle algorithm sucks. I also suck at writing proper algorithms and programming, but I'm alright with logic. So let’s say there are 4 artists throughout a 10 song playlist. Their names are artists A1-A4, they have the following number of songs:

A1 - 1 Song

A2 - 2 Songs

A3 - 3 Songs

A4 - 4 Songs


To start, each artist is assigned a number, 1-4, and a probability factor of 100% to be chosen at random. The probability factor is calculated by what percentage of the remaining songs in a playlist does this artists songs consist of, so A4s initial probability factor would be 40%. 

 

To ward off back to back plays from high probability factor artists, their probability factor is automatically set to 0% no matter the artist. The next song that might be chosen is the percentage of the playlist that artist comprised of when their song was chosen, so instead of a fair chance at being chosen like other non-chosen songs, it has a percentage of the chance of a song that hasn’t been chosen yet.

 

 

Playlist Start

(1) A1 - A2 - A3 - A4

A4 is chosen, has 4/10 songs in playlist (40% playlist domination), one is played, now A4 has 3/9 songs (33% playlist domination). A4 has a 0% chance of coming up next in rotation.

(2) A1 - A2 - A3

A2 is chosen, has 2/9 songs in playlist (22% playlist domination), one is played and A2 now has 1/8 songs (12% playlist domination). A2 has a 0% chance of coming up next in rotation.

(3) A1 - A3 - A4 (33% Probability)

A3 is chosen, has 3/8 songs in playlist (37% playlist domination), one is played and A3 now has 2/7 songs (28% playlist domination). A3 has a 0% chance of coming up next in rotation.

(4) A1 - A2 (12% Probability) - A4 (66% Probability)

A4 is chosen, has 3/7 songs in playlist (42% playlist domination), one is played and A3 now has 2/6 songs (28% playlist domination). A3 has a 0% chance of coming up next in rotation.

(5) A1 - A2 (24% Probability) – A3 (28% Probability)

A1 is chosen, has 1/6 songs in playlist (16% playlist domination), one is played and A1 now has 0/5 songs (0% playlist domination). A1 has a 0% chance of coming up next in rotation.

(6) A2 (48% Probability) – A3 (56% Probability) – A4 (33% Probability)

A3 is chosen, has 2/5 songs in playlist (40% playlist domination), one is played and A3 now has 1/4 songs (20% playlist domination). A3 has a 0% chance of coming up next in rotation.

(7) A2 (98% Probability) – A4 (66% Probability)

A2 is chosen, has 1/4 songs in playlist (20% playlist domination), one is played and A2 now has 0/3 songs (0% playlist domination). A2 has a 0% chance of coming up next in rotation.

(8) A3 (20% Probability) – A4 (132% Probability)

A4 is chosen, has 2/3 songs in playlist (66% playlist domination), one is played and A4 now has 1/2 songs (50% playlist domination). A4 has a 0% chance of coming up next in rotation.

(9) A3 (100% Probability)

A3 is chosen, has 1/2 songs in playlist (50% playlist domination), one is played and A3 now has 0/1 songs (0% playlist domination). A3 has a 0% chance of coming up next in rotation.

(10) A4 (100% Probability)

A4 is chosen, has 1/1 songs in playlist (100% playlist domination), one is played and A4 now has 0/1 songs (0% playlist domination). A4 has a 0% chance of coming up next in rotation.

Playlist Stop

 

Overall, the main function of this is to make it so that the shuffle function, even on smaller playlists, is still more random than it is now. Now you wont get songs that are by the same artist 6 times in a row, then two more times after a couple of songs like I did today! I've been fed up with a looot of the algorithms that Spotify has implemented, but shuffle has been the biggest pain. With this logic (maybe with a bit of tweaking), the shuffle feature might actually be worth a darn!

 

(Though to be quite honest I think if the probability factor was calculated with the number of songs currently in the playlist instead of when that artists song was initially chosen, the results would be a lot more “random”)

rednblu

 

I like it-- Better than the current Spotify fakeShuffle  SamePattern_SamePattern_....

 

I always shuffle my serious playlists

 

       completely outside Spotify

 

by a routine like what you describe-- and >> I never get a repeat unless I request a repeat. <<

elibishop

Yep, I've also done the outisde of Spotify shuffle, but now I just ctrl+click any tracks that are by the same artist, and drag up through the list, dropping them off in random order, and picking up any others I see that are beside each other. I do this until the groupings are distributed into the list, and turn off shuffle. 

3mon
Having to use an external and manual workaround to be able to do this is beyond shameful for an audio player. These guys are conning us, we should totally riot! SMOrc
3mon
Having to use an external and manual workaround to be able to do this is beyond shameful for an audio player. These guys are conning us, we should totally riot! SMOrc
rednblu

Kudos to all who hang in there to make Spotify work acceptably!

 

smallseb

U think I have my premium account for 3 yrs Now and regular since they are on the market or so.

Still recently reactivate my Pandora account because of this very matter. 

It is outrageous that this isn't fixed yet. 

I've tweeted Spotifycares numerous time with no answer (or none that are acceptable) 

Therefore I am sitting here with my VPN connected to us server and loosing patience. 

Maxlovesmusic

TL;DR

But i just made a mixed playlist where i fused 2 playlists. First half the first playlist, second half the second.
Once i hit shuffle it's seems like it still treats it as 2 different playlists.
so i get about 10 songs shuffled from one part, then 10 from the other and barely any mixups.
So upvote for a fix!