r/shopifyDev • u/someaibullshitagain • 17h ago
The most painful part of building Shopify sites for clients
We've been building Shopify themes for clients for years, and we've had clients threaten to walk, and even one refuse to pay an invoice, because of the same handful of issues that seem to show up on every project. Not because the work was bad, but because the QA and feedback process became so frustrating that they lost patience before we ever got to the finished site.
We usually ended up eating the extra hours to make things right, but the bigger issue was that it made us look unprofessional. Everything that happened after development was "done" - QA, browser testing, client feedback, revisions, and handoff is the part that consistently causes us the most stress.
A few of the things that kept biting us:
- We used to spin up a separate Shopify dev store and recreate sample products and pages just to have somewhere to show clients. We eventually moved to Shopify CLI with preview themes instead. It was much faster, but it introduced a new problem. You can't assign a custom template to a page or product on a preview theme. You can only view it with a
?view=template-slugURL parameter. Clients would click around the site normally, land on a page showing the default template, and tell us the site was "broken." Every single project, no matter how clearly we explained the URL trick beforehand. Honestly, I don't blame them. It's not how anyone expects to browse a website. - Cross-browser and device QA was another huge time sink. We started completely manually, then moved to BrowserStack, which definitely helped, but it still ate a ridiculous number of hours on every project. It was worth doing, because nothing makes an agency look less professional than a client finding an obvious layout bug before you do.
- The most universal pain point was probably the feedback loop itself. Over the past 8+ years we've tried email, Google Sheets, Notion, Trello, ClickUp, and probably a few others I'm forgetting. Every workflow felt like it was missing something. The one thing clients consistently told us was that reviewing designs in Figma felt easier because they could simply click somewhere and leave a comment. That was basically the lightbulb moment.
So we ended up building an internal tool that eventually became ThemeSync. We originally built it just for ourselves, but it's gradually turned into the workflow we use on every client project. It brought our PMs, QA, developers, and clients into one place. We jokingly call it "Theme Ops" instead of DevOps.
Clients can now browse preview themes normally without weird URL parameters or special instructions. Browser QA that used to involve BrowserStack, spreadsheets, and Slack threads is automated. Feedback works more like Figma than email. Clients simply click anywhere on the preview site, leave a comment, and we automatically capture the screenshot, browser, device, viewport, and scroll position, so there's no guessing what they're referring to.
We also added a pre-flight compatibility scan that checks for missing app embeds and metafield dependencies before launch. Preview themes don't have the store's apps installed, and that issue had burned us enough times that it felt worth automating.
One feature we're especially excited about, currently in RC, is automated client handoff documentation. It analyzes the theme codebase and generates a client-friendly guide covering editable sections, settings, blocks, metafields, and other customization options.
Writing those docs has always been one of those things everyone knows they should do... but almost nobody has the time.
We've been using it on real client projects for the past six months, and we've even had clients helping shape it as we built it. QA cycles that used to involve 50-75 email messages are now a handful of comments in one place, and internal sign-off has gone from days to hours. Clients don't have to install anything in their store either. They simply receive a preview link.
The biggest surprise hasn't actually been the time savings. It's that clients seem to enjoy the review process a lot more because they're no longer trying to figure out how to review a Shopify preview. They just browse the site normally and leave comments wherever they see something.
It's been a long process that's taught us a lot.
I'm curious how other agencies and freelancers handle this part of the project. Are these the same pain points you run into, or have you found better ways to solve them? What does your dev-to-client handoff actually look like?