No idea but I would suspect caching, on the Online Server and/or browser. If you don't get an answer I would recommend working with Tableau Support.
I second Toby's comment that it could be a matter of timing and caching from the Tableau Online instance. Especially given that you are running hourly refreshes.
I don't think you are doing anything wrong if you see success more frequently than you experience these issues.
Remember that the data refresh happens within a window and not necessarily exactly at the same time, for the same duration, every hour.
If it's a persistent issue, yes please create a support ticket either through your customer portal or support.tableau.com. If for no other reason, so our engineers can be made aware and the issue documented.
Regarding your comment: "I am uploading updates via Tableau Desktop once per hour. The file is large and sometimes I get errors, but retry." Are you using a full extract refresh or an incremental?
If you are running a full extract refresh hourly, and starting to experience time-out issues, or the refresh not completing successful and you suspect the file size is the issue, time to think about pro's and con's of making the hourly refresh incremental, saving a full refresh for something like a weekend overnight.
In addition, there are other strategies to reduce the size of your extract (and subsequent refresh) such as hiding unused dimensions and aggregating the extract data only to the visible dimensions in your views. (Decisions you make at the time of creating a new extract).
Best resource for more info on that topic is here:
Quick Start: Incremental Refresh
Data Extract Tips and Tricks
Quick Start: Aggregate to Visible Dimensions
Best Practices for Designing Efficient Workbooks (Best document on designing for optimal performance)
Please note this response, if you find it helpful and/or if it thoroughly answers your question.
Tableau Online Deployment Advisor