Some Tesco customers have been paying more than they thought because out-of-date offers were not being applied at the till.
An undercover reporter for BBC Inside Out was overcharged on multi-buy offers at two-thirds of they shopped at.
Out-of-date offers were discovered at 33 out of the 50 stores visited by the programme over three months in the West Midlands, Liverpool and Leeds.
Martin Fisher from the Chartered Trading Standards Institute said Tesco could have been breaking the law by breaching the Unfair Trading Regulations 2008.
He told the BBC: "“The underlying problem is that people don’t complain because they don’t realise. Very few people remember [the price] from the shelf to the till so complaints are extremely low."
Tesco has now pledged to check prices for every item at all of their stores following the probe.
A spokesman for the supermarket said: "We take great care to deliver clear and accurate price labels for our customers so they can make informed decisions on the products they buy. "We are disappointed that errors occurred and will be working with the stores involved to reinforce our responsibilities to our customers."