Skip to main content

5 out of 5 stars rating — “+page.server.ts load, $env/dynamic/private.”

The flat-rate headless CMS for SvelteKit.

Fetch from a +page.server.ts load. Keep your API key in $env/dynamic/private. Bundled Media CDN, every feature on every tier — free tier included.

↳ Wire up your first server load in under 5 minutes

src/routes/articles/+page.server.ts
// src/routes/articles/+page.server.ts
// Server load — runs on the server only. `ADAPTO_API_KEY` never reaches the browser.
import { env } from "$env/dynamic/private";
import type { PageServerLoad } from "./$types";

export const load: PageServerLoad = async ({ fetch }) => {
  const res = await fetch(
    `${env.ADAPTO_API_URL}/v1/articles?status=published&limit=10`,
    { headers: { "x-api-key": env.ADAPTO_API_KEY } },
  );
  const { items: articles } = await res.json();
  return { articles };
};

What SvelteKit teams hit

SvelteKit ships fast. Your CMS shouldn't be the part that slows you down.

Four things SvelteKit teams keep running into with traditional CMSes — and how Adapto removes each one without an "Enterprise" upgrade.

  • SvelteKit pain

    Your CMS SDK is a chunky client bundle. SvelteKit hydration ships kilobytes you didn't need.

    Adapto CMS

    REST with JSON. Call from a `+page.server.ts` `load`, return the data, render — nothing ships to the client unless you want it to.

  • SvelteKit pain

    API keys leak into the client bundle because your CMS docs default to client-side fetching.

    Adapto CMS

    All examples use `$env/dynamic/private` in server-only files. The key stays on the server, period. Public reads never need a key on the client.

  • SvelteKit pain

    Per-locale and per-seat surcharges mean shipping a 2-language site doubles your CMS bill.

    Adapto CMS

    Unlimited translations and contributors on every tier. Pair with SvelteKit's `[lang]` param + `paraglide` and your i18n cost is zero.

  • SvelteKit pain

    Image optimization on the edge means yet another image service in your stack.

    Adapto CMS

    Media is bundled on Adapto's CDN with URL-based transforms — perfect for SvelteKit's `<enhanced:img>` or a plain `<img>` with `srcset`.

I've got convinced by the bundled media CDN and the pricing predictability. The biggest improvement was a loading speed gain of around 60% after moving to Adapto. We rebuild server-side generated pages whenever new content is published on the CMS via a webhook.

I think Adapto can accommodate both early-stage projects and larger applications or web pages.

Portrait of Elia Mihuta
— Elia Mihuta, Founder, FoodNerd Kitchen Built on Adapto CMS.
First project live in a few hours.

No add-ons, no feature gates, no surprises

Every CMS primitive a dev team needs. On every plan.

Content modeling, REST API, CLI + AI + Webhooks, Media CDN, localization. The same surface on Free Evaluation as on Professional — the only thing that scales is usage.

CLI & AI

A CLI built for AI agents, not just terminals

Adapto ships a first-class CLI designed to give AI agents — Claude Code, Cursor, or any LLM toolchain — direct, structured access to your content.

Manage collections, trigger builds, and automate publishing from a terminal or from an agent's context. Most CMSs treat agents as an afterthought; Adapto treats them as a primary user.

Claude Code editing content during a build session Cursor scaffolding collections from a spec Agent-driven content migrations Publishing pipelines triggered by LLM workflows
Bundled CDN

One platform. One bill.

CDN, image optimization, webhooks, and content API in one product. No Cloudinary contract.

No separate media host. No glue code. Organize work by organization, invite as many contributors as the project needs, and run unlimited projects under one account.

Agencies managing client rosters Teams with rotating contractors Multi-brand portfolios under one parent org
Asset Library

Centralized asset library across every project

Upload once, reuse everywhere. Manage images, videos, and documents from a single library shared across collections in your project.

