What is Pickle-Mixer?

About the Pickle-Mixer

The Pickle-Mixer is a free, flexible, feature-rich application for the assignment of players into doubles pickleball matches, random or otherwise.

NOTE: This randomizer/mixer does not work the same way as other mixers. Click here if you're NEW and want to get started now.

Screenshots and Videos

Key Features (non-dashboard)

Dashboard Features

Getting started is quick

To get started, click here and input player names in to the text area *one player per line*, you may use copy and paste. HINT: you can enter "x players" without the quotes to autofill with x numbered players. Fill in the available courts field with the number of courts you have available to you and press the mix button. This will mix the first game immediately as well as sending the player names from the text field to the new game.

If you are not happy with the outcome, whether you forgot to set the available courts or missed adding some players, you can make adjustments. Put the correct number of courts in the available courts field, add any missing players into the add player text box (one player per line), check the redo game box and click mix. This will simultaneously add the new players names in to the list and redo the last game with them in it. Do not use the redo game box if you actually played the game currently displayed as doing so would overwrite the current displayed game.

If you are happy with the game displayed, then go ahead and play the game! When you are done playing that game and ready to play the next game, press the mix button again. Now you're getting it!

To manage players during gameplay, use the action buttons in the column next to each player's name. You can sit out players, delete players, or link players for fixed partnering. When you click "mix" for the next game, the system will incorporate all your selected actions into the new mix. Remember, if you did actually play the displayed game, then you should not click redo game before clicking mix. OK, now you're ready to go! Click here to get to the mixer

Key Feature Details

No account creation needed to use any non-dashboard features

Free and anonymous usage of all non-dashboard features. No need to do anything except start entering your players' names.

Advanced algorithm ensuring fair sit-outs, fresh opponent and partner pairings

Every effort is used to keep opponents and partners fresh for everyone every game while ensuring a fair sit-out process when there are spares.

Browser-based functionality allowing multi-tabs and timeline navigation

Use multiple tabs simultaneously in cases where you want to keep multiple groups separated that are running simultaneously. Use the native back and forward functions of your browser to traverse the timeline and analyze the game history.

Enhanced speed and quality of mixes through genetic optimization

This is not a simple random brute force process. Mixes are either served from a list of optimally precalculated solutions or derived from a complex genetic optimization for speed and efficiency.

Pre-solved mixes will be served automatically if available. Clicking redo from any point after the first game or changing the number of players (playing or sitting out) will automatically break out of the pre-solved sequence. It's possible to add a small number into other weights, but the sequence is fragile and anything more than a point or two is likely to eventually override the pre-solved sequence before it can complete.

Pre-solved round-robin sequences for fixed partners formats are also available and will automatically begin on game one if possible.

For maximum optimality and speed, many popular combinations are now precalculated

Enter up to 70 players and use up to 20 courts in each browser tab. Use copy and paste.

Currently handles up to 70 players per tab

Sometimes there's one bad court, and we want to fairly distribute this court to all the players. Use the bad court pre-set setting, problem solved. You need to be in advanced mode (⚙) to see the necessary controls.

⚙ Equal distribution of problematic courts

Strive for more mixed doubles courts, mens courts and women's courts. Add an explanation point to the end of women's names to signify they are female and then use one of the gender-based presets. You need to be in advanced mode (⚙) to see the necessary controls.

⚙ Mixed doubles for gender balance

Link two players to be fixed partners. Handles odd numbers of players. Handles any number of teams fixed that are mixed in with any number of players without a fixed partner. Use the link drop-down in the link column to assign fixed partners. You need to be in advanced mode (⚙) to see the necessary controls.

⚙ Fixed partners versatile partner-linking system

Sometimes you have a VIP or two that you do not wish to sit out. Click the box in the CGP (consecutive games played) column to turn it green, and these players will no longer sit out as well as have their CPG counter reset to zero. You need to be in advanced mode (⚙) to see the necessary controls.

⚙ VIP player protection from sitting out

No need to use the complex weight settings, just choose a pre-made pre-set from the preset drop-down. You need to be in advanced mode (⚙) to see the necessary controls.

⚙ Pre-configured game settings for streamlined setup

If, for some reason, someone doesn't play where directed to play by the system, you can let the system know by performing a swap. This way the mixer can continue to deliver fresh opponents and partners to everyone. Click on two players swap checkboxes to swap them.

