Село Шпотовка находится на правом берегу водохранилища Ромен (река Ромен),
выше по течению на расстоянии в 4 км расположено село Базилевка,
ниже по течению на расстоянии в 2 км расположено село Капитановка,
на противоположном берегу — село Нехаевка.
По селу протекает пересыхающий ручей с запрудой.