Not pushing for at least one night hotel stay is what's not reasonable, here. You're talking a 20 hour day on the clock, that does not include the time before and after arriving at the office. Even assuming the employee lives 15 minutes away from the office, you're still talking not a 20 hour day, but not less than 21.5, assuming they can get up, eat, get dressed and be out the door within an hour, and they crash as soon as they get home. Heaven forbid they live farther away or need any amount of time to wind down after they get home before they go to sleep.
Do a cost comparison and risk analysis:
- Losing even a couple of hours of sleep is akin to driving under the influence. Asking this person to drive 3+ hours total in a time frame with nearly 24 hours without good sleep is risking the lives and safety of both the employee and anyone on the road at that time. Last I checked, the cost of a lawsuit and AD&D insurance payout was far more than one person's salary for a day or two and an extra night in a hotel.
- After that kind of day, the employee will be lucky to get up in time to even report to work the next day, let alone be productive, so you're not actually "saving" that day (they're exempt salary, anyway, so you're paying them regardless of how many hours they worked, and they just clocked nearly three days' worth of time for the sake of the company).
- Starting at 3am, plus the drive, plus the stress of the flight will make the employee's ability to focus on the training nearly impossible, making the training itself a waste of time and money.
- Any decent-sized company will have deals with hotels, bringing the cost of the hotel itself down to as little as $50/night. So even two nights will cost only $100, plus an extra meal or two.
- Getting an evening flight the day before will still allow the employee to work the day before (so no lost productivity), while still being fresh for the training, and a morning flight the next day won't cost you any more time/productivity, in reality, than that insane schedule (yes, on paper, it does, but consider the previous points). The employee may even be able to work up to half a day the day after training, depending on flight times (and, depending on the nature of the employee's work, they may be able to work remotely and have a later flight).
Even not taking the above into account, it's not uncommon for companies to account for at least one night hotel stay. Many companies will do that even for people they're just interviewing. At least one night stay is not only not an unreasonable request, but should have been built in to begin with and should be expected, especially in a circumstance like that. As a general rule of thumb - if you're expecting the person to be on the clock in a day for more than what'd you'd normally expect out of an employee, you probably need a hotel.
Two nights (one before, one after) is also not uncommon, but can go either way in a short trip like this, especially if the travel time is reasonable. That would probably depend more on the individual circumstance. Is the flight crossing time zones? How intensive or complex is the training? How intensive is the employee's usual work? If the employee is a high-level knowledge worker, the training is intensive or complex (or otherwise needs a high level of retention to successfully take home), and/or the trip crosses time zones, then you may want to try for the second night. A refreshed employee is going to retain what s/he learned better, and is going to be more productive when s/he's back at work than one who's exhausted by other things. The second night isn't an unreasonable request, but doesn't necessarily need pushed too hard for. It might also be good to ask the employee if they're okay with flying back the same night.
Barring getting the second night, it might be a good courtesy for you to extend to the employee the option to only work in the afternoon following the training, allowing the employee to get adequate rest. Such a courtesy can result in a more productive employee, due to their trust in you to treat them like an adult and a human being (morale boost!), and due to being able to get some extra rest. Having a butt in a chair from 9am to 5pm does not equal productivity.