Skip to main content

Every deploy ships with a global CDN.

Preview and production hosts get managed TLS, framework-aware caching, and tag revalidation automatically. There is no separate CDN to set up.

Close to every visitor

Each request lands at the nearest edge location, where TLS, caching, and firewall rules run before your app does.

9

edge locations
  • Nearest-edge routing
  • Cached responses served without compute
  • Firewall rules before your app

North America

AshburnLos AngelesSan Jose

Europe

Frankfurt

Asia

SingaporeTokyo

South America

Sao Paulo

Oceania

Sydney

Africa

Johannesburg

Caching that follows your framework

Hashed assets, ISR pages, and responses with standard Cache-Control or CDN-Cache-Control headers are cached at the edge. Private responses always reach your function.

Edge cache
From your build output and response headers
RouteEdge
/_next/static/*max-age=31536000, immutableCached
/blog/[slug]ISR, revalidate 60sCached
/api/productss-maxage=300, stale-while-revalidate=60Cached
/api/cartprivate, no-storeBypass

Purge by tag when content changes

Tag responses as you render them. One revalidateTag call clears the edge, Runtime Cache, and ISR pages that share the tag, and the next visitor gets a fresh response.

app/actions.ts
"use server";
import { revalidateTag } from "next/cache";

export async function publishProduct(id: string) {
  await saveProduct(id);
  revalidateTag(`product-${id}`);
}

Edge CDN

Tagged responses purged

Runtime Cache

Tagged entries expired

ISR

Tagged pages marked stale

Every response says how it was served

The X-Easel-Cache header reports HIT, STALE, MISS, or BYPASS on every response, so you can check caching with curl instead of guessing.

GET /products/linen-shirt

Served from the edge. Your function did not run.

Keeps serving until its lifetime ends or a matching tag is purged.

cache-control:
public, s-maxage=300, stale-while-revalidate=60
age:
42
x-easel-cache:
HIT
cache-tag:
product-123 products

Included on every deployment

The rest of the edge, with nothing to configure first.

  • Automatic TLS

    Certificates issue and renew at the edge for every preview, production, and custom domain. HTTP redirects to HTTPS with HSTS.

  • Brotli compression

    Text responses are compressed with Brotli, falling back to gzip, without splitting your cache.

  • Edge Middleware

    Rewrite, redirect, set headers, or gate access before the cache and your functions.

  • Image Optimization

    Framework image components like next/image resize and encode on demand, with each variant cached.

Ship your next deploy to the edge

Every preview and production deployment is served from the edge automatically. Add cache headers or tags when you want more control.