In the first half, they only had a 20-yard Paulo Bernardo free kick that sailed narrowly over to show for their efforts, despite close to 70% possession.
Dinamo were defensively disciplined, constantly closing spaces that Celtic looked to exploit and make it count on the counter.
That script ought to have played out when Sandra Kulenovic found himself in space in the box, but he sent the ball woefully wide before missing another gilt-edged chance.
After the break, the tempo from both sides increased and space opened up.
Nicolas Kuhn cut inside and took on Maxime Bernauer, but the defender got in a great block to send the ball behind.
Dinamo responded, with Martin Baturina twice denied before Kyogo almost nipped in from close range and Carter-Vickers could not convert the loose ball.
It was the hosts who came closest late on. Kasper Schmeichel brilliantly denied Marko Pjaca, whose header appeared to be creeping under the bar before the Dane got a fabulous touch over to secure another welcome point.