The short answer

Start with an existing theme and test it against your real requirements. Adapt it if it covers most of them. Build custom when your catalogue or brand needs behaviour a theme cannot deliver cleanly, and when you are prepared to maintain that code.

Test a theme with real content

Theme demos use content chosen to flatter them. Before deciding, try your longest product name, your largest variant set, your real photography and your actual collection size. Test on a phone. Many apparent design problems appear only then.

Compare the three approaches

ApproachGood whenWatch for
Existing themeStandard journeys, smaller ranges, tight timelinesLooking similar to other stores; settings you do not need
Adapted themeMost needs are met, with a few specific gapsHeavy edits can make theme updates harder
Custom themeDistinct experience or unusual catalogue needsHigher upfront cost and long-term code ownership

Ask what each gap is worth

List each thing the theme cannot do. For each, ask how many customers it affects and what happens if it waits. A short list of real gaps might justify an adapted theme, while a preference for a different layout might not justify custom work.

Count the apps as well

A theme plus many apps can end up slower and harder to manage than a slightly more custom build. Note what each app does, what it loads on the storefront and what it costs each month.

Plan who edits the store

Whichever route you choose, your team should be able to make everyday changes in the Shopify theme editor. Reusable sections and sensible settings matter more than whether the code began as a theme.

A limit of this advice

This is general guidance. Specific needs, especially around checkout and B2B, can depend on your Shopify plan, so check current documentation when you scope a project.