Tactics Journal Tactics Board. Think it. Draw it. Share it.
12 June 2026 by Kyle Boas
I’ve been asked over the years what apps I use to make my tactics board graphics. I am proud to share with you a web app I made so you can make the same graphics for free. Try it right now.
Everything I have ever made has been made on my iPhone. The UI had to be responsive and smooth on mobile, and I’m happy to say it is.
It works just as well on desktop and on tablets, with keyboard shortcuts for undo, redo, duplicate, delete, and moving pieces all with a simple click or double tap and drag.
Here is everything the board can do all in your browser. I will be adding more features.
Players and teams
Tap +Player for a single dot, or +XI to drop a full eleven on that team’s half.
Set your home and away teams in Settings: search any club or national team, and the app loads the real squad, so names and shirt numbers stay current, along with the kit colors. Tap a kit color and every dot on that team recolors.
Tap any player to edit it. Pick a name from the roster dropdown, grouped by team, sorted by position. Set the shirt number inside the dot. Choose any color from the palette or enter a custom hex.
The name caption can sit above or below the dot with the click of a button in the menu, whichever you prefer, and you can show first names, last names, or full names at whatever size reads best.
At half-time, instead of manually moving every player and object from one half of the field to the other, click “Flip Board” and the board flips.
This takes a process that would normally take five clicks or more and reduces it to one or two.
I will be producing many more graphics now because of how easy and quick it is to make them with this tool.
Ball, arrows, zones, and text
Each tool lives in the bottom menu. Tap the board to place the ball.
Arrows are drawn by pressing and dragging, and a pass can start right on a player. Lines can be solid, dashed, dotted, or headless, in three weights.
Tap an arrow and use its anchors: the mid handle bends it into a curve, and the endpoint anchors reshape it. The tip of the arrow’s position adjusts to the bend of the arrow.
Zones are translucent boxes for marking space: rectangles, ellipses, or outlines, in any color, with adjustable opacity. Rotate them to follow the angle of play and attach an optional label to any side.
You can add text to a box just like you can with a player, and you can move the text to the top, sides, or bottom with a click in the menu.
Text goes anywhere on the board, at any size and color, bold or regular, rotated if you need it.
There is also a scoreboard. Open the match settings to set the teams, score, clock, and date, then toggle the scoreboard and team names on or off.
Editing
Tap any piece to select it, drag to move it, and double-tap to resize.
The floating buttons let you duplicate, reorder, flip, and delete.
Stacking is handled for you: zones sit under arrows, arrows under players, the ball above them, and text on top, so nothing important ever gets buried. You can arrange the order in the bottom menu placing items above or behind other icons.
You can also flip the entire board to mirror a scene, and the icon row at the top has undo, redo, fit view, export, and new board.
A new board starts blank, or as a kickoff with your two configured teams already in position.
Pinch or scroll to zoom, and drag the empty pitch to pan. There are light and dark themes, or it can follow your system setting.
Boards
Every change saves automatically locally to your device, so you never lose work. You can keep up to 100 boards on your device, and name, reopen, or delete them from the Boards tab in the Settings menu.
Export produces a high-resolution PNG, 2048 pixels wide, and opens the share sheet on your phone so it goes straight to wherever you post.
Moving to a new device? Export all your boards as a single file and import it on the other device in the Transfer menu in Settings; duplicates are skipped automatically.
Coming with License and Pro
Everything above is free, always. I am also building two paid tiers: License, a one-time purchase, and Pro, a subscription. Payments are not live yet, so for now you can join the waitlist on the License + Pro tab in Settings to be notified when they launch.
License adds every pitch style: vertical, training, two pitches side by side for comparing phases, and live broadcast boards where you annotate directly on top of a match screenshot. It also adds cones and ground markers, with more pieces to come.
Pro includes everything in License, plus an account. Sign in and your boards sync across your devices. Import a match screenshot and the app detects the players and places them on the board for you, with the detection running on your device. You can also upload your own backgrounds and assets, and put your own branding on the images you create.
The tactics board will be under constant development. I’m excited to see what you will create. Let me know any features you would like to see added at [email protected].
2026
July
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 7th
- 6th
- 5th
- 5th
- 4th
- 3rd
- 2nd
- 1st
- 1st
June
- 30th
- 30th
- 29th
- 29th
- 29th
- 28th
- 28th
- 27th
- 26th
- 26th
- 25th
- 24th
- 24th
- 23rd
- 22nd
- 21st
- 21st
- 21st
- 20th
- 19th
- 19th
- 18th
- 17th
- 17th
- 16th
- 15th
- 15th
- 14th
- 14th
- 13th
- 13th
- 12th
- 12th
- 11th
- 11th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
- 1st
May
- 31st
- 31st
- 30th
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 19th
- 18th
- 17th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
-
How analysts should measure whether high pressing is creating control or exposing transition attacks11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
- 1st
March
- 24th
January
- 18th
2025
December
- 21st
- 16th
- 7th
- 3rd
November
- 29th
- 24th
- 20th
- 14th
- 12th
- 8th
- 7th
- 4th
- 2nd
October
- 31st
- 28th
- 22nd
- 20th
- 19th
- 12th
September
- 30th
- 28th
- 26th
- 24th
- 23rd
- 20th
- 18th
- 16th
- 14th
- 4th
- 3rd
- 1st
August
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 20th
- 17th
- 14th
- 12th
- 10th
- 8th
- 4th
July
- 10th
- 5th
- 4th
June
- 29th
- 14th
- 13th
- 12th
- 2nd
May
- 29th
- 25th
- 22nd
- 20th
- 15th
- 8th
April
- 30th
- 9th
March
- 28th
- 5th
February
- 26th
- 20th
- 19th
- 12th
- 8th
January
- 31st
- 30th
- 16th
- 12th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
2024
December
- 31st
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 19th
- 18th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
November
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 19th
- 18th
- 18th
- 16th
October
- 21st
- 12th
- 11th
- 9th
- 7th
- 6th
- 4th
- 3rd
- 2nd
- 1st
September
- 30th
- 29th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 19th
- 18th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 4th
- 3rd
- 2nd
- 1st
August
- 31st
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 20th
- 19th
- 19th
- 18th
- 17th
- 16th
- 15th
- 14th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
July
- 31st
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 19th
- 18th
- 17th
- 16th
- 15th
- 15th
- 14th
- 13th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
June
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 19th
- 18th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
May
- 31st
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 20th
- 19th
- 18th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
April
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 19th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 3rd
- 2nd
- 1st
March
- 31st
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 21st
- 20th
- 19th
- 18th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 1st
February
- 28th
- 27th
- 26th
- 25th
- 23rd
- 22nd
- 21st
- 20th
- 18th
- 15th
- 14th
- 13th
- 12th
- 11th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
January
- 31st
- 30th
- 29th
- 28th
- 27th
- 25th
- 24th
- 22nd
- 21st
- 20th
- 18th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
- 11th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
2023
December
- 31st
- 29th
- 28th
- 27th
- 25th
- 24th
- 22nd
- 21st
- 20th
- 19th
- 18th
- 17th
- 16th
- 15th
- 13th
- 12th
- 11th
- 10th
- 8th
- 7th
- 6th
- 4th
- 3rd
- 2nd
- 1st
November
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 18th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
October
- 31st
- 30th
- 29th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 19th
- 17th
- 15th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 1st
September
- 30th
- 28th
- 26th
- 25th
- 24th
- 22nd
- 21st
- 20th
- 19th
- 18th
- 17th
- 9th
- 3rd
August
- 31st
- 28th
- 27th
- 26th
- 21st
- 20th
- 15th
- 14th
- 13th
- 12th
- 7th
- 4th
- 3rd
July
- 31st
- 30th
- 28th
- 27th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 19th
- 18th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
June
- 11th
- 10th
- 7th
- 5th
- 4th
- 1st
May
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 19th
- 18th
- 17th
- 16th
- 15th
- 14th
- 13th
- 11th
- 10th
- 9th
- 8th
- 7th
- 5th
- 4th
- 3rd
- 2nd
- 1st
April
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 22nd
- 21st
- 20th
- 2nd
March
- 6th
February
- 27th
- 20th
- 5th
January
- 19th