PUB LISH ED.
Prompt an agent to write, edit, and publish.
Tell it what to do — "write this post", "fix that section", "publish" — the way you'd drive Claude Code, except it's running your CMS. Every change prints to static HTML on Cloudflare's edge: fast for people, and readable for the AI crawlers WordPress hands nothing to.
50 free credits/ month to prompt the agent — no card required, $0 to self-host forever.
A small WordPress site never stops running.
A blog with a hundred visitors a month still runs a database, executes PHP on every request, and queues plugin and security updates that break in your sleep. You pay — in money and in maintenance — for traffic that barely exists. offloadcms replaces that upkeep with an agent you prompt instead of a server you babysit.
- Hosting
- $8–30 / mo
- Plugins & security
- your weekends
- Speed
- TTFB tax
- AI readability
- invisible
A box that runs 24/7 for a page that changes monthly.
Patch, test, repeat. One bad update is downtime.
PHP + DB on every hit. Cold caches on every deploy.
Crawlers that don't run JS get a blank shell.
Watch a running site go to press.
offloadcms reads the site from the database once and prints it: every entry becomes static HTML plus the structured data a crawler needs. This is the real publish pipeline — D1, render, edge — shown as a single press run.
Hello world
A live PHP request rebuilds this page from the database every single time someone — or no one — visits.
Your WordPress concepts map one to one.
Nothing to relearn. The data model mirrors WordPress, so an import lands where you expect it.
Posts & pages
Drafts, scheduled, published, revisions — the editorial states you already use.
Categories & tags
Hierarchical categories and flat tags, archives generated for both.
Custom fields
ACF-like field groups, typed and attached to any entry.
Media library
Uploads land in R2 with responsive sizes and image SEO baked in.
Menus & roles
Menus, widgets, and WordPress roles carry across intact.
Permalink structures
Keep your URL scheme. Existing links and SEO equity survive the move.
per month · Cloudflare free tier
One self-contained instance per Cloudflare account.
It owns its own storage and serves exactly one site. No shared infrastructure, no per-seat bill.
Content
Your posts, taxonomy, and settings in SQLite at the edge.
Media
Object storage for uploads — no egress fees.
Sessions & cache
Magic-link auth and fast key reads.
Serve
The admin API and the printed static site, on the same edge.
Free is a real tier. Paid raises the credit bucket.
The CMS is the same on every plan. What changes is how many orchestration credits you get each month, and whether the agent remembers your site between sessions.
Prompt the agent to write, edit, and publish. Stateless — it forgets your site the moment you log out.
- 50 orchestration credits/mo (10/day cap)
- Session-only agent memory + connection
- CLI self-host: D1 + R2 + KV + Workers + Pages
- Community support
The agent remembers your site across sessions — no re-briefing it every time you come back.
- 125 orchestration credits/mo
- Persistent agent memory + Cloudflare connection
- Custom domain, incremental publish, comments
- Branding removed
For studios prompting the agent across more than one client site.
- 250 orchestration credits/mo
- 2 persisted sites, premium theme unlocked
- Everything in Solo
- Priority support
For agencies running the agent across multiple Cloudflare accounts.
- 650 orchestration credits/mo (fair-use)
- Unlimited persisted sites, multi-CF-account
- Everything in Agency
- SLA on request
Subscriptions billed securely through Polar — Merchant of Record. Extra credits are $0.20 each, no penalty markup on overage. See the full plan breakdown on pricing.
Built for the sites that outgrew their hosting bill.
The agency retiring client sites
Wind down a dozen aging WordPress installs into managed, $0-to-run static sites without losing a client's SEO or URLs.
The blogger done with renewals
Import a personal blog once, publish from a plain editor, and stop budgeting for hosting you barely use.
The developer who wants data, not plugins
Structured JSON-LD and a sitemap out of the box — no SEO plugin stack to configure, patch, or outgrow.
Offload the weight.
Point offloadcms at your WordPress database and uploads directory — no REST API dependency, nothing to install on the old box. It imports your content and prints the site to static. The server you were keeping alive can go dark.
From database to printed edge.
Each step feeds the next — the order is the product.
Read the site from D1
Posts, pages, taxonomy, media references, and settings are assembled into one site model.SiteData ← D1
Render each entry to static HTML
Content stored as structured JSON is serialized to flat HTML with a complete head: JSON-LD, canonical, Open Graph.render-site.ts · buildHead · jsonld
Generate sitemap, robots, RSS, search
A sitemap, a robots.txt that allows AI crawlers, RSS feeds, and a Pagefind static search index.generateRobots · feeds · pagefind
Upload the bundle to Pages
The static bundle ships to your Cloudflare Pages project — same account, no cross-account token.Pages Direct Upload
PRINT IT
ONCE.
Take a WordPress site off life support, print it to the edge, and let the crawlers read it. Then forget the bill.