Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Go Problems

This is currently a collection of Go Game Guru's Weekly Go Problems. In the future, more problem collections will be added to this repository.

Download the Go Problems

You can get all the Go problems by cloning this repo, or you can download them using one (or both) of the two links just below:

Download Weekly Go Problems in SGF Format (suitable for Go problem apps on your phone)

Download Weekly Go Problems in PDF Format (suitable for printing or reading like a book)

About These Go Problems

This problem collection was started in 2011 by David Ormerod and is now maintained by An Younggil (8 dan pro) and David.

New problems, as well as improvements and amendments to the existing problems, will be worked on here and posted to Go Game Guru periodically.

There's no particular theme for the problems. The criteria for choosing them is simply that problems should be interesting, helpful and entertaining (and ideally all of the above). Problems are loosely categorized as easy, intermediate or hard, though the difficulty of problems seems to be fairly subjective.

Why Create Another Go Problem Collection?

We created this Go problem collection because we love Go and we want to help Go players everywhere to get better at the game. We hope to fill a significant gap in the existing resources for Go players by providing free sets of high quality problems in digital format.

High Quality Go Problems Help You to Learn Better

If you're solving problems regularly, in order to improve, you want to make efficient use of your time and minimize the amount of unlearning and relearning you have to do later.

There are already plenty of Go problems available online, but most of them only provide sparse or low quality solutions (sometimes with quite a few mistakes and suboptimal solutions).

We wanted a free, online problem collection which we could recommend to most Go players, so we made it ourselves. In the process of building this collection, we've provided the highest quality solutions that we humanly can and spent our time on quality rather than quantity.

A Focus on Practical Play and Good Technique

In order to help you to improve as much as possible, this collection leans towards problems and techniques which have frequent, practical applications in real games (though we also include some fun stuff).

Since you're reading this, you probably know already that solving Go problems helps you to improve your reading abilities. However, unless you're already a Go master, a large part of your improvement will actually come from mastering the techniques demonstrated in the problems (rather than through brute force reading ability).

An ideal resource for some players might be a separate genre of Go books that cover specific Go techniques in systematic detail. Such books do exist in Asia, but they're rare, they aren't available in English and they're not for everyone anyway.

Model Solutions for Study

A very good alternative to books on technique is to learn good technique from the solutions to problems as you work through them. To help you with that, this collection has a strong focus on providing detailed, high quality solutions. We do our best to model the best possible technique for you in the primary solution to each problem.

Our hope is that these problems will help you to better achieve your potential in Go in the long run!

How to Collaborate

Please feel free to create an issue or send us a pull request if you want to contribute to and/or help to improve a problem collection.

If you're not yet confident about collaborating, but want to ask questions about existing problems, see How to Ask Questions, just below.

How to Ask Questions

If you're working through the problems and have questions, you're welcome to leave a comment in the weekly problem thread for that week (you can find all the posts here.)

Asking your questions at Go Game Guru (rather than on Github) will make it easier for us to discuss the problem with you and post variations in diagram form (rather than typing bA1, wB2, bC3 etc, which is hard to parse).

We will occasionally improve existing problems (e.g. add more variations or explanations), based on common questions from the Go community.

Finding Problem Threads

Problems are numbered in chronological order. For example, ggg-intermediate-97 means week 97.

You can also search for the problems from a particular week here: (e.g. for week 97).

Where to Get More Go Problems

Go Problems Online

If you've mastered all of these problems and are looking for more, we recommend trying Ulrich Goertz's classical problem collections.

You can also find printable versions of several classical Go problem collections on Tasuki's website. However, they don't come with solutions. We only recommend working through problems with no solutions if you're already quite strong, otherwise your progress will be slower than it would be otherwise.

You can find a long list of Go problem sites of varying quality at Sensei's Library.

Go Problems in Books

The solutions to many Go problems found on the internet can be hit and miss (or are sometimes non-existent). Because of that, the best study material is often found in Go books (which tend to be edited more carefully).

We sell a curated selection of English language Go books on our website and you can find books containing Go problems here.

We particularly recommend:

What Else Can I Do to Get Better at Go?

Have a look at our detailed guide on how to get better at Go, which covers several things you can do to improve, including solving Go problems.


Go Problem Collections from







No releases published


No packages published