Brand asset libraries Multi-site portfolios Cross-project media reuse
i18n Built In

Ship in every language without a pricing penalty

Translate content into as many locales as the project needs without watching the tier requirements creep up.

Other CMSs cap included locales (some cut theirs to five recently) and charge per extra language. i18n is included at every tier — scale languages with usage, not with line items.

EU-wide product launches Multi-country agency builds Localized marketing campaigns

SEO Site Checkup has an audience of almost 1 million users per month. Their marketing site runs on Adapto CMS.

Nearly a million SEO professionals visit SEO Site Checkup every month — an audience that scrutinizes load time, structure, and Core Web Vitals professionally. They wouldn't keep coming back to a slow site. Their marketing site runs on Adapto CMS.

~1M / mo

Audience

SEO Pros

Audience type

Adapto CMS

Stack

Start free — no card
Integrations

Webhooks and GitHub Actions that plug into any automation tool

Trigger builds, sync to third-party services, or fire workflows on every content change.

Webhooks and GitHub Actions integrate cleanly with n8n, Make, Zapier, and any HTTP-receiving automation — so content events can rebuild a site, notify Slack, sync to a search index, or kick off a custom pipeline. Included from the free tier, not gated behind a higher tier.

n8n workflows Zapier-powered Slack notifications GitHub Actions rebuilding Astro/Next.js sites
Image Optimization

Image transforms via URL — no pipeline, no build step

Resize, convert, and compress images on the fly by appending URL parameters and the CDN handles it at the edge. No build step. No image pipeline. No separate processing server.

Most setups force you to pre-generate every variant at build time or pay for a third-party transform service; Adapto serves any size, format, or quality from a single source upload.

Marketing sites with heavy imagery Portfolios Mobile app backends Editorial sites
Collections

Custom collections without unlocking a higher tier

Define exactly the content shapes the project needs — blog posts, products, landing pages, case studies, anything — with custom fields and relationships.

Available from the free plan up, not gated behind a "Pro" tier or sold as an add-on.

Editorial publishing Ecommerce catalogs Structured marketing pages Multi-author blogs

Techarena runs every speaker, sponsor, stage, and venue feed from a single Adapto CMS source of truth.

Scandinavia's largest tech event manages every speaker, sponsor, stage, and venue feed through Adapto CMS. One source of truth across every screen, schedule, and signage system. When 11,000 attendees from 125 nationalities show up over two days, let me check another tab is not an option.

+11,000

Attendees

Tech Event

Category

+125

Nationalities

Start free — no card
Start Building for Free Free tier, no credit card, no trial expiry.

Pricing for Cost predictability

They raise prices. We don't. The flat-rate stays flat.

Add editors. Expand to new markets. Turn on webhooks. Your plan doesn't change. Adapto scales by content volume and API usage — not headcount, locales, or features. Get 2 months free on annual billing.

Free Evaluation

$0 /mo
$0 /yr
Always free

For developers learning the API or testing Adapto before committing.

  • 500 total records
  • 5,000 API calls/mo
  • 2 GB bandwidth/mo
  • All features included
Start for Free

Hobby

$29 /mo
$290 /yr
2 months free

For side projects, personal sites, and small production builds that need real limits.

  • 10,000 total records
  • 150,000 API calls/mo
  • 50 GB bandwidth/mo
  • All features included
Start for Free

Startup

Popular
$69 /mo
$690 /yr
2 months free

For freelancers or small business owners running a single high-quality production site.

  • 50,000 total records
  • 300,000 API calls/mo
  • 100 GB bandwidth/mo
  • All features included
Start for Free

Scale

$249 /mo
$2,490 /yr
2 months free

For growing teams and agencies shipping multiple production projects.

  • 300,000 total records
  • 500,000 API calls/mo
  • 300 GB bandwidth/mo
  • All features included
Start for Free

Professional

$449 /mo
$4,490 /yr
2 months free

