Variable-Size Group Splitter
Split a list into groups of variable size.
Built and maintained by Paul Clark, Redmoon Software · Last checked
The Variable-Size Group Splitter divides your list into random groups whose sizes vary within a minimum and maximum you set. It's useful when you want natural-feeling clusters — breakout rooms, discussion pods, or rotating stations — rather than rigidly equal teams. Set your range, click split, and everyone is placed without anyone being left out.
Paste. Paste your list of names or items, one per line.
0 items
Click Split to see a result.
Options
Recent results
- No history yet.
How it works
- Paste. Paste your list of names or items, one per line.
- Range. Set the minimum and maximum group size in the options.
- Split. Click Split to shuffle and form variable-size groups.
- Reroll. Split again for a different random arrangement.
About the Variable-Size Group Splitter
Groups of unpredictable size
Rather than fixing the group size, you give a minimum and a maximum and the tool cuts the shuffled list into groups whose sizes vary within that range. Twenty people with a range of two to four might come out as four, two, three, four, three, four.
That is deliberately different from an even split. A fixed size makes the last group a leftover; variable sizing spreads the irregularity across the whole set so no single group is conspicuously the remainder.
When variable beats even
- Discussion groups, where a group of two and a group of four are both fine and a group of one is not.
- Rotations where identical group sizes would make the pattern obvious.
- Any activity that scales — three people can do it, so can five.
- Not for anything requiring a fixed number of roles; use the team divider for that.
When the arithmetic runs out
A minimum below one is raised to one, and a maximum below the minimum is raised to match it, so the tool corrects an impossible range rather than refusing.
The final group can still fall below your minimum when the arithmetic leaves too few people — check the last group before you use the split. There is no seed, so a split cannot be reproduced.
Why not just split evenly
An even split has one visible flaw: the leftover. Twenty-two people in groups of four is five fours and a two, and the group of two knows it is the remainder. Variable sizing distributes that irregularity so no single group is the obvious afterthought, which changes how the split feels without changing how random it is.
It also breaks the pattern that fixed sizes create over repeated use. A class split into fives every week starts to notice the shape of the groups; a class split into threes-to-fives does not, because there is no shape to notice.
Frequently asked questions
How is this different from the Team Divider?
The Team Divider makes equal-sized groups. The Variable-Size Splitter lets group sizes vary within a range you choose.
Will it leave anyone out?
No. A small leftover group is merged into the previous group so everyone is included.
Is the grouping random?
Yes. The list is shuffled with your browser's Web Crypto API for an unbiased, cryptographically sound split.
Are my names sent to a server?
No. The splitter runs entirely in your browser and works offline, so your list stays on your device.
Related randomizers
Further reading
- Picking a group-size range for the activity, not the headcount
Most people set a group-size range by dividing their headcount and guessing. Here's how to pick min and max based on what the activity actually needs — with real ranges for book clubs, hackathons, classroom stations, and party games.
- Splitting a list into groups that don't all have to match
Not every activity needs equal-sized teams — sometimes you want groups of three here, five there, and no awkward leftover pair. Here's how a variable-size group splitter handles the range instead of forcing one fixed number.
- Picking random teams without starting a fight
Randomising teams sounds easy: shuffle, deal, done. In practice you need to think about balance, locked groups, varying sizes, and the friend who always ends up on the same side. Here's how we handle it.