Been on both sides of this one. A few years back I hired a plumbing sub hourly for a bathroom redo and watched the invoice climb way past what I figured. Felt awkward saying anything becuase he was doing real work, but half those hours were him fixing stuff he'd allready 'finished' the week before. That stung worse than the money.
Here's what I do differently now. Before anyone swings a hammer, I get the hourly rate and an estimated hour count in writing, even if it's just an email that says 'expect roughly this many hours unless something changes.' Then the big one: any extra work gets a text from me saying 'yes, do it, here's my budget for it' before it happens. Verbal agreements on a job site are worth nothing three weeks later. I also ask for a quick end-of-day note on what got done and what's next. Takes them two minutes, and it gives me a paper trail if the hours go sideways. When a sub knows you're tracking daily, the mystery hours mostly stop showing up. And if they hit a surprise like rot or bad pipe behind a wall, I want photos before anything gets covered up, because that's your proof the extra time was real and not padding.