Matching algorithms
Compare the five RandomCoffee matching algorithms (Randomly, Cross-groups, Group composer, Lottery and Mystery 1:1s) and choose the right one for your program.
The matching algorithm decides how RandomCoffee forms the groups of each session. RandomCoffee offers five algorithms: “Randomly”, “Cross-groups”, “Group composer”, “Lottery” and “Mystery 1
”. This page compares them, then explains how each one works, its settings and when to use it.You choose the algorithm in the settings of each program: open your program, go to the “Settings” tab, then to the “Matchmaking” section, under “Matching algorithm”. See Create a program for the other settings of this section.
A program created from scratch uses “Randomly”, with groups of 2. You can change the algorithm and the group size at any time in this section.
Compare the algorithms
| Algorithm | What it does | Typical use | Group size |
|---|---|---|---|
| “Randomly” | Matches everyone at random, without matching rules. | Coffee chats to meet new colleagues | 2 to 10 |
| “Cross-groups” | Matches everyone, following your matching rules as closely as possible. | Connecting departments, sites or shared interests | 2 to 10 |
| “Group composer” | Fills each seat of a group with a profile you define. Only creates groups that respect this composition. | Onboarding buddies, pairs with set roles | 2 to 10 (one seat per person) |
| “Lottery” | Creates a single group per session, drawn from the participants. | “Meet the CEO”, drawing a team | 2 to 10 winners, plus looped participants |
| “Mystery 1” | Gives each participant one personal match, revealed only to them. | Secret Santa, kudos, book swap | Always 1 |
Who is matched, and which settings each algorithm uses:
| Algorithm | Who is matched | Matching rules | “People distribution from group size” |
|---|---|---|---|
| “Randomly” | All participants of the session | No | Yes, for groups of more than 2 |
| “Cross-groups” | All participants of the session | Yes | Yes, for groups of more than 2 |
| “Group composer” | Only the participants who fit a complete group | Yes | No |
| “Lottery” | Only the winners, one group | Yes | No |
| “Mystery 1” | All participants of the session | Yes | No |
The participants of a session are the members who receive a match: everyone in the program with “Automatic participation”, or the members who opted in with “Ask for participation”. See Create a program.
Mentoring programs do not use these algorithms: they have their own “Matching mode” setting. See Create a mentoring program.
What every algorithm takes into account
Whatever the algorithm, RandomCoffee does not draw groups blindly. For each session, it looks at:
- Past matches: it avoids matching people who have already met, in any program of your workspace (see Who can be matched again).
- Members’ matching preferences: the profiles each member asked to meet, from their Member Portal. See Set matching preferences.
- Your matching rules, in the order of the list, with every algorithm except “Randomly”. See Matching rules.
- Variety of profiles: last, it favors colleagues whose category values differ from those of the people a member met before.
In the “Matching rules” list of a program, the first two points appear at the top as two default rules: “People who have already met should not meet again, as far as possible” and “Match members according to their selected matching preferences”. If you drag one of your rules above them, your rule takes priority over them.
Matching only works with the participants of the session. With opt-ins, you do not know in advance who will take part, so your rules apply to the people available at that moment. With a small or unbalanced group of participants, some matches may not follow every rule.
Who can be matched again
RandomCoffee avoids repeat matches as far as possible, but never makes them impossible:
- It prefers people who have never been matched together.
- When a repeat cannot be avoided (few participants, strict rules), it chooses the people who met the longest time ago. The person a member met most recently is the last choice.
- When a member has already met every other participant of the session, the oldest half of their past matches become fully available again, so that they can still be matched.
Randomly
“Just let the magic happen! Everyone participating in the session get matched.”
How it works
RandomCoffee forms groups at random among all the participants of the session. You cannot add matching rules. RandomCoffee still avoids repeat matches and follows members’ matching preferences.
If you switch a program from another algorithm to “Randomly”, its matching rules are ignored.
Settings
- “Group size”: from 2 to 10 people per group.
- “People distribution from group size” (for groups of more than 2): how to spread people when the number of participants is not a multiple of the group size:
- “Distribute equitably - allow exceeding the group size”
- “Distribute equitably - without exceeding group size”
- “Do not distribute and generate an incomplete group”
- “Let the system choose according to the size of the rest” (default)
Below the options, “Simulate” shows the groups you get for a number of people and a group size of your choice. In any case, nobody stays alone: one remaining person is added to a complete group.
Example
You run weekly coffee chats in pairs and 15 people take part in a session. RandomCoffee creates 6 pairs and 1 group of 3, with people who have not met before whenever possible.
When to use it
When you want chance to decide who meets whom:
- coffee chats to discover new colleagues;
- groups for a workshop;
- one-on-one lunches with a random person.
Cross-groups
“Create groups based on shared or contrasting attributes (location, department, etc.). All participants are matched.”
How it works
Everyone in the session is matched. RandomCoffee forms the groups that follow your matching rules as closely as possible, in their order of priority. Rules rely on categories, audiences or specific members: create your categories first.
Settings
- “Group size” and “People distribution from group size”: same as for “Randomly”.
- “Matching rules”: click “Add a rule” and choose its type. See Matching rules.
Example
To connect people from different teams, add a “Category” rule on your department category with “Is different”. Everyone is matched, and as many groups as possible mix departments.
When to use it
When your rules matter and everyone must still be matched:
- interaction between departments or teams;
- new connections based on shared interests;
- knowledge sharing and peer learning;
- matches in compatible time zones (see Manage time zone differences).
Group composer
“Set people distribution seat by seat within your groups. Only generates groups that respect your rules.”
You define the composition of a group seat by seat: for example, a new hire in seat 1 and a buddy in seat 2. The group size sets the number of seats. RandomCoffee only creates groups that respect this composition, so some participants may not be matched in a session. You can add matching rules on top.
Use it when each person in a group has a set role, as in an onboarding buddy program. All the settings and a detailed example are in Group composer.
Lottery
“Generate a single group according to your rules. People are chosen from all the participants in the session. You can also loop additional people in introductory emails.”
How it works
At each session, RandomCoffee creates only one group. Its members, the winners, are chosen among all the participants of the session, following your matching rules. The other participants are not matched in this session.
Settings
- “Group size”: the number of winners, from 2 to 10.
- “Looped participants”: members of your workspace added to every match, for example a manager or an HR representative. They receive the match message with the group and are not counted in the group size.
- “Matching rules”: as for “Cross-groups”.
Looped participants receive the match message on the program’s channel, like the people drawn: in copy of the email, in the Slack group conversation, or as their own Microsoft Teams card. In Slack and Microsoft Teams, they need a Slack or Teams account linked to RandomCoffee.
Example
For a “Meet the CEO” program, set “Group size” to 3 and add your CEO in “Looped participants”. At each session, 3 participants are drawn, and the match message goes to these 3 people and the CEO: 4 people in total.
When to use it
When you need a single group chosen among the participants:
- a “Meet the CEO” program;
- a team for a sports tournament.
Mystery 1
“Everyone participating in the session get matched and receive a unique personal match. Perfect for secret santa!”
How it works
Each participant receives the name of one colleague, their personal match. That colleague is not told who received their name. Everyone is matched: each participant receives one name and is, in turn, the match of another participant.
Matches are always 1
, whatever the value of “Group size”.Each participant receives their match privately, on the program’s channel: an email, a Slack direct message or a Microsoft Teams card. Nothing is posted in a channel or in a group conversation, so the secret is kept.
Settings
- “Matching rules”: as for “Cross-groups”. For example, a “Category” rule on your site category with “Is the same” keeps gift exchanges within each office.
Example
For a Secret Santa, create a program with “Ask for participation”, choose “Mystery 1
” and schedule a session. Each participant who opted in receives the name of the colleague they will offer a small gift to. See the Secret Santa idea in Monthly themes.When to use it
When everyone should receive a unique, personal match:
- Secret Santa;
- a feedback or kudos session;
- a book exchange.