> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ecomelixir.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Updating safely and recovering

> Update without losing content, choose between stable and beta, and roll back when something breaks

The theme updater at [app.ecomelixir.com](https://app.ecomelixir.com) preserves your settings and section configurations. For the basic procedure see [Updating](/updating).

This guide covers the part that matters when a store is live: updating without risking the storefront, and getting back if something goes wrong.

<Warning>
  Never run an update directly on your published theme. Duplicate it, update the duplicate, test it, and publish only after it passes.
</Warning>

## The safe update sequence

<Steps>
  <Step title="Duplicate the live theme">
    In Shopify admin, **Online Store → Themes → ⋯ → Duplicate**. You now have a copy to work on and an untouched original.
  </Step>

  <Step title="Download a backup">
    **⋯ → Download theme file** on the original. Keep the ZIP somewhere you can find it.
  </Step>

  <Step title="Record your versions">
    Note the version you are on and the version you are moving to. You will need both if you have to ask for help.
  </Step>

  <Step title="List your custom code and critical apps">
    Write down every custom Liquid, CSS, or JavaScript change, and the apps your store cannot trade without.
  </Step>

  <Step title="Update the duplicate">
    Run the updater against the duplicate, never the published theme.
  </Step>

  <Step title="Test the duplicate">
    Work through the checklist below before publishing anything.
  </Step>

  <Step title="Publish">
    Publish the updated copy, then recheck the live store. Keep the previous theme in the library until the new one has been stable for a few days.
  </Step>
</Steps>

## Post-update test checklist

| Area | What to confirm |
| - | - |
| **Homepage** | All sections present, in order, with their content |
| **Navigation** | Menus, dropdowns, account, country, language, and cart icons |
| **Product page** | Variants, media, price, add to cart, bundles, subscriptions |
| **Cart** | Drawer opens, gifts and discounts apply, checkout link works |
| **Mobile** | Header, images, text, buttons, and cart on a phone-sized screen |
| **Languages** | Translated strings still present, selector still works |
| **Apps** | Reviews, subscriptions, bundles, translation, and marketing apps |

Test in an incognito window as well as the editor preview. The theme editor can show a different result from the live storefront.

## What is preserved and what is not

| Preserved | At risk |
| - | - |
| Theme settings: colors, fonts, layout | Direct edits to Liquid, CSS, or JS files |
| Section configurations and ordering | App blocks tied to a removed section |
| Template assignments | Custom CSS selectors that reference old class names |
| Custom CSS entered in theme settings | Sections retired in a newer version |

<Note>
  Custom CSS you entered in **Theme settings → Custom CSS** survives an update, because it lives in settings rather than in code. The selectors inside it can still go stale if class names changed. See [Custom CSS](/guides/custom-css).
</Note>

## Stable or beta

| Release | Use it when | Avoid it when |
| - | - | - |
| **Stable** | You want the recommended production version and the standard support path | You need a feature that exists only in beta |
| **Beta** | You are testing a new feature in an unpublished copy and can report issues | The theme is live, revenue matters, or you have no rollback plan |

<Warning>
  Do not install a beta on a live store without a backup and a tested rollback. Beta releases can change between builds.
</Warning>

## Recovering from a bad update

<AccordionGroup>
  <Accordion title="Sections or content disappeared">
    Do not publish the updated copy. Your original theme is still in the Theme Library, untouched, because you updated a duplicate. Go back to it. Then compare the two copies to identify what is missing and raise a ticket with that list.
  </Accordion>

  <Accordion title="The design changed unexpectedly">
    Check the sections that changed for their own color and style overrides. An update can reset a section that was relying on a default which has since moved. See [Set up your brand](/guides/branding) for how palette inheritance works.
  </Accordion>

  <Accordion title="My custom CSS stopped working">
    Class names can change between versions. Re-inspect the element, get the current class name, and update the selector. See [Custom CSS](/guides/custom-css).
  </Accordion>

  <Accordion title="The update will not start or does not finish">
    Confirm the dashboard still shows your store as connected, and that the license is assigned to this store. See [Activate your license](/guides/license-activation).

    If it still will not run, move to the new version by hand instead, see
    [Updating manually when the merger fails](/guides/manual-theme-update).
  </Accordion>

  <Accordion title="I already published a broken update">
    Republish the previous theme from the Theme Library immediately to restore trading, then investigate on the duplicate. If the previous theme is gone, upload the backup ZIP you downloaded.
  </Accordion>
</AccordionGroup>

## If it is still not resolved

* Your current and target theme versions
* A list of the missing sections or files
* Screenshots of before and after
* Your custom code locations and your app list


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.