Offret som tros ha varit målet för attacken beskrivs i ryska medier som en östukrainsk tidigare boxare som satt upp en paramilitär bataljon och anslutit sig till den ryska sidan i Ukrainakriget. Mannen ska ha skadats allvarligt i explosionen och senare dött på sjukhus.
Även mannens livvakt dödades, och flera andra människor skadades, skriver USA-stödda Radio Free Europe/Radio Liberty. Smällen orsakades av en hemmagjord bomb eller en granat, rapporterar mediesajten Meduza.
Bilder i sociala medier visar pågående räddningsinsatser i ett rum som är fullt av glassplitter. Den statskontrollerade nyhetsbyrån Tass skriver att taket i entrén skadats, men det rapporteras inte vara någon fara för huset i stort.
"Det var en stor smäll i lobbyn på i anläggningen Scarlet Sails. Fönster och gipstaket har skadats", säger en källa till Tass.
Scarlet Sails eller Alje Perusa beskrivs som ett storstilat boendekomplex med många våningar, döpt efter en årlig sommarfestival med miljontals besökare i S:t Petersburg.