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.