KeypadLab

Random Assignment Generator

Enter groups on the left and topics on the right. One click matches them at random and fairly, even when the numbers don't add up.

Numbers 1 to
Numbers 1 to

Result

How to assign topics at random

  1. Enter the groups: one group or person per line on the left. For numbered groups, type a number and tap “Insert” to get Group 1 to Group 10.
  2. Enter the topics: one presentation topic or task per line on the right. Real titles work just as well as numbers.
  3. Choose the options: draw the presentation order too? Reuse topics when there are more groups than topics?
  4. Press “Assign”. The table shows who gets which topic and in which order they present. “Copy” turns it into a list for email, your LMS or a chat.

When the numbers don't match

SituationWhat happens
Same number of groups and topicsEvery group gets exactly one topic and every topic is used once.
More topics than groupsAll topics are handed out. Groups get the same number, at most one more, and chance decides who gets the extra one.
More groups than topics, reuse onTopics are reused as evenly as possible, handy when parallel groups compare their results.
More groups than topics, reuse offEach topic is used once and the remaining groups get none, for example when only some groups take an extra task.

Fair and transparent

The shuffle uses crypto.getRandomValues, your browser's cryptographic random number generator. Every assignment is equally likely and nobody can predict the result. For full transparency, run the draw on the projector in front of the class.

Your lists are saved in your browser so they are still there next time. Nothing is sent to a server.

Frequently asked questions

Can I use names instead of groups?

Yes. The left list is simply whoever receives something: names, groups or teams.

Can I redo a draw?

Every press of “Assign” draws again. Once a result counts, copy it right away so it is on record.

How do I assign presentation dates?

Put the dates in the right list instead of topics, for example “Nov 12”, “Nov 19”. Each group then gets a random date.

How many entries can I use?

Several hundred per list work fine.