For agencies and product teams managing portfolios of high-traffic applications.

  • 750,000 total records
  • 1,500,000 API calls/mo
  • 1 TB bandwidth/mo
  • All features included
Start for Free
Need more than Professional? Our published plans cover up to 750K records and 1.5M API calls. If your scale genuinely exceeds that, reach out and we'll give you a real number, not a budget-based quote.

A note from the founders

Greetings, we're Vlad and Alex.

Before Adapto, we ran an agency. For years we tried every CMS we could find a reason to recommend. Webflow until a client needed three locales. Cosmic JS until the pricing changed and our smaller clients didn't fit. Sanity for the larger builds, until the per-seat math made onboarding editors a conversation we didn't want to keep having.

Same pattern every time. A reasonable starting price. A feature behind the next tier. A renewal call where the number doubled. A quarterly explanation to the client about why the invoice changed again.

So we stopped looking and built the CMS we wished existed. Flat pricing. Every feature included. Content, media, and image delivery in one product.

Once it was running, migrations went quiet. Client bills stopped surprising anyone. The "what does this cost next year" question finally had a real answer.

We're opening it up because if you've been on the same hamster wheel, you already know the problem.

Step off the wheel. Try it. Let us know what breaks.

Gratefully,

Portrait of Vlad Portrait of Alex

P.S. Adapto CMS is completely free to start .

Questions and answers

Pricing, features, limits, migrations, and what happens when your usage grows. If your question isn't here, reach out to us at contact@adaptocms.com

Does Adapto work with SvelteKit 2 and Svelte 5 runes?
Yes — that's the recommended target. Our SvelteKit starter uses `+page.server.ts` loads, `$env/dynamic/private` for secrets, and `$props()` rune syntax in Svelte 5 components. Older SvelteKit 1 / Svelte 4 projects work too — the API is framework-agnostic JSON over REST.
How do I invalidate SvelteKit data when content is updated in Adapto?
Configure an Adapto webhook pointing at a SvelteKit `+server.ts` endpoint. In the handler, hit your hosting provider's deploy hook (for SSG/prerendered routes) or call `invalidate(url)` after re-fetching server state (for SSR routes). The webhook payload includes the entity ID and slug for surgical invalidation.
Can I keep Adapto fetches on the server with SvelteKit's adapter-static / prerender?
Yes. With `prerender = true`, the `+page.server.ts` `load` runs once at build time and the API key never leaves the build environment. With `adapter-node` or any SSR adapter, the load runs on every request — `$env/dynamic/private` keeps the key out of the client bundle either way.
What's the catch with the Free Evaluation tier?
There isn't one. The Free Evaluation tier includes every feature — webhooks, localization, custom roles, media CDN, image optimization and much more. The limits are small on purpose — it's built for evaluation, not production: 500 records, 5,000 API calls, and 2 GB bandwidth per month. When you're ready for production, Hobby starts at $29/mo. No credit card required to evaluate.
Will my price increase after I sign up?
Your plan price is locked for your billing period. If we ever change pricing, existing customers keep their current rate for the remainder of their term. We'll give at least 30 days' notice before any pricing changes take effect, and annual subscribers are protected for their full 12-month period.
Do you have hidden overage fees?
No. If you approach your plan limits, we notify you via email and give you a 7-day grace period to upgrade or reduce usage. We don't silently bill overages, and we don't throttle your API without warning. The price on the plan is the price you pay.
Do all plans really include every feature?
Yes. Webhooks, localization, custom roles, media CDN, image optimization, asset library, microcopies, custom data structures — all included on every plan, including free. The only difference between plans is usage limits: records, API calls, and bandwidth.
What happens to my data if I leave Adapto?
Your content is yours. You can export everything via the API at any time — pages, articles, custom collections, media assets. If you cancel your account, we keep your data accessible for 30 days to allow full export. After 30 days, it's permanently deleted. No hostage data.