I'd like to use skeleton screens to indicate when a page is loading. Usually, this is great—it makes the experience seem faster while still functioning as a progress indicator.
The thing is, skeleton screens are at best indeterminate progress indicators: they tell the user that something is loading, but don't give any indication as to how long that might take.
I have a screen in mind that sometimes take a while to load. The system will attempt to load the screen for up to 30 seconds, at which point it will display an error. I feel like a determinate loading indicator would be better here—It lets the user know that they have a finite amount of time to wait before the screen finishes the process it is in.
Can you think of a way to combine the two? A skeleton screen for a few seconds with a determinate spinner that shows up after? Am I wrong to want to show a determinate progress indicator?