Often tankers sit out and wait for the oil price to change marginally (yes, really - its that silly). Other than that, could be many reasons including bunkering (via smaller ships), full port, repairs/servicing, etc.
It's not that silly when you work it out. You have a ship holding 2-3 million barrels of oil and a 20-40 crew. It looks like the market price of light sweet crude varies by as much as $1 per barrel per day. Which means a difference of 2-3 million dollars if you come to port today instead of yesterday.