GenerateRandomSearch

Practice Drill Rotation Generator

Plan a training session built around stations. Enter your squads and your drills and this works out who is at which station in each block, so every squad covers every drill and no station is ever double-booked.

What this generator does

Turns a list of drills and a list of squads into a timed session plan. The drill generators elsewhere on this site pick a random exercise to try; this one takes the drills you have already chosen and decides the order and the traffic, which is the part that goes wrong when twenty players and four cones are involved.

How to use this tool

  1. Enter your squads or pairs, one per line.
  2. Enter your drills or stations, one per line.
  3. Set how many timed blocks the session runs for.
  4. Press Build session and print it for the touchline.

Understanding the controls

Squads or pairs
One per line, however you have split the session. The count matters more than the names: with more squads than drills, some will be resting each block, which may be exactly what you want in a conditioning session.
Drills or stations
One per line. This sets the length of a full rotation — six drills means six blocks before every squad has done everything once.
Blocks
How many timed periods the session runs for. Fewer blocks than drills gives a partial rotation, and the plan shows which drills were not reached so you can start there next time.
Seed
Reproduces the same session plan. Enter last week's seed to run an identical session, or a new one each week to vary who starts where.

Worked examples

Four squads, four drills, four blocks
Everyone does every drill once. Four stations busy throughout, nobody resting.
Six squads, four drills, six blocks
Four squads working and two resting each block, with every squad taking exactly two rest blocks across the session.
Four squads, six drills, four blocks
A partial rotation — each squad covers four of the six, and the plan names the two not reached.

Common use cases

  • A football or hockey session with squads rotating through skill stations
  • A gym circuit where groups move between equipment on a timer
  • A swimming session rotating lanes between stroke drills
  • An athletics session covering several disciplines in one evening
  • A pre-season fitness circuit that needs to be printed and timed

How this generator works

Squads and drills are drawn into a cycle and then shifted by one position each block, so a squad moves from its current station to the next one along. Because the movement is a rotation rather than a fresh draw, every squad works through every drill exactly once per cycle and no station is ever occupied twice. When there are more squads than stations the surplus squads rest, and the rotation moves the rest period around so the load is shared rather than always falling on the same group.

Randomness and fairness

What varies between runs is only the starting layout — which squad opens at which station, and the order the stations sit in the cycle. The guarantee that everyone covers everything holds regardless, so you can redraw freely to vary a session without ever producing a plan where a squad repeats a drill. Seeded plans use a deterministic, non-cryptographic generator rather than the cryptographic default — appropriate for a training sheet, where repeatability is the useful property and there is nothing to keep secret.

For how randomness is produced across the whole site, see how Generate Random works.

Limitations and good to know

  • Every drill is assumed to take the same time. A station involving a full-pitch run will overrun a cone drill, so either split it or give it two consecutive blocks.
  • Equipment is not modelled. If two drills need the same set of hurdles they cannot run simultaneously, and nothing here knows that — check the plan against your kit before the session.
  • Nothing here accounts for fatigue ordering. Putting a maximal sprint station immediately before a technical one is a coaching decision the rotation cannot make for you.
  • Squad composition is out of scope. Use the team generator to split the group first, then bring those squads here.

Common mistakes

Listing more drills than there are blocks and expecting full coverage
A full rotation needs at least as many blocks as drills. Either cut the drill list to fit the session or accept a partial rotation and start from the missed stations next time.
Treating the rest slot as wasted time
When squads outnumber stations the rest blocks are built in. Use them for water, feedback or a walk-through rather than adding a station you cannot supervise.

Practical tips

  • Set your timer for the block length and use the printed plan as the call sheet — the rotation only works if everyone moves at the same moment.
  • Keep the drill list to roughly the number of blocks you have, so the session ends on a complete cycle rather than halfway round.

Privacy and your data

Squad names and drill names are handled entirely on your device and never sent to a server. Nothing is stored between sessions and nothing appears in the address bar, so the plan exists only in the tab in front of you until you print or copy it. Analytics sees a block count and nothing else.

Frequently asked questions

How many blocks do I need?
As many as you have drills, if you want every squad to cover everything. Six drills means six blocks.
What happens if I have more squads than stations?
The extra squads rest that block, and the rotation moves the rest around so every squad gets the same number.
Can I run the same session again next week?
Yes — reuse the seed word with the same squads and drills and you will get an identical plan.