Say you have songs A, B, C, D, E.

The music player being used has song shuffle turned on.

The first song that comes on is Song A. After that song ends Song D comes on. The user hits back and Song A starts playing again. When that song is over what song does the user expect to come on next?

If the app shuffles songs once at the beginning then the next song would still be Song D.

If the app shuffles every time it goes to the next song then it would be shuffled to any song other than Song A.

In practice I've seen big players like Apple Music seem to only shuffle once, so hitting back and then forward will be the same song every time. But to me that doesn't seem truly randomly shuffled. How does the average user expect this scenario to be implemented?

  • Basically, use the Spotify shuffle for a bit, then do the exact opposite. (Spotify has one of the worst shuffle implementations I've ever seen).
    – SnakeDoc
    Aug 21, 2015 at 22:37
  • I would basically never use any sort of shuffle, because the music I tend to listen to (16 Bit Lolitas, Kaskade) often has the entire album flow as one long track. Shuffle would be like putting steak in a blender. Unfortunately, my phone does not respect the correct order of tracks even with shuffle turned off, and I can't usually find the option to disable it. This makes the phone basically useless for stored music. But yes, it goes back and forth in the same sequence, as you asked about. Not sure where it got the sequence from, or if it would be the same tomorrow. Hate. Hate. Seething hate.
    – user67695
    Jan 31, 2017 at 20:05
  • Hmm, it appears that Windows removed the "no sort" alternative from File Explorer at some point. So, when I copy music folders to my phone, the files (tracks) can't stay "in the order they were", they must be sorted somehow, and the default is Alphabetical. Well, that is just peachy. Great idea, Microsoft! You broke Android with your 'improvements'.
    – user67695
    Feb 1, 2017 at 15:30

2 Answers 2


The most common implementation I know of uses both of the shuffle models you describe.

The first, "Shuffle-as-action." If I am looking at a set of songs (library, playlist, album, etc...), and hit shuffle before I choose what to play, the app will arrange the songs of that set in a random order, start playing the first track, and then present them to me in a queue. At this point, all shuffling action stops - I can edit and move back and forth through the queue with no 'random' behavior.

The second is "shuffle-as-mode." If I am already listening to one of the tracks in an album for example, and click the shuffle icon by the play button, the player will 'randomly' not re-order the album, but will 'randomly' select an unplayed track each time the current track ends or is skipped. Here, the random behavior is persistent, as is the original order of the album. Turning off random mode will just end this random behavior.

Technically, there is little difference between these two kinds of shuffling, but the cater to different mental models. The first is "build me a random playlist" and the second is "play something random after this song." There is an appropriate place to use both.

Example:enter image description here

  • +1 I hadn't considered "shuffle as mode." How would the app differentiate between the two modes though?
    – Oztaco
    Aug 21, 2015 at 17:17
  • +1 - I guess I had never looked close enough to see that there were really two different modes behind that shuffle button. Doesn't really seem intuitive though, seems like a case of giving two different functionalities the same icon.
    – DasBeasto
    Aug 21, 2015 at 17:20
  • 1
    I think placement helps here. I edited my answer with an example - the shuffle-as-action button is located with the album, and the shuffle-as-mode button is located with the play controls. You are right, though, it is not ideal to have the same icon act in different ways. Aug 21, 2015 at 17:57

You should keep it consistent and only shuffle it once. If the playlist ends and starts from the beginning, or if the user hits shuffle again it should reshuffle the songs. This is what most major music players do in my experience.

There are 3 possible reasons that come to mind for doing this:

  1. If the user skips back a few times, then skips forward to find a song they liked, the song will be gone and that'll be frustrating.
  2. What if the user has listened to all of the songs but 1 or 2? When you hit next, does it play one of those two songs, or does it pick the next song out of all the songs? Logic says it should be one of those two, but if you hit back and hit next again the same song could play since there are only 1 or 2 songs left. So it's better to always play the same song and keep things consistent.
  3. If you want to display the shuffled songs in a list, then you must only shuffle them once, otherwise the reshuffling of the songs on the display would be jarring.

You can read more about this at this question

  • Good points, I hadn't considered #3 and I figured #2 was simply taken care of by implementing a list of already played songs. That other question is interesting though as he seems to be referring to the playlist being the same shuffle every time he starts the application which I have never noticed. Mine seems to only persist over the same session.
    – DasBeasto
    Aug 21, 2015 at 16:59
  • For #2, what could be confusing for the user is if they move back a few songs, would the songs later in the queue be reshuffled? You could do something like if you get to the bottom of the list it adds a few random songs to the list, but going back and forth still plays the same songs. Yes I haven't had that problem either, but the answer to that question has a great explanation that's relevant to this one.
    – Oztaco
    Aug 21, 2015 at 17:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.