Cans, milk cartons and soap bars were piled high under red "hyper saving" signs at a South African supermarket chain in Johannesburg as shoppers filled trolleys.
The country is preparing for a 21-day lockdown to combat the deadly coronavirus, which has infected more than 500 people across country since it was first detected earlier this month.
When the clock strikes midnight on Thursday, South Africans will join more than 2.5 billion other people in confinement as the world struggles to restrain the pandemic.
Only "essential" trips to grocery stores, pharmacies and medical appointments will be permitted during the lockdown, which will be enforced by army troops.
"We have never experienced this," said Simangele Ntshali, 40, as she slowly moved down the queue to the checkout counter at the other end of the store.
"It is not something that we had budgeted for (and) we don't understand how the lockdown is conducted, hence we want to stock up," she explained, trolley piled high with diapers and baby food for her toddler.
Standing in front of Ntshali in queue, 53-year-old Primrose Bandla nodded in agreement.
"There is a fear," she said. "People are buying in bulk unnecessarily, but it's a scary thought to think that by the time you go buy there could be nothing to get."
President Cyril Ramaphosa announced the lockdown on Monday, after South Africa recorded more coronavirus infections than Egypt -- making it the hardest-hit country on the continent.
More than 550 cases have been confirmed so far and the number is expected to continue rising.
Uncertainty about the future has seen citizens stocking up on essentials, despite assurance by the president that food stores would remain open and a plea to avoid panic buying.
For Nomonde Khethani, 47, the rush to the supermarkets was also about making the most of "pre-lockdown" promotions.
Stores across the country are offering three-for-two deals for pantry basics, as well as for biscuits, potato chips and other popular "stay-at-home" snacks.
Most salaried workers get their pay cheques this week, prompting people to spend more, and many also fear a hike in prices after the lockdown.
"Certain prices have already increased," said Khethani, claiming that long-life milk was slightly more expensive than the previous week.
"It's scary, and so you don't have a choice but to grab what you can," she exclaimed, adding that she now had three idle teenagers to feed.
"They have been sitting at home," said Khethani, her shopping basket loaded with blocks of cheese and sausages. "They are bored and boredom gets them to food."
Despite the array of disruptions already caused by coronavirus, most shoppers seemed ready to heed the new order to remain home.
Calls for a lockdown in South Africa circulated on social media last week, even after the government closed borders, shuttered schools and banned public gatherings of more than 100.
"It (coronavirus) is killing people," said Bongani Tyanini, as he chucked one of the last remaining packs of toilet paper into his trolley.
"I am very worried," he added. "This thing is increasing."
The 24-year old driver said he planned to stay home with his wife and buy a play station to pass time.
"It's not really in our budget," he chuckled. "But it is going to be boring otherwise."
At Johannesburg's central Park station, hundreds of people lined up for bus tickets to join family outside the city before the lockdown.
"Being alone for 21 days will be the most stressful thing that can happen," said 30-year old hairdresser Yoli Dyowi, as she queued for a seat on the next coach to the Eastern Cape province.
Most of the day's tickets were sold out, the line was barely moving and travellers stood next to each other defying the social distancing advice.
While Dyowi dreaded the thought of being stuck alone in Johannesburg, she too welcomed the government's decision.
"It will be a good thing to have less people moving around," she told AFP. "I just hope it will actually make a difference."