offloadcms
An AI agent for WordPress-style sites

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.

Free, forever — no card needed for offloadcms (Cloudflare may ask for one when you turn on R2's free tier). Pay only when we run something for you.

The running cost

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

A box that runs 24/7 for a page that changes monthly.

$8–30 / mo
Plugins & security

Patch, test, repeat. One bad update is downtime.

your weekends
Speed

PHP + DB on every hit. Cold caches on every deploy.

TTFB tax
AI readability

Crawlers that don't run JS get a blank shell.

invisible
The signature move

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.

running · wp-admin live · db queried per request
wp-admin / edit post #128

Hello world

A live PHP request rebuilds this page from the database every single time someone — or no one — visits.

autosaving mysql: 41 queries 18 plugins
$0.00billing this month
STATIC$0 / month · readable by GPTBot, ClaudeBot, PerplexityBot
Same galley, new press

Your WordPress concepts map one to one.

Nothing to relearn. The data model mirrors WordPress, so an import lands where you expect it.

post_type

Posts & pages

Drafts, scheduled, published, revisions — the editorial states you already use.

taxonomy

Categories & tags

Hierarchical categories and flat tags, archives generated for both.

meta / acf

Custom fields

ACF-like field groups, typed and attached to any entry.

wp_media

Media library

Uploads land in R2 with responsive sizes and image SEO baked in.

nav_menu

Menus & roles

Menus, widgets, and WordPress roles carry across intact.

permalink

Permalink structures

Keep your URL scheme. Existing links and SEO equity survive the move.

The offloadcms post editor: title and slug fields, a rich-text toolbar, and a sidebar with publish status, featured image, categories, tags, and custom fields.
Editing a post. Same fields, same sidebar, same editorial states you already know.
The offloadcms dashboard: a setup checklist, counts for posts, pages, media, drafts and categories, and a Publish Site panel offering an incremental or full rebuild.
The dashboard. Publishing is one button — incremental, or a full rebuild.
What runs it
$0

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.

D1

Content

Your posts, taxonomy, and settings in SQLite at the edge.

R2

Media

Object storage for uploads — no egress fees.

KV

Sessions & cache

Magic-link auth and fast key reads.

Workers + Pages

Serve

The admin API and the printed static site, on the same edge.

Pricing

The CMS is free. Pay only for what we run.

Every feature on every site. You pay only when you use our AI, an automated migration, or a person's time.

Everything
The CMS
$0
forever · every account

The whole product, free, for as many sites as you like. Your sites live in your own Cloudflare account, which is free for most sites.

  • Unlimited sites, every feature and all 38 themes
  • Custom domain, comments, no offloadcms branding
  • AI assistant, free on Cloudflare's built-in AI or with your own AI key (OpenAI, Anthropic, DeepSeek, MiMo)
  • Automatic setup, one-click updates, daily backups, downtime alerts
  • 1,000 sign-in and form emails a month
  • 25 free credits to try our AI
Get started →
AI credits
$10
200 credits · never expire

Optional. Use our AI instead of setting up your own. One credit is one thing you ask the assistant to do, like "draft a post about our summer menu".

  • $10 buys 200 requests, one payment, no subscription
  • When they run out, buy more or switch to the free options
  • Cloudflare's built-in AI and your own key stay free
Buy credits
Migration job
$19 / $49
automated · opening soon

We copy your WordPress site over for you, priced by how many posts and pages it has. Technical users can run our importer themselves for free; see the docs.

  • $19 up to 1,000 posts and pages
  • $49 up to 10,000
  • Until it opens, ask for an assisted migration
See assisted migration
A person
$149 +
quoted first, then invoiced

When you would rather have someone do the work.

  • Assisted migration $149, $349 or $899
  • Support $100 an hour, 30-minute minimum
  • Docs and bug reports stay free
See services

Who bills you for what. Your site runs on your own Cloudflare account, and most sites pay Cloudflare nothing. A very busy site may need Cloudflare's $5-a-month plan; Cloudflare charges that to your card, not us. Technical details: Cloudflare's free plan covers 100,000 requests a day, 5 GB of content storage and 10 GB of images and files, with free bandwidth. AI credits are paid through Polar, our payment partner, which sends your receipt and handles sales tax; see the Refund & Cancellation Policy.

Who reaches for this

Built for the sites that outgrew their hosting bill.

agency

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.

solo

The blogger done with renewals

Import a personal blog once, publish from a plain editor, and stop budgeting for hosting you barely use.

developer

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.

The way in

Offload the weight.

Hand us a database dump and the uploads directory — no REST API dependency, nothing to install on the old box. The offloadcms team imports your content and prints the site to static. The server you were keeping alive can go dark.

operator tooling · natalievo.com

This is the importer the offloadcms team runs on your behalf during a migration — not a tool you install or run yourself.

The press run, in order

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

Stop paying to keep it running

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.