Face coverings must be worn in shops and supermarkets in England from Friday 24 July, Boris Johnson has announced.
Enforcement will be carried out by police - not retail staff - and anyone failing to wear a face covering while shopping will face a fine of up to £100, or £50 if paid within 14 days.
The rules to tackle coronavirus will be the same as those currently applicable on public transport in England, which means children under 11 and people with certain disabilities will be exempt.
The wearing of face coverings became compulsory in Scotland last week and around 120 countries - including Germany, Spain, Italy and Greece - now require coverings to be worn in public places.
Announcing the move, a Number 10 spokesperson said: "There is growing evidence that wearing a face covering in an enclosed space helps protect individuals and those around them from coronavirus.
"The prime minister has been clear that people should be wearing face coverings in shops and we will make this mandatory from July 24."
The decision, due to be outlined by Health Secretary Matt Hancock in a Commons statement on Tuesday afternoon, follows four days of conflicting statements from ministers and demands from opposition MPs for clarity.
The Courtyard Announces First Wave of Headline Acts for The Amp
New banking hub opens in Leominster
Ellie Chowns blasts ‘ridiculous’ Starmer at PMQs
Hereford car park charges to rise, along with free offer
Senior figures clash on Hereford bypass which ‘won’t happen’
New takeaway plan for former bank
Child serial killer Lucy Letby will face no further criminal charges
35-home estate planned for town