HTML to Liquid Converter
Paste HTML and CSS and get back a Shopify section, with its editable text, images and links pulled into the schema.
What gets converted
- Each headline or paragraph of copy becomes a
text,textareaorrichtextsetting, output through{{ section.settings.id }}. - Each
<img>becomes animage_pickersetting; the alt text and dimensions carry over. - Each link's
hrefbecomes aurlsetting. - Any
<style>block moves into a{% style %}tag, scoped to#shopify-section-{{ section.id }}so it can't leak into other sections.
Pick Keep the exact HTML, just wrap it if you'd rather not make anything editable yet, for example when you're only testing that a design works as a section before deciding what merchants should be able to change.
Repeated elements
If your HTML has a repeated pattern (several logos, a row of cards), choose Turn repeated items into merchant-added blocks. The tool turns one instance into a block type with its own settings, so merchants can add, remove and reorder them from the theme editor instead of you editing code for every new item.
Adding it to your theme
- 01
Open Edit code
Online Store > Themes > ⋮ > Edit code, then Add a new section and name it to match the generated filename.
- 02
Paste and save
Paste in the full file, including the
{% schema %}block at the end, then save. - 03
Add it to a page
In the theme editor, Add section and pick it from the list; fill in the settings it created.
Questions people ask
Will my exact design survive the conversion?
The HTML structure and class names are kept as given: only text, images and links are swapped for Liquid output, and CSS moves into a scoped {% style %} tag. The layout itself isn't redesigned.
Can I convert a whole page, not one section?
Convert it piece by piece: a hero, a features row, a footer CTA, and so on. A single Shopify section works best as one focused block of a page, not the entire layout.
What if my HTML uses JavaScript?
Paste the markup and CSS; note any JavaScript behavior you need in the request text, since interactive behavior needs to be reviewed rather than blindly converted.
Does this work for theme blocks too?
The output is a section. For something reusable inside multiple sections, describe it fresh with the AI Shopify section generator and ask for a theme block.
Related tools
Last reviewed 30 September 2026.
Sources: Shopify.dev: Section schema · Shopify.dev: Input settings reference · Shopify.dev: Liquid {% style %} tag
