Riyad Mahrez fired us ahead with a clinically taken finish in the 27th minute after City were on top in the first half.
But the Bundesliga side equalised midway through the second half when Croatian international Josko Gvardiol headed in from a corner.
Ilkay Gundogan went close to snatching a winner but neither side could force an advantage ahead of the second leg.
With Aymeric Laporte and Kevin De Bruyne feeling unwell, Pep Guardiola made three changes to his starting line-up with Manuel Akanji and Nathan Ake coming in, along with Riyad Mahrez replacing Phil Foden.
Bernardo Silva was pushed further forward as City took control of possession in the early stages in Germany.
While the match was played largely in the opposition half, City had to be patient to create opportunities with Jack Grealish and Kyle Walker, as an overlapping full-back, trying to stretch the pitch.
CITY+ | SUBSCRIBE TO ACCESS FULL MATCH REPLAYS
The first moment of danger came in the 13th minute when a Mahrez corner picked out Ruben Dias but his header was straight at Leipzig keeper Janis Blaswich.
And it was Mahrez who got the next sight of goal and the winger made no mistake with his finish. Grealish pounced on Konrad Laimer’s loose pass to feed Gundogan and the ball wriggled through his legs to Mahrez who drove a low shot into the corner.
City continued to push forward and Grealish went close with an effort that curled just over the bar after great work from Bernardo.
Corners continued to be a threat with Rodrigo twice winning headers that just drifted off-target and beyond an extra touch.
At the other end, City were difficult to break down and Leipzig didn’t have a shot on target until Timo Werner’s effort on the stroke of half-time that was comfortably collected by Ederson.
City carved out another good chance after the restart when Ake pulled the ball back for Mahrez, but his shot was blocked.
However, the home side began to look more dangerous following the introduction of substitute Benjamin Heinrichs, who headed a half-chance over the bar and drilled a better opportunity wide of Ederson.
The Brazilian keeper was then called upon to keep out Werner’s low cross and then to stop Andre Silva’s effort after a jinking run.
Erling Haaland went close to a second for City when he broke clear of Gvardiol brought his shot from a tight angle.
But the home side pulled level in the 70th minute. Ederson tipped Dominik Szoboszlai’s piledriver around the post but from the corner, Gvardiol rose highest to head in the equaliser.
Ilkay Gundogan almost restored City’s lead immediately but Blaswich was at full stretch to turn away his strike and away from the onrushing Haaland as the sides had to settle for a draw.
Man of the match Mahrez has a phenomenal record in Europe and his first-half strike was his 20th goal in the Champions League for all clubs.
The winger was City’s top scorer in last season’s run to the semi-finals with seven goals and also scored four goals in the knockout stages in the previous campaign.
In total, Mahrez has 29 goal contributions from 44 appearances for City with 16 goals and 13 assists.
And he showed his European class with the coolly taken opener when he whipped in a shot that deceived Blaswich.
Game of two halves
The statistics showed that City were on top in the first half but the home side were much stronger after the break.
In the first 45 minutes, Guardiola’s men had 74% possession and a passing accuracy of 94.6% and didn’t face a shot until the very last kick of the half.
But Leipzig improved after the break with 50.8% possession and created six shots with Ederson making a number of good saves.
City still had a passing accuracy of 84.7% and went closest to a winner after the 70th minute equaliser through Gundogan and a late penalty shout for handball.
RB LEIPZIG XI: Blaswich, Klostermann (Henrichs 46), Orban, Gvardiol, Halstenberg (Raum 88), Laimer, Schlager (Haidara 82), Szoboszlai, Forsberg (Nkunku 66), Silva (Poulsen 82), Werner.
Unused subs: Nyland, Nickisch, Simakan, Kampl.
CITY XI: Ederson, Walker, Akanji, Dias, Ake, Rodrigo, Gundogan, Bernardo, Mahrez, Grealish, Haaland.
Unused subs: Ortega Moreno, Carson, Phillips, Alvarez, Gomez, Perrone, Foden, Charles, Palmer, Lewis, Robertson
What it means
Everything is to play for in the rematch at the Etihad on Tuesday 14 March with a 20:00 kick-off.
The away goal’s rule has now been scrapped by UEFA so the game will be decided by the winner on the night with a place in the quarter-finals up for grabs.
We return to Premier League action with a trip to Bournemouth on Saturday 25 February at 17:30 (UK).
The game will be the fourth of five successive away matches with an FA Cup clash at Bristol City on Tuesday 28 February at 20:00.
Our game against Bournemouth will be broadcast live on Sky Sports with the FA Cup fifth round game on ITV.
Pep Guardiola reaction
“We had good chances in both sides, in both halves and we are going to decide in Manchester. I am happy for all game, not just the first half.
“It’s a competition where in the group stages, many important teams are out. And it’s difficult. We knew it. Our fourth game in ten days, away, the travels.
“We are a good team. We do many, many good things and we continue to do this.”
Ilkay Gundogan reaction
"The performance, especially in the first half, was really good. At the end as well, we had a couple of chances to get the winner.
"Unfortunately it was not meant to be. It was the expected difficult second half.
"At the end of the day, it's a good result to take home. Obviously now, we have to finish the job at the Etihad."