"It's too early to declare Baiji liberated," the official told CNN. Baiji is in northern Iraq, about 40 kilometers (25 miles) north of Tikrit.
The United States has concerns as well about the role Iranian weapons and forces might be playing in the battle.
According to the U.S. official, Iraqi forces along with Shiite militias began moving into the southern part of Baiji and have worked their way north, clearing about half of the city.
But they are encountering snipers and improvised explosive devices, so the movement is slow and deliberate, the official said.
Iranian artillery spotted
One concern for the United States is that satellite imagery shows Iranian artillery firing from a point southeast of Baiji.
However, the United States does not yet know if Iranian troops are manning the weapons or if Iran turned the artillery over to militias, the official said.
Iraqi forces have been able to punch through some outer areas to establish a supply line to a nearby refinery and are trying to increase their foothold there after losing most of the refinery ground to ISIS weeks ago, according to the U.S. official.
Iraqi officials in Baiji confirmed to CNN on Tuesday that, despite earlier statements, the city is not completely under the control of government forces.
Iraqi security forces, backed by Shia paramilitary forces, are dealing with pockets of resistance in northern Baiji's al-Muhandseen neighborhood, the officials said.
Hundreds of booby traps have been defused in neighborhoods over which Iraqi officials now control, but many more exist, the officials said.
Two top Iraqi security officials in the city of Baiji and a third at the Baiji refinery gave the information to CNN. They declined to be named because they were not authorized to speak to journalists.
Battle for control of refinery
The Iraqi officials said the city's downtown area and government complex had been cleansed of any threat.
They said government forces had retaken more than 75% of the Baiji refinery.
They said they had given intelligence information to the joint command center and were hoping for U.S.-led coalition airstrikes on ISIS positions on the city's northern and northeastern edges, and on the northern side of the refinery.
Most of the ISIS fighters have fled Baiji and headed north toward Mosul and other areas, the Iraqi security officials said.
Suicide blast kills 2 security officers
And southwest of Baghdad, other challenges remain.
On Tuesday, a suicide bomber killed two security officers at the entrance to Ammiriyat Falluja's local council building.
Two would-be suicide bombers disguised in Iraqi army uniforms tried to enter the building, but council security officers confronted them, Faleh Essawi, deputy chief of the Anbar provincial council, and the city's police chief told CNN on Tuesday.
One of the would-be bombers was killed immediately, the officials said. But the second managed to detonate his vest, killing two security officers and injuring three others, the officials said.
Meanwhile, Ammiriyat Falluja has been targeted by several mortars fired by ISIS militants north of the city.
Ammiriyat Falluja is 75 kilometers (45 miles) southwest of Baghdad and 25 kilometers (15 miles) south of Falluja.