Skip to content
Sports Free Β· Private

Random Batting Order

Random lineup + positions for baseball/softball.

Built and maintained by Paul Clark, Redmoon Software Β· Last checked

The Random Batting Order tool builds a shuffled lineup for baseball or softball and can optionally hand out fielding positions too. It's a fast way for coaches and pickup teams to set a fair batting order and spread positions around without arguments. Each lineup is randomized fresh, with positions kept distinct within a single roster.

Enter. Add your players, one per line.

0 items

Click Generate lineup to see a result.

Options
Recent results
  • No history yet.

How it works

  1. Enter. Add your players, one per line.
  2. Options. Turn on position assignment in the Options if you want fielding spots too.
  3. Generate. Click Generate lineup to shuffle the order.
  4. Re-roll. Generate again for a different lineup before you save it.

About the Random Batting Order

The order and the positions are two separate shuffles

Turning on Assign positions does not sort players into the field by ability β€” it shuffles the position list independently of the batting order and pairs the two lists off by row. The player batting first gets whichever position landed first, and the two draws know nothing about each other.

That is the right model for a social game or a rec league where the point is that nobody plays the same spot every week, and it is the wrong model for anything competitive. The tool has no idea who can catch, who can pitch, or who should not be at shortstop; it will put your least mobile player in centre field with complete confidence.

What happens when your roster is not exactly nine

The position list is fixed at pitcher, catcher, the four infield spots and the three outfield spots, with a designated hitter added when you tick Include DH β€” nine positions, or ten with the DH.

With fewer players than positions, the surplus positions simply come back blank rather than being redistributed. With more players than positions, everyone still gets a batting slot but the extras have an empty position column, which is the tool’s way of showing a bench without saying so. Either way the batting order itself is complete and correct; it is only the position column that thins out.

Fair does not mean optimal

A random batting order gives everyone an equal chance at every slot, which is the fairness most youth and social leagues actually want. It is not the order that scores the most runs β€” that is a different problem with a substantial literature behind it, and it generally involves putting your best hitters where they get the most plate appearances.

Decide which you are doing before you press the button. If the answer is "we want everyone to bat somewhere different this week", this tool is exactly right. If the answer is "we want to win", batting your best hitter ninth because a shuffle said so is a decision you have made by default.

Taking the lineup to the field

  • Export the CSV β€” order, player and position in one file is what a scorebook or a team chat actually needs.
  • Every run is independent, so the same player can lead off two weeks running. Nothing here tracks a season.
  • Duplicate names collide: two players called Sam are two identical entries and neither you nor the tool can tell which is which.
  • Draws cannot be replayed β€” there is no seed field here, so copy the result if it matters.

Frequently asked questions

Will the same player get the same position twice?

No. Within one generated lineup, positions are shuffled so each is assigned to a distinct player.

Can I lock a player into a position like catcher?

Not yet. For now, generate the lineup and then swap a player manually before saving.

Is the lineup really random?

Yes. Both the batting order and position assignments are shuffled with the Web Crypto API for unbiased results.

Is my team roster kept private?

Yes. The lineup is generated entirely in your browser, so your roster is never sent to a server and the tool works offline.

Related randomizers

Further reading

Send feedback

Found a bug, want a feature, or just say hi? Send it our way.