Swap players to make last second changes

Use the "big screen" format link to display a page that shows all the players and their current courts on one screen without needing to scroll. You need to be in advanced mode (⚙) to see the necessary controls.

Dashboard Features

Save player names into groups for use later

Save player names, so you don't need to type them in each time. Have multiple groups of player names saved. Currently, in beta. Please sign up and request access to the dashboard.

⚙ Mix and track by ratings of your players via recording scores and or entering seed ratings

Give your players ratings via seed ratings or let the ratings be adjusted by entering the scores. Weight can be given so the mixer can prefer to make partners and/or opponents roughly equally rated. This does not use the traditional pickleball ratings system (3.5, 4.0, etc.); instead, it uses an ELO system with a default rating of 1500. (You could give 3.5 players a seed rating of 3500, though.) You need to be in advanced mode (⚙) to see the necessary controls.

PLANNED FOR FUTURE: Direct player interactivity from player's own device

Coming soon. Players will be able to use their own devices to check in, see what court they play on, choose their own partners, enter their own scores and more... sign up to help test some of these new features as they are created.

⚙ Custom weights to fine-tune the algorithm

You can use the custom weight settings to fine-tune the algorithm to your liking. It is recommended to use the presets in most circumstances but... if you insist....

⚙ Sitting Out Weight

The default and maximum value of 99 (and to a lesser extent 98) is as fair as possible to all players. With a 99 setting, There is an initial random pick of sitting-out players from all the players who have played the longest without sitting out. The mixer will go on to mix without these preselected players. With a 98 setting, the game will mix while trying new preselected players simultaneously. Players always sit out when it is their turn to sit out. These players will have a -s shown after their name.

Any other lower value will introduce some of the sit-out selection to the other algorithms. In other words, if a player can be sat out or not sat out to facilitate any of the other weights to get a better quality mix, then the players sit out status may be affected. In my experience, no players ever want to sit-out out of turn, not even for the greater good of a better mix-up. Therefore, I recommend using the default value of 99 for most cases.

⚙ Played With Weight

This weight controls the importance of having a fresh unseen (or not seen for a long time) partner every game.

⚙ Played Vs Weight

This weight controls the importance of having fresh unseen (or not seen for a while) opponents every game.

⚙ Court Number Weight

This weight controls the importance of distributing the courts across the players evenly. It is recommended not to use this unless you really need it as it is very demanding and may cause the algorithm to not work as well towards goals of the other weights. If set to zero, then the courts will be distributed randomly but no extra effort will be used to try and distribute the courts evenly to all the players.

⚙ Bad Court Number

This setting is not a weight. This is to mark one of the courts especially bad so that the algorithm can attempt to evenly distribute this one court. This works much better than trying to distribute all courts across the players evenly. It is recommended to set this to be the court number of the worse court in cases where you have one court that the players absolutely hate. It must be within range of the courts you are mixing, or it will not function correctly. For instance, if you have five available courts, then the bad court setting needs to be either 1,2,3,4 or 5. If set to 0 then bad court is not used

⚙ Court-side Weight

This weight controls the importance of distributing each side across the players evenly. It is recommended not to use this unless you really need it. If zero is set, then it will distribute the sides randomly but will not make any extra effort to give each player some of each side.

⚙ Mixed Weight

This weight controls the importance of having mixed doubles courts, all men courts and all women courts. If you want to use this feature, then you must put an explanation point (!) at the end of each woman's name to signify that the player is female. This is a special setting where any number that is 96 or more will attempt to make only men courts and women courts (but not mixed doubles courts.) If you do want mixed doubles courts to appear, then you should use 95 or lower. Any odd number that is 95 or less will attempt to make mixed doubles courts, men courts and women courts. Any even number that is 94 or less will attempt to make mixed doubles courts only. This mechanism works best if the ratio of men to women is decent in your player pool.

⚙ Max Calc Time

This setting controls the maximum amount of time the algorithm will spend trying to calculate an optimal mix. It Also affects the inner workings of the genetic cycles which in turn affect the typical mix time, not just the max mix time. Be warned that this setting can have a big impact on the quality of the mix.

⚙ Rating Weight

