Five ways to put a CMS behind an HTML site that already exists — what each one really costs you in setup time, code changes and hosting moves. We make one of them, and we say plainly where it's the wrong answer.
The fastest way to add a CMS to an existing HTML website is to attach a hosted editing layer with a single script tag. The markup, the styling and the hosting stay exactly as they are, and the content becomes editable in place — usually in under five minutes.
The alternatives all mean touching the build. Rebuilding in WordPress replaces how the pages are generated. A git-based CMS needs a repository and a deploy pipeline. A headless CMS needs a developer to model the content and wire it into templates. A flat-file PHP CMS needs PHP on the server and write permissions on the web root.
Choose by two questions: does the code have to change, and does the client need an account somewhere. Everything else is detail.
| Script-tag layer | WordPress rebuild | Git-based CMS | Headless CMS | Flat-file PHP | |
|---|---|---|---|---|---|
| Examples | Qixoo | WordPress + a themeElementor, Bricks | TinaCMS, DecapCloudCannon, Sveltia | Contentful, SanityStoryblok, Prismic | Sitecake, CouchCMSGetSimple |
| Realistic setup | ~5 minutes | 1–3 days | 2–6 hours | 1–2 days of dev | 1–2 hours |
| Do you touch the code? | One line | Rebuilt from scratch | Templates get annotated | Templates rewritten | Comment tags per region |
| Does the site move? | No — stays where it is | Usually yes | Needs git and a build | Needs a build or a server | Needs PHP hosting |
| Client needs an account | No — invite link | Yes, a WordPress user | Yes, usually a git login | Yes, a CMS seat | Yes, a CMS password |
| Whose brand is the editor | Neutral, or yoursOwn logo via the white-label module, $29 once | WordPress | Varies, often the vendor's | The vendor's | The tool's |
| Ongoing maintenance | None on your side | Core, theme, plugin updates | Build pipeline upkeep | Integration upkeep | PHP updates, file permissions |
| Typical cost | $0–$99/moFree tier covers 1 site | Hosting plus your timeSoftware is free | Free–$100/moDecap and Tina are open source | $100–$500+/mo | One-off licenceOften under $100 |
| Content lives in the source HTML | Re-applied in the browser | Yes | Yes, at build time | Yes, if rendered server-side | Yes, written to the file |
Setup times are for a five-page brochure site handed to a non-technical client, by someone who has used the tool before. Your first time with any of them will be slower.
Every option on this page is the best option for somebody. Here is who should walk past each one.
A blog with a post every day, a shop with a thousand SKUs, a job board — anything where content is produced in volume and has to be in the source HTML the moment it changes — belongs in a real CMS with templates and a database.
Skip it too if you need editorial workflow: drafts, review, scheduled publishing, three people approving a paragraph.
Right for: brochure sites, landings and local business sites — the ones that change a few times a month.
Rebuilding a finished site in WordPress costs days, and the day you finish you have adopted a maintenance job: core updates, plugin updates, security, backups. Someone pays for that forever, and usually it's you.
It also throws away whatever made your original build fast and clean.
Right for: sites that genuinely need plugins — memberships, bookings, a real shop.
Decap, Tina and CloudCannon are good tools, cheap or free, and they keep content in your repository. They also assume a repository, a build, and a deploy that runs when content changes. Someone has to own that pipeline.
When the build breaks, the client's edit doesn't appear — and they call you.
Right for: developer-run sites, documentation, teams already living in git.
Contentful, Sanity and Storyblok are built for content at scale across many surfaces. For a restaurant with a menu and an opening-hours block you'll spend a day modelling content types and rewriting templates to solve a problem that was one sentence long.
The monthly price is a different order of magnitude as well.
Right for: multi-channel content, apps, several sites sharing one content pool.
Sitecake and CouchCMS write straight back into your HTML files, which is elegant — and it needs PHP, write permissions on the web root, and a host that tolerates both. Netlify, Vercel and Cloudflare Pages don't.
Several tools in this category also haven't been meaningfully updated in years.
Right for: classic shared hosting with cPanel and FTP.
If the person editing the site is a developer, put the content in git. If a marketing team edits it daily, buy a real CMS. If it's a restaurant owner who wants to change a price on a Sunday and has never logged into anything, keep the editing on the page itself.
The wrong answer is always: "just send me the changes and I'll do it."
Paste it once before </head> on every page, or into the custom-code head field of whatever hosts the site. Nothing else in the markup changes.
Open the live site signed in and click a heading, a paragraph, an image or a link to change it. Saved content is re-applied on every page load.
They open their own site and edit it in a reduced editor with no Qixoo branding on it. No account, no dashboard, no code. Put your own logo there with the white-label module.
Text and headings, images, links, buttons, list items, menus, galleries and sliders — the things clients actually ask to change. You can also drop in prebuilt blocks (an FAQ, a price list, a testimonial row) without writing markup.
It doesn't restructure your layout, and it isn't a permissions sandbox: the client editor is a reduced interface that hides structural editing, not a lock on the underlying page. It doesn't host your site either — your host still serves the HTML.
Your host keeps serving the HTML you wrote, so a crawler always gets a complete page. Content edited through the layer is re-applied in the browser, which means an edit can be picked up later than a change to the source file would be. For a headline or an opening paragraph that changes a few times a year, that's a non-issue. If a page's whole content must be indexed the day it changes, edit the HTML too.
No. A script-tag editing layer attaches to the HTML you already published — markup, styling and hosting stay as they are. Rebuilding is only necessary on the WordPress or headless route, both of which replace how the pages are generated.
The original HTML keeps being served by your host, so the page a crawler receives is the page you wrote. Edited content is re-applied in the browser, so edited wording can be seen later than a static change would be. Fine for copy that changes occasionally; edit the source too if a page must be indexed the day it changes.
With Qixoo, no — you send an invite link and they edit their own live site. With Webflow Client Seats, WordPress or a headless CMS, every editor needs an account on that platform.
It works on any site that serves HTML, whatever the host: hand-written HTML, static generators, exported Webflow or Framer sites, WordPress themes, and anything on Netlify, Vercel, Render, cPanel or a VPS. On Webflow-hosted sites the tag goes in Site Settings → Custom Code, which needs a paid Webflow site plan.
It stays online with every saved edit intact — visitors see the current content. Only editing pauses until a plan is active again. Nothing is deleted, nothing has to be migrated back.
Best-effort. Apps that re-render the DOM after load can overwrite injected content, so test one page before promising it to a client. Server-rendered HTML and static exports are the reliable case.
Several. Decap CMS and TinaCMS are free and open source if the site lives in a git repo and you're happy with a build pipeline. Qixoo's free tier covers one site with no time limit. WordPress software is free; hosting, migration time and maintenance are not.
Then start with the page written for exactly that: the Webflow legacy Editor and white-label replacement. It covers Client Seats, what changed on August 4 2026, and how to put click-to-edit back under your own brand.
One line of code. First site is free, no time limit, no card.
Start free →