Upvote:5
In general it's always going to be due to "weather" in one form of another.
The most visual version of this is when there are storms en-route, and the different course is chosen to avoid the storm.
However even when there's no storms, there are still winds - and they can vary dramatically depending on the actual route taken, as well as the altitude the plane in flying at.
Specifically for the US, the "Jet Stream" generally means winds from west to east, however their exact path and strength varies on a a day-by-day and even hour-by-hour basis, so airlines will frequently vary their route to avoid particularly strong head-winds.
For example, consider this map of the Jet Stream winds from last Wednesday - you can see how specific routes across the country would result in lower headwinds (perhaps not from Baltimore in this particular case, but consider for a route such as Atlanta to Las Vegas)
Additionally avoiding particularly bad turbulence can also cause them to pick a specific route, although other than during storms this would normally be done by changing altitude rather than route.