Whenever a directory is created it takes 1 block for storing some system related info (meta-data about files, including the file names contained in that directory).
This doesn't always amount to 4k (4096), it depends on the block-size, which is 4096 on most modern Linux machines.
If 1 block isn't enough to store the data, it adds another block (and another and ...). The directory size is always a multiple of the block-size.
You can get the block-size that is used with the dumpe2fs
dumpe2fs /device | grep "^Block size:"