Substitute Yannick Carrasco came closest to snatching victory as Monaco emerged from their trip to Zenit St Petersburg with a point after a 0-0 draw.
Carrasco saw his deflected 73rd-minute effort come back off the post on a night when the two clubs, who had both opened their Champions League Group C campaigns with victories, could not be separated at the Petrovski Stadium.
The visitors started in determined fashion and pinned their hosts back deep inside their own half during the early exchanges.
Zenit keeper Yuri Lodygin was called upon with just three minutes gone to block Dimitar Berbatov's close-range shot with his legs, and was later relieved to see Nabil Dirar and then Lucas Ocampos miss the target from promising positions inside a lively opening eight minutes.
Brazilian Hulk threatened to spark the Russians into life with a surging 10th-minute run from his own half before setting up captain Danny, but his wayward shot did not match the quality of the build-up.
Zenit gradually worked their way into the game, but after a scrappy period of play, it was Monaco who went close again with 44 minutes played when Ocampos fired in a half-volley from 18 yards which Lodygin had to tip over.
However, Zenit should have been in front within six minutes of the restart when Domenico Criscito and Hulk combined to set up Jose Rondon, only for the striker to scuff his effort harmlessly at keeper Danijel Subasic.
Rondon fired wide from Aleksandr Anyukov's near-post cross five minutes later as the home side established a momentum, and central defender Nicolas Lombaerts passed up a glorious opportunity to open the scoring when he headed a 65th-minute Hulk corner straight at Subasic.
However, Carrasco came within inches of breaking the deadlock with 17 minutes remaining when his deflected foot clipped the foot of the post with Lodygin beaten.