@libertybele @EC EC has the right idea. You really shouldn't do Christmas shopping too close to Christmas. After Thanksgiving up till Christmas is the prime time for things to go wrong. Yes, I know many people take advantage of Cyber Monday because that's when there are good deals. But I have found some equally good or even better deals in October.
Some companies are extremely efficient when it comes to online ordering. They can even get your gift to the recipient on Christmas Day, if need be. But the vast majority of these companies are not that efficient. Many of them hire seasonal employees who have little or no experience and these seasonal employees only get a bare minimum of training, if that. In addition, many of these seasonal employees are college kids who would rather be out partying with their friends. They do only the bare minimum of work, maybe They are just there to collect a check.
If you order your gifts before the seasonal help arrives, you have a much better chance of your purchases being correct and delivered on time.
UPS, FedX and the Post Office also hire seasonal help. They aren't any better than the ones hired by the stores. But to be fair, these delivery services have a tougher job. Not only are they deluged with Christmas gifts, they also have to make their usual deliveries. I try not to order my usual things like my prescription meds till after the holidays. These delivery services have enough on their plates.
If you are going to order close to Christmas, splurge for express delivery (2 day maybe?), if it's offered. That way you are more likely to get your order on time and you will have time to make things right if something goes wrong. Most companies have cutoff dates for the normal (often free) delivery. After that date, you have no choice and must order express or overnight delivery.
You also want to be sure you order from a company with good customer service when things go wrong. In my experience, Amazon bends over backwards to solve a problem and makes things right. Some companies, you get someone who can't speak or understand English (and I'm not talking about immigrants -- these are people born and educated in this country.) They have no comprehension of what your problem is, they make you go through hoops to return the merchandise and it's like pulling teeth to get your account credited. I once ordered something from Amazon and it was all wrong. Amazon allows you to print a return label and have the mailman or UPS come to the house to pick it up. Only...I don't have a printer. Called Amazon and explained my dilemma. The customer service person said, don't bother returning it. Give it to someone else if you like. That's what I did. And Amazon issued a credit without the return.