An AFP correspondent at the site in Sarmada in Idlib province near the Turkish border said the explosion of unknown origin caused two buildings to collapse.
Rescue workers used bulldozers to remove the rubble and extract trapped people from the flattened buildings, the correspondent said.
Rami Abdel Rahman, head of the Syrian Observatory for Human Rights monitoring group, said a previous death toll of 12 increased after more bodies were retrieved from the rubble.
“The explosion occurred in a weapons depot in a residential building in Sarmada,” said the head of the Britain-based monitor, which relies on a network of sources inside Syria.
But the cause of the blast was “not yet clear”, Abdel Rahman added.
He said most of those killed were family members of fighters from Hayat Tahrir al-Sham (HTS), an alliance led by jihadists from Syria’s former Al-Qaeda affiliate, who had been displaced to the area from the central province of Homs.
A rescue worker carried the motionless body of a small child from the wreckage to an ambulance, the AFP correspondent said.
White Helmet rescue workers attempted to lift part of a floor of one of the buildings with a tall crane. Nearby three young boys watched on in silence, perched on a rock.
Behind mounds of rubble, the facade of a building was scorched black, due to a fire after the blast.
A civil defence source told AFP that women and children were among the dead. But rescue workers had pulled out “five people who were still alive”, the source said.
Most of Idlib is controlled by rebels and HTS, but the Islamic State jihadist group also has sleeper cells in the area. The regime holds a small slither of southeastern Idlib.
In recent months, a series of explosions and assassinations – mainly targeting rebel officials and fighters – have rocked the province.
While some attacks have been claimed by IS, most are the result of infighting since last year between other groups.
In recent days, regime forces have ramped up their deadly bombardment of southern Idlib and sent reinforcements to nearby areas they control.
On Friday, 12 civilians, three of them children, were killed in regime bombardment of the towns of Khan Sheikhun and Al-Tah.
President Bashar al-Assad has warned that government forces intend to retake Idlib, after his Russia-backed regime regained control of swathes of rebel-held territory in other parts of Syria.
On Thursday, government helicopters dropped leaflets over towns in Idlib’s eastern countryside urging people to surrender.
The United Nations appealed the same day for talks to avert “a civilian bloodbath” in the province.
Jan Egeland, head of the UN’s humanitarian taskforce for Syria, said: “The war cannot be allowed to go to Idlib.”
Around 2.5 million people live in the province, half of them displaced by fighting in other regions of the country.
More than 350,000 people have been killed and millions displaced since Syria’s civil war started in 2011 with the brutal repression of anti-government protests.