According to Ronelle Alexander the preposition kod is difficult to define. There is no direct english equivalent. But we can say it has two main uses:
1) When it denotes physical space, it is best translated as by or at.
Oni su tamo, kod prozora. - They are over there by the window
Svi te čekaju kod tunela.
2) When the object of kod is a person, the entire phase indicates some sort of association with the person: the meaning is usually that something or someone is in that person's vicinity. If no other contextual information is available, the phrase means at someone's place (for example kod kuće means at home). This vicinity can also be taken abstractly (for example to refer to the thoughts or ideas of a male person we may say that they are kod njega).
Moja knjiga je kod tebe.
Ona ruča kod tetke. - She has lunch at her aunt's
Kod mene ničeg novog.
The closest thing to kod are the french preposition chez and the german bei.
Now to make it even more complicated there are also differences between the standards!! (at least according to R. Alexander). In Serbian and Bosnian, kod can also have directional meaning when indicating that someone is going to a person's house/place/residence. In this usage Croatian uses k(a) + dative.
So you may have:
Večeras idemo k Ivanu (C) vs
Večeras idemo kod Svetlanu (B,S)
Now, concerning regional differences, native speakers can enlighten us more.