Theme work is priced per job and the scope is usually clear, which makes this one of the easier Shopify hires to get right — provided you ask for the correct thing.
Say which theme and which version. "I need help with my theme" tells a developer nothing. "Empire 11.2.0, heavily customised, need to get to 13.x without losing our custom product page sections" gets you an accurate quote in one reply. Your version number is in Online Store → Themes → the theme's action menu.
Decide first whether you're updating or rebuilding. If your customisations are light, a developer can usually port them onto the latest version for $600-$2,500. If two years of accumulated edits sit across a dozen files, rebuilding the customisations cleanly on the current version sometimes costs less than untangling them — and leaves you in a better position for the next update. Ask the developer to price both and explain which they'd choose.
Ask how they handle future updates. The good answer involves keeping customisations isolated — in separate snippets and section files rather than edited into core theme files — so the next update is a merge rather than an archaeology project. A developer who edits directly into theme.liquid is creating the same problem again for whoever comes next.
Get speed diagnosed before you pay for optimisation. If the store is slow, the cause is usually apps rather than the theme. An audit ($300-$900) tells you which. Paying for theme speed optimisation when three apps are the actual problem is a common way to spend $2,000 and see no change.
Check they've worked on your specific theme. Empire and Atlantic are architecturally different. A developer who knows Empire's filtering system well may not know Atlantic's. Ask for a store they've customised on the same theme.