Welcome to Even Innings
Every coach has done this with a legal pad the night before a game. Nine positions, six innings, thirteen kids, and the nagging feeling that somebody is getting shortchanged. Even Innings does that arithmetic for you. Rate your players once, choose how you want the game played, and it builds a lineup that is competitive, fair and compliant with your own league's rules.
The sheet prints on one page for the dugout. Your data lives in this browser and nowhere else, so hit Back Up My Data in the header now and then.
The Three Rules That Matter
- Rate every position a player can cover: Strong, Solid or Developing. Leave a spot blank and the tool will never put them there. Give everyone at least three. Four or five if they can handle it.
- Rate a player at P to make them a pitcher and set their League Age. That's what drives the rest days and pitch limits.
- Build the lineup, don't fill it in. Set your pitching plan, click Fill Remaining Positions, then adjust anything you want. Nothing is locked.
That's all you need to run a game. The rest of this is here when you want it.
Set Up OnceRoster, ratings, pitchers, schedule — about ten minutes
- Name your team on the Roster tab. It prints on every sheet.
- Add players individually or paste the whole roster at once with Bulk Add Players.
- Set Positions & Strength for each player. This is the step that matters most. Mark every spot they can cover Strong, Solid or Developing; leave the rest blank. Strength wins contested positions; blank means never placed there.
Rate at least three spots each, four or five for players who can handle it. A player rated at one spot can only play there or sit. That's the usual cause of uneven bench time. The Rate by Position board does this in nine quick questions — “who can play short?” — tap the players who can, and the setup flow takes you there; the setup checklist at the top of the Roster tab tracks what's left. - Rate a player at P to make them a pitcher. That's all it takes. Set their League Age too
- Paste your season schedule so future games load with one click. (Never sits lives on the Build Lineup page — it's a game decision, and it carries over between games.)
Each GameFrom opening the tab to printing the sheet
- Build Lineup tab. Pick the game from your schedule, then uncheck anyone who's absent today. Your batting order carries over from last game automatically.
- Set the Pitching Plan: who throws which innings. The tool shows who's rested and blocks anyone who isn't. Whatever you have logged on the Pitching tab prints on the game sheet too, under Arms · Rest Owed: what each pitcher threw last time out and the date his arm frees up.
- Set the batting order. Use the arrows beside each number to move a player up or down, or type a number to send them straight to that spot. Everyone else shifts to make room. The list always runs 1 to however many are playing, so you cannot end up with two number fours or a gap at six. Bench someone and the order closes up behind them. The printed sheet is built from it; if you skip it entirely, the tool offers to number everyone for you before you reach Print.
- Choose your lineup type, then click Fill Remaining Positions. Adjust any cell by hand afterward. Nothing is locked. Two other buttons sit beside it, and none of the three touches your players, batting order or absences:
- Redo Fielders re-solves the fielding spots and keeps your Pitching Plan.
- Clear Positions Only empties the grid, pitchers included, so you can assign it all yourself.
- Check the box below the grid. Red = fix it. Amber = worth a look. Green = you're good. A position nobody available can cover shows up red and stays there until you fix it, so a sheet never quietly goes out a fielder short.
- Save Lineup, then head to Print for your one-page landscape sheet, or copy the text version for parents. Anyone you unchecked is left off it. Along the foot of the sheet is a rule band you can point an umpire at: the color key, every rest tier and all three catcher limits.
- After the game, log pitch counts under After the Game on the Pitching tab, and the final score beside them if you want a season record. Every future rest calculation depends on the pitch counts.
- Next week, just set the new date. The tool starts a fresh game and leaves last week's saved. It says so and offers to move the old game instead if that's what you meant.
How It Builds a LineupWhy a player ends up where they do and what the three types change
- Players only play positions you've rated them for, or the bench. Never anywhere else, not even to complete a defense. If a spot can't be filled within the rules, it stays open and tells you which player to add it to.
- Strength picks the defense. Contested positions go to your strongest available player, and each inning is solved as a whole rather than one spot at a time, so the tool won't paint itself into a corner and leave your best third baseman in left field.
- Starter is your optional depth chart. Open a player's ratings and click Starter next to a position to mark them the number one there. When two players are rated the same at that spot, the starter gets it and keeps it while they're on the field. It never outranks a better-rated player. Star a Developing player at short while a Strong one is available and the Strong one still plays there. One starter per position, and it doesn't apply to pitchers, who are ranked on the Pitching & Rest tab.
Star a player and mark them Never sits and you've said “this is my shortstop, all game.” They'll be there every inning they aren't on the mound. - The lineup type decides where people play, while bench fairness decides who plays. There are three. See The Three Lineup Types below.
- Bench time is shared evenly among everyone except Never-sits players, and nobody sits two innings back-to-back if it can be avoided.
Most Competitive is the exception. Bench time there is uneven on purpose. - Swapping a player after a fill patches the hole for you. Move someone off a position in an inning that's already complete, and the tool puts the best available player into the spot they left. It outlines the cell it changed and says what it did, with Undo in the message.
It only steps in when the inning was full to begin with. If you're building a lineup by hand, nothing fills itself until you press a button. Undo reverts the tool's fix and leaves your own change standing. If nobody available is rated for the spot, it says so rather than filling it wrongly. - Score and record are optional. After a game, enter the final score next to the pitch counts on the Pitching & Rest tab. Your record, run totals and a game log appear on the Season Fairness tab, which prints on one page and copies as text for the team chat. Skip it and nothing else changes. A game with no score isn't counted.
- Batting order runs continuously — everyone bats every time through, including innings they're on the bench.
The Three Lineup TypesMost Competitive, Balanced, Developmental — and when to use each
Set this above the grid before you fill. Switching between them rebuilds the lineup on the spot, whatever state the grid is in, and fills any empty innings while it is there. Flick through all three and keep whichever you like. Changed cells are outlined and Undo is one click away. Your pitchers never move; those come from your Pitching Plan. An untouched grid is left alone, so changing the dropdown before you have built anything will not conjure a lineup.
- Most Competitive puts your best gloves at the hardest spots and leaves them there. The spare innings go to your strongest fielders. Bench time is deliberately uneven. Built for postseason and tournaments.
Who sits comes down to who's hardest to replace, so your only real catcher stays on. - Balanced is the one for the regular season. Competitive defense, players still move around, bench innings stay even.
Strong players hold their own position most innings they're on the field. Where you've rated an outfielder for an infield spot, it looks to give him that turn. - Developmental puts growth first. Players get innings at their Solid and Developing spots instead of their best one, and they move around the field. Good for scrimmages, assessments and early-season looks.
One or two innings at their best position and the rest somewhere they're still learning, unless nobody else can cover a spot.
All three obey the same hard rules: nobody plays a spot you haven't rated them for, and pitching rest and the catcher rule are enforced. The type changes where people play, never whether the lineup is compliant.
Rules It Enforces For YouThe rules your league actually uses
Coaching More Than One TeamSpring, all-stars and fall ball, kept apart
Spring team, all-stars and fall ball can all live here at once. Use + Team in the top bar to add one, then switch between them with the dropdown beside it. Each team keeps its own roster, ratings, schedule, games and pitch history. Nothing crosses over, so a pitcher's rest days on one team never affect another.
Nothing is lost when you switch. Anything in progress, including an unsaved lineup, saves automatically first.
When a season finishes, Archive that team on the Roster tab under Your Teams. It leaves the switcher, so you are not scrolling past last spring every week, and everything in it is kept: players, games and pitch history. That matters when a parent asks about last spring. Restore it from the same table whenever you want.
Found a Problem? Tell MeWhat to include so I can fix it
This is an early pilot, so real feedback from real games is the most useful thing you can give me. If something is wrong, confusing or just annoying, tell me. Especially anything to do with pitch counts or playing time.
Please include the version shown in the top bar (v1.0) so I know which build you're on. If a green bar at the bottom of the screen says a newer version is available, tap it first — a refresh is often the whole fix.
Backups & New SeasonsExporting, restoring and starting a season over
Use Back Up My Data / Import Data to back up your work, move to a new computer or restore after a mishap. When it's time for a new season, Start a New Season on the Roster tab keeps your players and their ratings, and clears last season's games, pitch history and schedule. Reset This Team's Data beside it is for clearing a roster or starting a team over.
Rosters change between seasons and inside them. Add a player any time with Add Player; they appear in the next lineup you build. When one leaves, press Left the team on their row rather than Delete. It takes them out of lineups and off the list of available pitchers, and keeps their ratings and everything they threw. The same button says Rejoined if they come back. Delete is for a player entered by mistake: it erases their pitch records for good. Nothing is downloaded for you, so take a backup first if you want one.
Your access to Even Innings is personal, so please don't forward the link. If another coach is interested, send them to me and I'll get them set up.
Using an iPhone?One habit protects your season
iPhone Safari deletes a website's saved data — including everything in this app — after about 7 days without a visit. A bye week plus a rainout is enough. Two protections: press Back Up My Data whenever the pill in the header asks — on an iPhone the Back Up to Files… button beside it saves the backup straight to the Files app, AirDrop or a message — and add this page to your Home Screen (Share → Add to Home Screen) — apps opened from the Home Screen keep their data.
Planning a PracticeStations, rotations and a one-page sheet, off the same ratings
The Practice Plan tab builds a defensive practice off the same ratings you entered for lineups, and prints it on one page for the field. It's laid out like the game-day sheet on purpose: same header, same four date-and-time boxes, and station columns keyed in the same colors the lineup sheet uses.
- Set the date and length. The date is what lets the tool check pitcher rest; length decides how many station rounds fit.
- Tap anyone who's missing in Who's Here. Groups are built from who actually showed up.
- Pick what you're working on. Two or three is plenty. Each choice sets the infield drill and the outfield drill for that round.
- Optionally finish with a game. Off by default. Skip it if you'd rather spend the time on drills. Pick Custom to enter your own: give it a name and a sentence on how it works, and it prints on the sheet like any of the built-in ones.
- Build the plan, then print or copy it as text.
How players get placed
- Three stations run at once: infield, outfield and bullpen. Groups rotate each round.
- Only players rated at P pitch, and only players rated at C catch. Nobody else can be placed in the bullpen at all.
- Infield and outfield do allow cross-training, because practice is where that belongs. A player working a spot they aren't rated for goes to 2B or RF, and the sheet labels the rep so you know it's development.
- Practice weights development above best-available defense. That's the opposite of the game-day dial. Repeating the same spot costs a player their next rep there, so they move around.
- A complete infield comes first. If a spot can't be filled, the sheet says whether that's a ratings gap or simply not enough bodies.
Bullpens are optional
- Switch it off any time you're not throwing. Plenty of practices don't include a pen, and younger divisions often don't throw them at all. With it off the plan runs two stations instead of three, the whole roster works infield and outfield, and nothing about pitching rest appears on the sheet.
- Every available pitcher throws 15 pitches to a rostered catcher, and catchers rotate so arms aren't always throwing to the same kid.
- A pitcher on required rest is held out automatically, and the sheet says what he can still do, usually catch or field.
- Practice pitches are never added to your pitch log. The planner reads your log; it never writes to it.
- Before you build, the bullpen card tells you how many arms actually fit. The clock, the number of players and the number of catchers all cap it.
Saving practices
Save to History after you build. The next plan steers players toward spots they didn't work, so variety builds across weeks instead of resetting every Tuesday. You can also load a past setup as a starting point.
Your League
Select where you coach and Even Innings applies that league's pitching and catching rules to every lineup and practice plan. You only do this once.
Your Team
This name prints at the top of every lineup and practice sheet.
Add Player
Choose P as their primary to make them a pitcher. League Age sets their pitch limit.
Rate by PositionNine questions — tap the players who can cover each spot
Tap a player once for Strong, again for Solid, again for Developing. Tap the × to remove them from this position. A player’s primary position stays playable.
Bulk Add PlayersPaste a whole roster at once
One player per line. Anything after the name is optional.
Roster
Click any player's positions to adjust their ratings and set Starters inline — handy when a kid improves mid-season. Use Edit for their name, number, League Age or primary position.
| # | Name | Primary | Other Positions | League Age (daily max) | Pitches? | On the team | Actions |
|---|
Season ScheduleEnter your games once, load them all season
Paste it once and every game is a dropdown on the Build Lineup tab.
One game per line: date, opponent, time, location — commas between. Only the date is required. Dates: 4/18/2026 or 2026-04-18. Times: 12:30, 12:30 PM or 11am.
| Date | Opponent | Time | Location | Lineup Built? | Actions |
|---|
Manage Teams & DataSwitch and archive — and clearing at every scale, smallest first
Nothing crosses between teams — not rosters, not pitch history. Add one with + Team at the top of the screen.
| Team | Players | Games | Pitch Records | Actions |
|---|
Archive a team when its season ends. It leaves the switcher at the top of the screen and everything in it is kept — players, games, pitch history — so you can still answer a question about last spring. To delete a team outright, or to clear data at any other scale, use the clearing ladder below.
Nothing here is downloaded. Use Back Up My Data at the top of the screen first if there is any chance you want a copy.
Keeps your players, their ratings and your starters. Clears last season's games, pitch history and schedule — which is what you want in the fall with the same kids.
Empties this team completely but keeps the team itself, ready for a new roster.
Removes this team and everything in it. Your other teams are untouched. To set a finished season aside instead of destroying it, use Archive under Your Teams.
Every team in this browser, and every roster, game, pitch record and practice plan in them. There is no undo.
Pitching RulesReference — the rules built into this tool
Built into the eligibility engine below. Reference only — always confirm with your league.
Starting Pitcher Rankings
Optional. Lower number pitches sooner when several are rested.
| Pitcher | Rank |
|---|
After the Game — Log Pitch Counts
Pick a game and its pitchers appear below.
Score is optional. Leave it blank and the game simply doesn't count toward your record.
| Pitcher | Innings Pitched | Daily Max | Pitches Thrown |
|---|
Log a Single AppearanceFor a one-off entry outside a saved game
Rest days are calculated from these.
Pitcher Eligibility
| Rank | Pitcher | Daily Max | Last Outing | Rest Required | Status |
|---|
Pitch Log HistoryEvery outing you've recorded
| Date | Pitcher | Opponent | Pitches | Actions |
|---|
Game Info
Start from a different game instead
New games already inherit the batting order and Never-sits settings from your most recent one, with everyone marked Playing. Use this only to pull from an older game.
Pitcher Availability for this Date
Auto-calculated from the Pitch Log. Set the game date above to refresh.
| Rank | Pitcher | Status |
|---|
Pitching Plan
Blank means undecided.
| Inning | Pitcher | Rank & Status |
|---|
Batting Order & Defensive Positions
Everyone bats every time through, including innings on the bench.
Uncheck Playing for anyone absent today. Check Never sits for any all-star you want on the field every inning — they're excluded from the bench rotation. Everyone else shares bench time evenly when you fill or redo the lineup.
| Playing | Never Sits |
Order | Player | Positions |
|---|
Print View
One landscape page. Choose “Save as PDF” in the print dialog to share it.
GAME DAY LINEUP
Batting order is continuous — all players bat every time through.
| BAT | PLAYER |
|---|
Pitching Plan
Arms · Rest Owed
Notes
Team Record
From the scores you enter after each game. Optional.
| Date | Time | Opponent | Field | Score | Result |
|---|
Season at a Glance
Season Fairness
Most bench time first. Never-sits games are left out so they don't skew the average.
| Player | Games Played | Games in Bench Rotation | Bench Innings | Avg Bench Innings per Game | Never-Sits Appearances | Typical Batting Slot | Positions Played |
|---|
Season Pitching Totals
| Pitcher | Outings | Total Pitches | Avg Pitches / Outing |
|---|
Practice Setup
Practices stand on their own — they don't need to be tied to a game on your schedule.
Who's running each station? (optional)
Names print in the station headers, so you can hand a sheet to an assistant without explaining it.
Who's Here
Uncheck anyone missing. Groups and the bullpen are built from who's actually at practice.
Warm-Up
Adjust the minutes or switch a block off.
What Are We Working On?
Two or three is plenty. Each one sets a station drill.
Finish With a Gameoptional
Kids this age run harder for a scoreboard than for a fungo, and the last ten minutes are the ones they talk about on the ride home. Skip it entirely if you'd rather spend the time on drills.
Bullpenoptional
Every available pitcher throws 15 pitches to a rostered catcher. Pitchers on required rest are held out automatically and shown on the sheet.
Build the Plan
DEFENSIVE PRACTICE PLAN
Times on the run sheet are the whistle — rotate on the clock.