Headless WordPress collapses the whole site into a single endpoint. Every technique built around caching pages stops applying, because there are no longer any pages.
All the traffic arrives at the same address asking different questions, which is the opposite of what a page cache is designed for.
A GraphQL query is a POST body by default, and nothing caches POSTs. Queries are handled so identical requests can be served from cache instead of re-resolved every time.
A deeply nested query is a single request that can walk your entire dataset. Depth and complexity limits are set, so one client cannot ask a question the server should not answer.
Naive resolution turns one list of fifty posts into fifty author lookups and fifty term lookups. Those are batched, which is the difference between a fast endpoint and a slow one.
A static front end regenerates by querying every node on the site at once. That run is treated as a known workload rather than as a traffic anomaly to be throttled.
Headless changes the front end, not the responsibility. The database and uploads are backed up daily exactly as they would be for a rendered site.
Take away templates and you take away page caching, full-page caching and edge HTML. What is left is one endpoint doing real work on every call.
A GraphQL response looks like one request and behaves like dozens of queries. What decides speed is how many of those are avoided.
Headless removes the tools everyone reaches for first, so the tuning moves entirely to the endpoint.
| Setting | What we do | Why |
|---|---|---|
| Endpoint caching | Repeated queries served without re-resolving | GraphQL requests arrive as POST bodies, which nothing caches by default, so an identical query costs full price every single time it is asked. |
| Query limits | Depth and complexity ceilings enforced | One nested query can traverse an entire dataset in a single request, which makes the endpoint trivially expensive to abuse by accident or otherwise. |
| Resolver batching | Related lookups grouped instead of per field | Resolving fifty posts naively means fifty author queries and fifty term queries, and that fan-out is the whole difference in headless performance. |
| Build-time traffic | Treated as a known workload, not throttled as abuse | A static regeneration fetches every node at once, which looks exactly like scraping to any rate limiter that was not told about it. |
| Introspection | Restricted in production | A public schema dump tells anyone precisely what to ask for, and the endpoint is the only surface a headless site has. |
Every plan includes free migration, daily backups, SSL and 24/7 support.
Move the backend across — migration is free, schema untouched.