MGA GoTD is a free open source program for running small to medium sized Go tournaments (16-80 players). It handles registration, pairing, and reporting results. GoTD has a simple easy to use interface. It runs on Windows, Linux, and Mac. Currently used by the Massachusetts Go Association.
Run GoTD with Java WebStart
run GoTD
using Java WebStart

Running the Program

This program requires the Java Runtime available from Once the Java Runtime has been installed you can run GoTD as a Java WebStart program. Just click here.

You can also download it and run it as a standalone program on the SourceForge summary page. Running this program outside of JNLP gives you the additional options to specify the number of rounds in your tournament and the value for komi.

See It In Action

Want to see the GoTD program in action? Watch the screen cast.

GoTD Screen Cast Preview

What is it?

The tournament director is a program written to run the quarterly handicap tournament of the Massachusetts Go Association. The program can be used to run any Go tournament. The program will handle player pairing, tournament ranking, and separate player bands. It saves in the AGA tournament reporting format.

GoTD screen shot

Setting Bands

The bands dialog makes it easy to create an upper and lower band for larger tournaments.
GoTD bands dialog

Seeing Results

The results dialogs makes it easy to see who won the tournament. The bottom five players makes it easier to determine a player to pass a specific round.
GoTD results dialog

A Real World Example

GoTD is used to run all tournaments at the Massachusetts Go Association. They maintain a page describing their tournament procedures. It is an excellent resource for anyone running their own Go tournaments with or without GoTD.

The Pairing Algorithm

GoTD pairs players with two goals. First is to make sure there is a clear winner at the end of the tournament. To achieve this the program pairs winners with winners and losers with losers. As the tournament progresses this will result in an increasingly smaller set of players who have won all of their games. At the end of the tournament only one or two players will have won all of their games and they are the winner.

The second goal is to minimize the number of handicap stones. In each round the software will try to pair the players with the closest ranks. Tournaments are more enjoyable for everyone if a 15 kyu plays a 14 kyu instead of a 5 dan.

Determining a Winner

At the end of the tournament there will be a small number of players who have won every game. If there is only on player like this then they are the winner. However, most often there will be more than one player with a perfect record. In that case the winner is determined by the sum of opponents scores. Each player with a perfect record is given one point for each game their opponents won. The player with the most points wins.

Read the Documentation

Read the documentation (work in progress) for the project here.

Give Us Feedback

Feedback on this project is always welcome. Please send any bugs, questions, or just general feedback through the SourceForge project page at If you are using the program and like it, or would like to contribute code please let me know.


This software is released under the Apache license Version 2.0. That means this software is open source. Anyone can see the source code for this program. It also means that this program is free as in beer. You can use it and redistribute it totally for free.

This pages and any images within are released under the Creative Commons Attribution-ShareAlike 3.0 license unless otherwise noted. You may alter, transform, build upon, or distribute the material as long as it is properly attributed and released under the same or a similarly compatible license. See the license for more information.


This software was created by Zack Grossbart. You can find out more about him at

See some of Zack's other projects at