This article is from the Go FAQ, by Morten PAHLE email@example.com with numerous contributions by others.
Beginners and relatively new players often ask this question.
There is no 'correct' answer. There is no set of tests which say 'If
you can do this, then you are x Kyu/Dan'. The entire ranking system is
relative, so you need to relate yourself to players around you, or on
the go servers.
If you are the member of a club, you will also normally have a rank.
This rank can be updated every time you play in a tournament, but also
in between if you notice an improvement/regression. In most countries,
you can enter tournaments with a rank defined by yourself. I.e. if you
think you are a 2 Dan, you can enter a tournament as 2 Dan. (However,
you may loose your games if you are wrong...) In some countries, once
you are above a certain rank (2/3 Dan), this is no longer true, and
you will have a sort of official certificate of your Go strength. (Or
it will be written on your membership card).
In the beginning, before you have an established rank, playing against
other players in the club with an established rank will give you an
indication. It is also worth noting that your rank will vary wildly in
the beginning, often depending on your adversaries' styles of play.
You can also play on the internet Go servers (See section 3.1) to find
a level. However, it should be noted that the Go server ranking
mechanisms are not always very reliable for high-Kyu players.
In general, if you ask yourself this question, you are probably
somewhere between 20 and 30 Kyu.
The only way to be really sure of your rank is to play in (many)