This feature requires that you have an account and also requires that you either enter ratings for your players or record scores for some games so that the rating system can rate the players. This weight controls the importance of having partners with similar ratings and the importance of having teams equally matched. An even number below 50 will give a lower amount of priority to matching the partners of equal strength and higher importance will be given to keeping the teams even. An even number above 50 will give an equal priority to both matching the partners of equal strength and keeping the teams even. An odd number will give a higher priority to matching the partners of equal strength and a lower priority to keeping the teams even.
Examples:
2 = Low priority to partners of equal strength and opponents equal. (Unlikely to cause duplicate partners, opponents and games.
3 = Low priority to partners of slightly more equal strength and opponents not very equal. (Unlikely to cause duplicate partners, opponents and games)
48 = Medium priority to partners of moderately equal strength and opponents quite equal. (May cause some duplicate partners, opponents and games.)
49 = Medium priority to partners of equal strength but opponents not necessarily equal. (May cause some duplicate partners, opponents and games.)
98 = High priority to partners of extremely equal strength and opponents extremely equal. (Unless you have a lot of players roughly equal in rating, you will see a lot of duplicate games, partners and opponents.)
99 = High priority to partners of fairly equal strength and opponents extremely equal. (Also will cause duplicates but slightly fewer than 98.)
Notes:
In most cases, the first game or two is likely to be equalized by the rating system no matter what the priority is set for. However, especially with lower priorities, the rating system may not always be able to keep the teams equalized beyond the first few games. Unless you use a higher rating weight (and lower other weights), the other goals may start to drive the mixer, such as finding unseen partners and opponents.

Ratings are calculated for each users group separately, and all pools are isolated from each other. Ratings only reflect the relative strengths of the players to each other within each group. Ratings have a default seed value of 1500. Ratings at picklefriend.net use a modified elo system, but organizers can adjust the seed rankings for each of their players to their liking. There is a 66.666% weighted average used towards the lesser rated player in determining team equality.

Group Ratings Settings

New Pool Placement Games: Number of games a brand-new pool will have as starting placement games.

New Player Placement Games: Number of games a new player will have as starting placement games.

Starting placement games are games that are played to roughly determine an initial strength hierarchy. During these games, ratings are increasing and or decreasing much more than normal. Also, if there are new players playing against players who already have established ratings, then the established players ratings are significantly protected.

K Factor: A higher K-factor is best for beginners and intermediates whose skills are changing very quickly. The drawback of a higher K-factor is that it can be more unstable and sensitive to recent wins and losses. A lower K-factor is best for players whose skills are more stable such as professionals. The drawback of a lower K-factor is that it will take more games to reach its true level. A k-factor of 60–70 should be good for most non-professionals.

Typical Competitive Game Length: This is the average game length in minutes that it takes your group to play a full normal game to 11 when both teams are equally matched. It will help to calibrate the timed game ratings adjustments (smaller adjustments for smaller time limits). However, completing a game to 11 or more in a short time limit is treated as a full game.

Bonus Points for Time: Give a small bonus to losing team for holding on through a low scoring game that does not complete. ELO length bonus for games completing in a shorter time than expected.

Ball Magnet Mode: When enabled, the algorithm will assume the lesser rated player of a team is getting more balls hit to them. The lesser rated player will carry more responsibility for each game. The further, the partners of a team are in rating from each other the greater the effect (a separate ELO-based comparison is made to determine how much responsibility each partner had for each result.) The higher-rated player's ratings will move less, and the lower-rated player's ratings will be more sensitive. Turn it off for fixed or mostly fixed partners, or if you have players that can cover the entire court and win with any partner.

Partnership Maximum Responsibility: In percent, the maximum responsibility of the lower-rated player. Also affects the weighted team averages.

Win Bonus (0.00–1.00): This is the ratio factor that the algorithm will reward a player with for a win or penalize a player for a loss. For example, a 1.0 will cause the score to become irrelevant other than the win or loss. A 0.5 will cause the score to be about equally important as actually winning or losing. A 0.0 will cause the score to be the only thing that matters, winning or losing will not matter at all. A 0.0 will also mean very close games are essentially ties and teams that don't meet their expectations will lose rating even if they win and vice versa.

Data and indicators are presented to you about your players, the current game and the session

You can see in the far right column in small print all their history including who they played with and against as well as the courts and sides they played on. Indicators are shown beside each player name when applicable:
[-s] Super Sit indicator. This is shown when a player was selected to sit out due to their consecutive games played being the highest of all the players. This part of the selection is done before the mixing begins
[-v] Voluntary Sit indicator. Shown when a player has been sat out due to the sit box being checked beside their name.
[-t] Sitting-Out Out of Turn indicator. Shown when a player is sitting out before they are due to sit out.
[-2x] Consecutive Sitting Out indicator. Shown when a player is sitting out for more than one game in a row.
[-o] Repeat opponent indicator. Shown when a player is seeing an opponent they have already seen.
[-p] Repeat Partner indicator. Shown when a player is seeing a partner they have already played with.
[-g] Repeat game indicator. Shown when a court has a game already played.

Change Logs

Known Bugs:
— at least one function doesn't work well with player names being numbers (linking)

1.4.12 2025-02-22
— Can enter seed rating inline during adding players on dashboard page: Nick:1787
— Players remain selected after adding new players on dashboard page
1.4.11 2025-02-20
— Added mixing animation
— Added premix mode (optimal mixes precalculated for 9 to 24 players) for non-set partner formats
— Added a new sit out calculation method
1.4.10 2025-02-13
— Revamped the ELO ratings system again, added new options: ties, view expected outcome before game, win by two, bonus for time, partnership maximum responsibility.
— Added view button to each saved game for viewing ratings changes details (need to recalculate first)
1.4.9 2025-02-09
— Revamped the ELO ratings system again and fixed some bugs
1.4.8 2025-02-08
— fixed swap bug where history got jumbled a little when refresh was immediately pressed after a swap
— add a warning to the top of the page if a dashboard link is clicked in iPhone and the new page does not appear immediately focused
1.4.7 2025-02-06
— revamped the ELO ratings system and added new settings
— Optimized genetic algorithm for cpu efficiency
1.4.6 2025-02-05
— added per group mixer settings to be loaded in when the launch button is clicked
1.4.5 2025-01-31
— optimized mixing functions for cpu efficiency
— revamped some of the weight functions
— advanced weight controls now remain hidden, even in advanced mode, until the new gear button (found to the right of the available courts field) is clicked
1.4.4 2025-01-28
— fixed bug where exact-same-game detection wasn't working properly and made improvements
— added repeat game and double sit out indicators
— fixed bug where print function didn't retain active game even when redo was left unchecked (if you have game #1 showing when you click print, it will be game #1 as is in the new schedule unless redo game is selected)
1.4.3 2024-12-14
— puts a small fraction of weight in to cross-checking if partner has played as opponent and vice versa
1.4.2 2024-12-13
— optimized mixed doubles presets for when there are some players sitting out
1.4.1 2024-12-10
— added autofill of players using 'xx players'
— fixed lost session, where a player list just became blank
— fixed bug where some players couldn't be deleted from dashboard
— allow groups to be deleted even if there are still players in them
1.4.0 2024-11-30
— added reset all partner and opponent history but leaves the names and sit out history intact
— added save players to dash from mixer
— exposed some group ratings controls: k-factor, new pool placement games, new player placement games and sort courts by rating
— dashboard players list now retains checkbox status across some actions
— colorized the courts for easy lookup of who else is on your court when using the big screen format
— optimized round-robin mode for fixed partners
— handles perfect round-robins of up to 12 fixed partner teams (24 players) round-robin mode automatically turns on and runs the preset pattern
— improved handling of groups with both fixed partners and individual players
— retains signed in status on multiple devices simultaneously
— added rating support for timed or untimed non-rally scoring or rally scoring games
1.3.22 2024-11-12
— optimized code for fixed partner round robins. works for 6,8 and 10 Team RR (maybe more)
— fixed bug where couldn't v sit properly
1.3.21 2024-11-11
— fixed bug where repeat partners would happen prematurely
1.3.20 2024-11-10
— optimized 'has exact game been played before' function
— added new player counter beside text box
1.3.19 2024-11-09
— fixed five-player rotation is not always a perfect round-robin on first cycle (higher penalty for multiple occurrences of VS).
— fixed playedVS truncating an odd number of players.
— fixed unblocked mix button after mixing.
— added polygon checks for 12 and 16 player round robins to make sure it is a perfect round-robin.
— added has exact same game been played before check. i.e., game 8 of an 8-player rotation should now give a slightly different game than the very first game