Free resource · Beta

Make any HTML safe to paste into systeme.io

Paste any HTML on the left. The converter strips the head wrappers that systeme.io's Raw HTML element rejects (DOCTYPE, html, head, body, meta, title, link) and keeps your font @import alive. Everything else stays exactly as you wrote it.

Runs entirely in your browser Shows every change it made Free, no signup

Paste your HTML

systeme.io-ready output
Paste HTML on the left and click Convert. The cleaned output and a log of every change will appear here.
How it works

Three steps, one minute, zero broken pastes.

No upload, no signup, no API. The converter runs the full systeme.io transform list on your HTML directly in your browser.

STEP 01

Paste your HTML

A full document, a fragment, an AI-generated landing page, a snippet from an old site. The converter handles all of them.

STEP 02

Click Convert

The converter strips the head-only tags systeme.io rejects, converts your font link to an @import, and shows every change it made.

STEP 03

Paste into systeme.io

Copy the output, open a Raw HTML element inside any systeme.io page, and paste. The page renders without editor conflicts.

What it fixes

The full transform list.

Each rule below maps to a real conflict with systeme.io's editor. Every transform is conservative, reversible by editing the output, and logged so you can see what changed.

Outer wrappers stripped

<!DOCTYPE>, <html>, <head>, and <body> are removed. Only the inner content survives, since the Raw HTML element rejects those wrappers.

Font @import moved inside body

Google Font <link rel="stylesheet"> tags from the head are converted into @import at the top of a <style> block in the body, where systeme.io will actually parse them.

Meta, title, non-font links dropped

<meta>, <title>, and <link> tags that are not stylesheets get stripped. They are forbidden in the Raw HTML element and the page handles those concerns through systeme.io's SEO panel instead.

Bare * rules removed

CSS rules that lead with the universal * selector (e.g. *, *::before, *::after { box-sizing: border-box; }) are deleted, because they cascade into systeme.io's own toolbar and section handles. Scoped descendants like .card * and attribute selectors like [data-x*="y"] are kept as-is.

High z-index clamped to 19

Any z-index value above 19 (in stylesheet rules or inline style attributes) is clamped down to 19. systeme.io's editor chrome (toolbar, hover handles, section frames) sits at higher stacking values, so anything 20+ floats above the editor UI and blocks clicks. Values of 19 and below pass through unchanged.

FAQ

Common questions.

systeme.io's Raw HTML element rejects a small set of tags that belong in the document head: <html>, <head>, <body>, <meta>, <title>, and <link>. Pasting a full HTML document with these tags fails. The converter strips those wrappers and keeps everything else exactly as you wrote it. Font links get a special treatment: instead of being dropped, they are converted to @import at the top of a body <style> block so your fonts still load.

No. The entire conversion runs in your browser. Nothing is uploaded, logged, or stored on systeme.io's servers. The HTML you paste stays on your machine.

It strips outer wrappers (<!DOCTYPE>, <html>, <head>, <body>), drops <meta>, <title>, and non-stylesheet <link> tags, converts font <link rel="stylesheet"> tags into @import inside a body <style> block so your fonts still load, removes CSS rules that lead with the bare universal * selector (those leak into systeme.io's editor toolbar), and clamps any z-index above 19 down to 19 so your content cannot float over the editor chrome. Scoped rules like .card * and attribute selectors like [data-x*="y"] are kept as-is. Everything else in your HTML (other CSS, scripts, structure, classes, attributes) is preserved exactly as you wrote it.

Yes. The converter only strips a small set of head-only tags (and converts font links to @import). Your CSS, layout, classes, scripts, and content are preserved exactly. Anything that renders fine in a standalone HTML file will render the same way after the conversion.

Yes. The output panel is fully editable. Tweak anything by hand, then click Copy. You can also re-run Convert on the modified output to verify nothing new slipped in.

Yes, completely free with no signup. systeme.io itself is also free to start: 2,000 contacts and three funnels at $0, no credit card needed.

Build with systeme.io

Build the page in seconds, ship it in minutes.

Use the AI prompt generator to draft any page, the converter to clean it up, and systeme.io to host the whole funnel. Free to start with 2,000 contacts and three funnels.

Start free