Отец родом из Свердловска, играл за «Уралмаш» нападающим.
В семь лет отец отвел Сергея в секцию. Закончил Уральский спортивный интернат, после чего в 1988 году его взяли в «Уралмаш». На следующий год стал выходить в основе команды.
В 1991 играл за «Уралец» (Нижний Тагил).
Затем играл в пермской «Звезде», калининградской «Балтике», самарских «Крыльях Советов», воронежском «Факеле», красноярском «Металлурге», казанском «Рубине», грозненском «Тереке», челнинском «КАМАЗе».
В июне 2000 года Сергей подвергся нападению — на автостоянке был ранен ножом в легкое. Когда он оказался в больнице, то не было ни пульса, ни давления. В истории болезни даже проставили дату смерти, однако Булатов выжил, хотя и пробыл в госпитале больше двух месяцев.
В 2007—2008 работал на должности тренера-селекционера в «КАМАЗе». В 2009 году — главный тренер «Динамо» Брянск.
С 2012 года стал селекционером футбольного клуба «Урал». С 5 апреля 2012 года, после отставки А. М. Побегалова — исполняющий обязанности главного тренера клуба.