Uploading customised Horizon theme to new store

Topic summary

A user customized a Horizon theme for one store and attempted to transfer it to a new store by downloading and uploading the zip file. While the zip contains all files, some complex pages failed to appear in the new store.

Likely causes identified:

  • Template JSON files may reference assets (images, videos) with old store IDs/URLs that don’t exist in the new store
  • Products, collections, pages, metafields, and metaobjects must exist in the destination store before theme upload, or sections referencing them may be dropped silently
  • Custom code files may fail Shopify’s validation check during upload
  • CSS rules using section IDs (like #shopify-section-sections--19177370550326__announcement) won’t work since IDs differ between stores

Suggested solutions:

  • Remove images/videos from problematic page settings in the old store before re-exporting
  • Manually recreate pages one-by-one in the theme editor to identify specific errors
  • Edit JSON files to replace missing asset references with empty strings, then re-add assets
  • Use Section “Custom CSS” instead of ID-dependent CSS rules
  • For developers: consider using GitHub and Shopify CLI for more controlled transfers

The issue remains unresolved pending further troubleshooting.

Summarized with AI on October 23. AI used: claude-sonnet-4-5-20250929.

I spent a lot of time creating a customised theme using Horizon with the purpose to then use that theme for a different store using the same brand/concept (but different domain, products, etc).

Research suggests that I should be able to download the theme then upload the zip file to the new store - which I have done - but some of the more complex pages have not uploaded into the theme. They are in the zip file though.

I’ve spent a lot of time with support and researching myself and even trying to recreate the custom blocks but nothing is working. Any suggestions?

HI @BMKang

Welcome to the community.

First, I would suggest the use of GitHub and Shopify CLI, but if you are not a developer, a zip should work fine as well.

The issue might be in template settings, JSON files that hold all settings. If there is an issue with them page will not show. Usually, the issue is that you set some image/video that is missing from the new store, or it has a different ID/URL. I think products and collections in settings should not be a problem, but those files usually break the theme.

So if that is an issue, you could try in the old store to remove some images and videos from settings, I mean from pages that do not show in the new theme, and try again.
Also, similarly, in the new theme, try to add page by page manually. Use the theme editor and create brand new files, with the same names and copy the content. Page by page. When you try to save, it might give you an exact error. If not and just shows some error, try to edit the JSON file and replace image/videos with an empty string ‘’. And when it finally gets saved, add your images/videos again.

1 Like

All objects, like images, products, pages, metafields and metaobjects must exist in new store before you upload your theme, or it may drop sections which reference these objects, or reset those settings without any notice.

If you’ve edited theme code – even some files may be dropped from the theme upload if they fail the check.
In this case make sure everything is uploaded and try to manually recreate and copy/paste code for those files which did not make it.

If you’ve added some CSS with ID-dependent rules like

#shopify-section-sections--19177370550326__announcement p {
  color: red;
}

These will fail as well since section IDs would be different in new store. In this case, use Sections “Custom CSS”.

Otherwise, hard to tell without seeing your case.