I have around 250 presets. So.... All of them are basically variations on my main core sound. The main settings: distortion, amp/cab, light delay, solo EQ all stay the same. Every song preset that I create has some kind of a quirk, or a unique signature thing. So I start with browsing through the previous presets, pick the one that suits me and tweak.
Like for example, I know that preset number 076 has a nice acoustic guitar sound, and preset number 2 in another playlist has that awesome envelope filter. So I go and combine them, copy blocks/paste blocks. It's so convenient! Because for example the envelope filter is so finicky! It works for one song but doesn't work for another, unless I change the setting slightly. I may want to dress up my lead sound with some vintage fuzz in this one 70's song. I may want to add some kind of a synthesizer solo for this other song. Every song has different rhythm, dynamics, and even the same lead sound does not always work -- it needs a different BPM for example, sometimes it needs to be louder/softer based on what the other musicians are doing.
I want to handle all the sound changes myself, and not have the sound guy try to guess where my solo is.... My goal is to have the sound guy not make any adjustments to my sound at all, just plug and play.
So in short, for the variety of stuff I'm currently playing the preset-per-song is the way to go. Plus it makes the layout so much simpler because you don't add unnecessary junk that doesn't apply to the song. All my lead sounds are almost always in the same position. If I only need 2 sounds, I don't clutter my preset with unnecessary snapshots that I can accidentally step on. If one song has acoustic sound and an electric solo sound--same thing: I make 6 out of 8 snapshots that acoustic sound. And 2 right-most buttons are my solo sound. It makes it so much easier coming out of the solo to just slam on any of those 6 buttons. And it makes it easy to go to the solo by pressing the right-most buttons, one or the other. Sometimes if I'm trying out new sounds, I can add additional options on the top row.
When I practice and I notice that I mess up and press wrong buttons, I reposition these snapshots. It all varies per song and how fast the song goes, etc. Sometimes I use the expression pedal to change between rhythm and lead as well, if it keeps going back and forth. Every preset is custom and it's awesome.