Here there are two cases:
Are you creating an extract or refreshing one?
If you're doing incremental refresh for an extract when are you doing it?
Is you data warehouse or database, to which your extract is connected, loading completed is it loading?
Please check these.
I am using daily auto incremental refresh at 9:30am. Normally it takes 10min but some days i takes more than 90min and fails.
Database loading completes before 9:30am everyday.
I had the same problem. My data warehouse doesn't load sometimes, then I have to manually full refresh it some times from tableau server
I have had a similar problem with an Oracle database, on which an incremental refresh that usually lasted 15-20 min sometimes did not work after 2 hours. This was a problem o the Oracle side.
A full refresh worked.
Anyway, you may extend the timeout for extract refresh if you have access to Tableau server.Here is the link to change the timeout value
You may also change the extract.lost.holdoff setting,
tabadmin set extract.lost.holdoff 999999 - just put a value = timeout value + 600 s
Hope it helps