pb_bot_quota_match should be 0...
The rest was OK:
pb_minbots 0
pb_maxbots 12
pb fillserver 100
One player joins - one bot gets kicked, so it makes the free slot for the next player. There is no reason to keep all the time 12 bots, then kick all of them at once, but You can read and use also
this plugin, which maybe will help You better. Just need to change the deafult amount of bots from (pb_bots_quota) 10 to 12 and
pb_min_humans to "max_slots - pb_bots_quota -1"