# vercel.com

13 of 13 indexed pages, ordered by how often the site's own
pages cite them. This is all of them.
Indexed by stealpage. Full record: https://stealpage.com/d/vercel.com

---
## Frameworks on Vercel

<https://vercel.com/docs/frameworks> · 466 words

Vercel has first-class support for [a wide range of the most popular frameworks](https://vercel.com/docs/frameworks/more-frameworks). You can build and deploy using frontend, backend, and full-stack frameworks ranging from SvelteKit to Nitro, often without any upfront configuration.

Learn how to [get started with Vercel](https://vercel.com/docs/getting-started-with-vercel) or clone one of our example repos to your favorite git provider and deploy it on Vercel using one of the templates below:

Get started in minutes

### Deploy a Template

Vercel deployments can [integrate with your git provider](https://vercel.com/docs/git) to [generate preview URLs](https://vercel.com/docs/deployments/environments#preview-environment-pre-production) for each pull request you make to your project.

Deploying on Vercel with one of our [supported frameworks](https://vercel.com/docs/frameworks/more-frameworks) gives you access to many features, such as:

-   [Vercel Functions](https://vercel.com/docs/functions) enable developers to write functions that scale based on traffic demands, preventing failures during peak hours and reducing costs during low activity.
-   [Middleware](https://vercel.com/docs/routing-middleware) is code that executes before a request is processed on a site, enabling you to modify the response. Because it runs before the cache, Middleware is an effective way to personalize statically generated content.
-   [Multi-runtime Support](https://vercel.com/docs/functions/runtimes) allows the use of various runtimes for your functions, each with unique libraries, APIs, and features tailored to different technical requirements.
-   [Incremental Static Regeneration](https://vercel.com/docs/incremental-static-regeneration) enables content updates without redeployment. Vercel caches the page to serve it statically and rebuilds it on a specified interval.
-   [Speed Insights](https://vercel.com/docs/speed-insights) provide data on your project's Core Web Vitals performance in the Vercel dashboard, helping you improve loading speed, responsiveness, and visual stability.
-   [Analytics](https://vercel.com/docs/analytics) offer detailed insights into your website's performance over time, including metrics like top pages, top referrers, and user demographics.
-   [Skew Protection](https://vercel.com/docs/skew-protection) uses version locking to ensure that the client and server use the same version of your application, preventing version skew and related errors.

The following table shows which features are supported by each framework on Vercel. The framework list represents the most popular frameworks deployed on Vercel.

Supported

Not Supported

Not Applicable

Framework feature matrix

Feature

Next.js

SvelteKit

Nuxt

TanStack

Astro

Remix

Vite

CRA

No rows displayed.

The [Build Output API](https://vercel.com/docs/build-output-api) is a file-system-based specification for a directory structure that produces a Vercel deployment. It is primarily targeted at framework authors who want to integrate their frameworks with Vercel's platform features. By implementing this directory structure as the output of their build command, framework authors can utilize all Vercel platform features, such as Vercel Functions, Routing, and Caching.

If you are not using a framework, you can still use these features by manually creating and populating the `.vercel/output` directory according to this specification. Complete examples of Build Output API directories can be found in [vercel/examples](https://github.com/vercel/examples/tree/main/build-output-api), and you can read our [blog post](https://vercel.com/blog/build-your-own-web-framework) on using the Build Output API to build your own framework with Vercel.

Learn more about deploying your preferred framework on Vercel with the following resources:

---

## Flags

<https://vercel.com/docs/flags> · 220 words

Vercel provides a complete feature flags platform. Use Vercel as your feature flag provider, or connect your preferred provider from the [Marketplace](https://vercel.com/docs/flags/marketplace). Either way, you get a unified dashboard to manage all your flags, developer tools like the Flags Explorer, and built-in observability.

![Flags in Vercel Dashboard](https://vercel.com/vc-ap-vercel-docs/_next/image?url=https%3A%2F%2F7nyt0uhk7sse4zvn.public.blob.vercel-storage.com%2Fdocs-assets%2Fstatic%2Fdocs%2Fflags%2Fflags-tab-light.png&w=3840&q=75)
*Flags in Vercel Dashboard*

Flags give you control over your application's behavior without redeploying:

-   Roll out features gradually to specific users, teams, or environments
-   Test in production safely before launching to everyone
-   Run A/B tests to measure impact on conversion and performance
-   Override flags locally with the Flags Explorer — no code changes needed
-   Ship and deploy independently from releasing features

The Flags section in your Vercel Dashboard shows all your flags in one place, regardless of which provider you use. You can filter, search, and see the status of every flag across your project.

This unified view lists all your flags in one place. Vercel Flags can be edited directly in the Vercel Dashboard. Marketplace flags link straight to their provider's dashboard—and since you're already signed in through Vercel, you can jump in and make changes immediately.

Track flag evaluations in Runtime Logs and analyze their impact on user behavior in Web Analytics. See which flags affect conversion rates and application performance.

[Learn more about flags observability](https://vercel.com/docs/flags/observability)

---

## New Project

<https://vercel.com/new> · 20 words

### Let's build something new

You can also drag and drop your project, or choose a file or a folder.

---

## Vercel Passport - Vercel

<https://vercel.com/passport> · 497 words

### Introducing Vercel Passport

Secure every internal agent, app, and deployment with your existing identity provider.

### Forge-proof verification

After a user clears the gate, Passport gives the agent a signed JWT in the `x-vercel-oidc-passport-token` header. Read from your data source like Snowflake or Salesforce and your permissions apply to the real person, not a shared service account.

### Authenticate once,  
control everything

-   Every deployment is gated by your identity provider. Authenticate with Okta, Auth0, or any OAuth 2.0 / OpenID Connect provider.
    
-   Flat-rate pricing. Put Passport in front of every internal tool, agent, and app, and let the whole company in at no additional cost.
    
-   Never write a line of auth. Define access for your whole organization in one place while all agents and applications inherit.
    

### Frequently asked questions

What is Vercel Passport?

Vercel Passport gates every app and agent you deploy behind your own identity provider. Each deployment is private by default, and once a user signs in, the app receives a signed identity it can trust, so your IdP controls what that person can reach downstream.

What problem does Vercel Passport solve?

It takes staying internal off the shoulders of individual builders and ends per-app login. Instead of every app rolling its own auth and its own idea of who the user is, deployments are private behind your IdP, and the app receives a verified identity that reaches all the way to connected systems like Snowflake and Salesforce.

Which identity providers can I use?

Any provider that supports OAuth 2.0 or OpenID Connect, including Okta and Auth0. You add it as a Generic OAuth application, entering your issuer and endpoints through discovery or manually, with `https://connect.vercel.com/callback` registered as the redirect URI.

How does Vercel Passport work?

When a visitor opens a protected deployment, Vercel redirects them to your identity provider. After your provider authenticates them, Vercel validates the response, sets a session cookie for that deployment, and forwards a signed identity token to your server. A visitor with a valid session can view the deployment until the session expires.

How do I read a signed-in visitor's identity?

Read the `x-vercel-oidc-passport-token` header from server-side code. It is a Vercel-signed JWT, and the `external_sub` claim is the reliable user identifier. Vercel strips any client-supplied value and injects the verified token after validating the session, so your server can trust it. Profile fields like email or name appear only if your provider returns them.

Does Vercel Passport work with Vercel Connect?

Yes, they work together. Passport carries a verified identity in at the door. Connect carries it downstream when the app mints scoped tokens for third-party services. Who the user is, what they can open, and what their tokens can reach are the same person, end to end.

Does Vercel Passport work for agents too?

Yes. Agents you deploy sit behind the same gate and inherit the same policy, so the identity that governs your apps governs your agents.

What does Passport cost?

---

## Vercel Pricing: Hobby, Pro, and Enterprise plans

<https://vercel.com/pricing> · 714 words

Ultra-fast, secure by default global application delivery.

Vercel Network

Global Points of Presence

Vercel Regions

Automatic Routing

HTTPS Certificates

TLS/SSL Encryption

Traffic Load Balancing

Private Inter-Region Network

Automatic Region Failover

Configurable Routing

Reverse Proxy

Rewrites

Redirects

Middleware Support

[

Edge Requests

](https://vercel.com/docs/pricing/networking#edge-requests)

1M / month included

[

Fast Data Transfer

](https://vercel.com/docs/pricing/networking#fast-data-transfer)

100 GB / month included

Customizable security to protect your applications.

Web Application Firewall

Custom Firewall Rules

Up to 3

IP Blocking

Up to 3

System Bypass Rules

—

Firewall Rate Limit Requests

1M allowed requests / month included

OWASP Core Ruleset (managed)

—

Bot Management

Automated DDoS Mitigation

AI Bots (managed ruleset)

Bot Protection (managed ruleset)

BotID

Basic checks included

Attack Challenge Mode

Store and cache content close to your customers.

Content Delivery

Zero-config CDN cache

Automated Compression

Background Revalidation

Stale-While-Revalidate

Incremental Static Regeneration (ISR)

ISR Reads

1M / month included

ISR Writes

200k / month included

Bulk Redirects

Blob

Blob Storage Size

1 GB / month included

Blob Simple Operations

10K / month included

Blob Advanced Operations

2K / month included

Blob Data Transfer

10 GB / month included

Image Optimization

Image Optimization Transformation

5K / month included

Image Optimization Cache Reads

300K / month included

Image Optimization Cache Writes

100K / month included

Global Config

Global Config Reads

100K / month included

Global Config Writes

100 writes / month included

Microfrontends Support

Microfrontends

2 included projects

Microfrontends Routing

50K routed requests / month included

Dynamic, scalable functions to power your framework of choice. Now available with Fluid compute with

[Active CPU pricing](https://vercel.com/blog/introducing-active-cpu-pricing-for-fluid-compute).

Vercel Functions

Fluid Active CPU

4 hours / month included

Fluid Provisioned Memory

360 GB-hrs / month included

Function Invocations

1M / month included

Service Requests

Beta

1M requests / month included

Vercel Sandbox

Sandbox Active CPU

5 hours / month included

Sandbox Provisioned Memory

420 GB-hrs / month included

Sandbox Creations

5K / month included

Sandbox Data Transfer

20 GB / month included

Concurrent Sandboxes

10

Snapshot Storage

15 GB

Vercel Container Registry Image Storage

Beta

10 GB / month included

[

Fast Origin Transfer

](https://vercel.com/docs/pricing/networking#fast-origin-transfer)

10 GB / month included

Vercel Workflows

Workflow Events

50K events / month included

Workflow Storage Writes

1 GB

Workflow Storage Retention

—

Vercel Queues

Beta

API Operations

1M / month included

Cron Jobs

Build, deploy, and scale AI features with secure inference, durable workflows, and intelligent assistance.

v0

—

Vercel Agent

Beta

Slack

—

Code Review

—

Investigations

—

AI Gateway

Observability

Image generation

Bring your own key

App attribution

Managed fallback

Load balancing

Spend monitoring

Embedding support

Automatic retries

Token Requests

500 requests / month included

Triggers

1,000 triggers / month included

Workflows from code to production.

Builds

Automatic CI/CD

Environment Variables

Build Logs

Remote Cache

Monorepo Support

Webhook Triggers

—

Custom Environments

—

Build minutes

Standard machines

—

Enhanced machines

—

Turbo machines

—

Elastic machines

—

Deployments

Unlimited Deployments

Environment Variables

Instant Rollback

Multi-tenant support

Skew Protection

—

Rolling Releases

—

Preview Deployment Suffix

—

Team Seats

Developer seat

1

Viewer seat

—

Billing seat

—

Vercel Toolbar

Comments

Layout Shift Tool

Draft Mode

Productivity Integrations

Previewers

—

Accessibility Audit

Flags Explorer - Unlimited Overrides

150 overrides / month included

Flag Requests

10K requests / month included

Frontend observability on Vercel helps you monitor, analyze, and manage your applications.

Usage Dashboard

[

Observability

](https://vercel.com/docs/observability)

Observability Events

Add-on

Extended retention

—

Advanced metrics

—

Query engine

—

Alerts

—

[

Speed Insights Plus Events

](https://vercel.com/docs/speed-insights)

10K events / month included

[

Web Analytics Events

](https://vercel.com/docs/analytics)

50K events / month included

Web Analytics Plus

Add-on

Reporting windows

UTM Parameters

[

Runtime Logs

](https://vercel.com/docs/observability/runtime-logs)

1 hour of logs

[

Session Tracing

](https://vercel.com/docs/session-tracing)

1 hour of traces

[

Drains Volume

](https://vercel.com/docs/observability/log-drains)

—

Vercel protects your projects across access, application, and infrastructure security.

OAuth Sign-in

GitHub

Google

GitLab

Bitbucket

Access Security

Multi-Factor Authentication (MFA)

Role-Based Access Control

—

Audit Logs

—

SAML Single Sign-On (SSO)

—

Directory Sync (SCIM)

—

[

Passport

](https://vercel.com/docs/passport)

—

Advanced Deployment Protection

—

SSO Protected Previews

—

[

Static IPs (shared pool)

](https://vercel.com/docs/connectivity/static-ips)

—

[

Secure Compute

](https://vercel.com/docs/connectivity/secure-compute)

—

BYOC

—

Built-in support for global security and data protection standards. Security collateral available for Pro and Enterprise plans.

Compliance

SOC 2 Type 2

PCI DSS

ISO 27001

EU-U.S. DPF

HIPAA BAA

—

TISAX

Custom Security Questionnaire

—

---

## eve – The Agent Framework - Vercel

<https://vercel.com/eve> · 166 words

### The framework for  
building agents

Like Next.js for web apps, but for agents. Markdown for instructions and skills, TypeScript for tools. Durable by default.

### An agent is a directory

Define instructions and skills in markdown, tools in TypeScript, and deploy. The framework compiles the directory, wires up durable workflows, and connects channels.

### Leverages all Vercel AI primitives

AI Gateway for model calls, Sandboxes, Workflows, and Connect. All critical agent infrastructure works out of the box, no gluing point solutions together.

### Everything you need for production agents

Enterprise governance, observability, and sandboxed compute come standard. Focus on building, not infrastructure.

-   [Durable execution(opens in new tab)](https://eve.dev/docs/concepts/execution-model-and-durability)Workflows survive crashes and restarts. Every step is checkpointed. Agents park when waiting, resume on the next message.
    
-   [Sandboxed compute(opens in new tab)](https://eve.dev/docs/sandbox)Agents spin up isolated VMs on demand. File system access, bash execution, and code runs, all completely isolated.
    

-   [Subagents(opens in new tab)](https://eve.dev/docs/subagents)Delegate specialized work to child agents with their own prompts, tools, and sandbox.

---

## Backends on Vercel

<https://vercel.com/docs/frameworks/backend> · 356 words

Backends deployed to Vercel receive the benefits of Vercel's infrastructure, including:

-   [Fluid compute](https://vercel.com/docs/fluid-compute): Zero-configuration, optimized concurrency, dynamic scaling, background processing, automatic cold-start prevention, region failover, and more
-   [Active CPU pricing](https://vercel.com/docs/functions/usage-and-pricing): Only pay for the CPU you use, not waiting for I/O (e.g. calling AI models, database queries)
-   [Instant Rollback](https://vercel.com/docs/instant-rollback): Quickly revert to a previous production deployment
-   [Vercel Firewall](https://vercel.com/docs/vercel-firewall): A robust, multi-layered security system designed to protect your applications
-   [Preview deployments with Deployment Protection](https://vercel.com/docs/deployments/environments#preview-environment-pre-production): Secure your preview environments and test changes safely before production
-   [Rolling releases](https://vercel.com/docs/rolling-releases): Gradually roll out backends to detect errors early

Deploy the following backends to Vercel with zero-configuration.

![Elysia](https://api-frameworks.vercel.sh/framework-logos/elysia.svg)

#### Elysia

Ergonomic framework for humans

![Express](https://api-frameworks.vercel.sh/framework-logos/express.svg)![Express](https://api-frameworks.vercel.sh/framework-logos/express-dark.svg)

#### Express

Fast, unopinionated, minimalist web framework for Node.js

![FastAPI](https://api-frameworks.vercel.sh/framework-logos/fastapi.svg)

#### FastAPI

FastAPI framework, high performance, easy to learn, fast to code, ready for production

![Fastify](https://api-frameworks.vercel.sh/framework-logos/fastify.svg)![Fastify](https://api-frameworks.vercel.sh/framework-logos/fastify.svg)

#### Fastify

Fast and low overhead web framework, for Node.js

![Flask](https://api-frameworks.vercel.sh/framework-logos/flask.svg)

#### Flask

The Python micro web framework

![H3](https://api-frameworks.vercel.sh/framework-logos/h3.svg)

#### H3

Universal, Tiny, and Fast Servers

![Hono](https://api-frameworks.vercel.sh/framework-logos/hono.svg)

#### Hono

Web framework built on Web Standards

![Koa](https://api-frameworks.vercel.sh/framework-logos/koa.svg)

#### Koa

Expressive middleware for Node.js using ES2017 async functions

![NestJS](https://api-frameworks.vercel.sh/framework-logos/nestjs.svg)

#### NestJS

Framework for building efficient, scalable Node.js server-side applications

![Nitro](https://api-frameworks.vercel.sh/framework-logos/nitro.svg)

#### Nitro

Nitro is a next generation server toolkit.

![xmcp](https://api-frameworks.vercel.sh/framework-logos/xmcp.svg)

#### xmcp

The MCP framework for building AI-powered tools

To process background tasks with Python, you can deploy [Celery](https://vercel.com/docs/frameworks/backend/celery) or [Dramatiq](https://vercel.com/docs/frameworks/backend/dramatiq) workers as queue-triggered Vercel Functions.

If you are transitioning from a fully managed server or containerized environment to Vercel’s serverless architecture, you may need to rethink a few concepts in your application since there is no longer a server always running in the background.

The following are generally applicable to serverless, and therefore Vercel Functions (running with or without Fluid compute).

Vercel Functions can serve WebSocket connections when [Fluid compute](https://vercel.com/docs/fluid-compute) is enabled. WebSocket connections follow [Vercel Function limits](https://vercel.com/docs/functions/limitations), including maximum duration, so clients should handle reconnects when a connection closes.

Store persistent state, rooms, presence, and pub/sub coordination in an external data store instead of relying on in-memory state. Learn more in the [WebSockets documentation](https://vercel.com/docs/functions/websockets).

To manage database connections efficiently, [use the `attachDatabasePool` function from `@vercel/functions`](https://vercel.com/docs/functions/functions-api-reference/vercel-functions-package#database-connection-pool-management).

---

## Run any Dockerfile on Vercel

<https://vercel.com/blog/dockerfile-on-vercel> · 2026-06-30 · 975 words

You have a server in a container. Maybe it's a Go service, a Rails app, a Spring Boot API, or a web server behind nginx. It speaks HTTP. It listens on a port. It just needs somewhere to run.

Add a `Dockerfile.vercel` file to your project, and Vercel builds, stores, deploys, and autoscales the image on [Fluid compute](https://vercel.com/blog/introducing-fluid-compute), so you pay only for the CPU your code uses. No daemon to run locally, registry to set up, or cluster to babysit.

### [Copy link to heading](#how-it-works)How it works

Here is a small HTTP server in Go, listening on `$PORT`:

main.go

```
package mainimport (	"fmt"	"net/http"	"os")func main() {	port := os.Getenv("PORT")	if port == "" {		port = "80"	}	http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {		fmt.Fprintln(w, "Hello from a container on Vercel 👋")	})	http.ListenAndServe(":"+port, nil)}
```

A minimal HTTP server that reads its port from $PORT and answers every request.

Add a `Dockerfile.vercel` file that builds it into a small image and runs it:

Dockerfile.vercel

```
FROM golang:1.26-alpine AS buildWORKDIR /srcCOPY . .RUN go build -o /server main.goFROM alpine:3.22COPY --from=build /server /serverCMD ["/server"]
```

A two-stage build that compiles the binary, then copies it into a minimal Alpine image that runs on boot.

Then deploy:

```
▲ vercel deployVercel CLI✓ Building image from Dockerfile.vercel✓ Stored image in your project's registry✓ Deployed to Fluid computeProduction: https://my-server.vercel.app
```

One command builds the image, stores it, and ships it to Fluid compute, then prints the production URL.

That is it. Two files, and you are live. Every `git push` rebuilds the image and hands you a fresh preview URL. Or run `vercel` to deploy without committing.

We used Go in this example, but any language works. Rails, Spring Boot, Express, Laravel, ASP.NET, FastAPI, and a web server behind nginx all deploy the same way. The only rule is that your server listens on `$PORT`, which defaults to `80`. If it speaks HTTP, it deploys. Yes, even Java. And yes, even PHP.

### [Copy link to heading](#what-you-get)What you get

A container on Vercel is a first-class citizen. It runs on the same platform, and the same compute, as your frontend and the rest of your [services on Vercel](https://vercel.com/blog/vercel-services-run-full-stack-on-vercel).

-   **A preview deployment for every push:** Every commit gets its own immutable URL you can open, share, and roll back to.
    
-   **Autoscaling, in both directions:** Traffic arrives and you scale out. Traffic stops and your instances wind down. You never size a fleet or guess a concurrency number.
    
-   [**Active CPU pricing**](https://vercel.com/blog/introducing-active-cpu-pricing-for-fluid-compute): Fluid compute bills for the time your code is actually running, so an idle server, parked on a slow query or an upstream API, isn't burning CPU while it waits. You pay for execution time, not wall time.
    
-   **Observability, included:** Logs, traces, and metrics for your container live in the same dashboard as everything else you ship.
    
-   **One project, one domain:** Your container sits beside your frontend and your other services and talks to them privately over the Vercel network. Your full stack ships as one deploy.
    

### [Copy link to heading](#built-to-start-fast)Built to start fast

A container is only as good as the time it takes to answer its first request.

When Vercel builds your image, it stores it as an [optimized boot image](https://vercel.com/blog/optimizing-vercel-sandbox-snapshots), a compressed snapshot of the container's disk tuned for fast startup.

When a container boots, we stream that snapshot and decompress it on demand, rather than downloading the whole image before anything runs. Your server can start handling requests before the full image is in place, so a larger image does not have to finish downloading first.

Once an instance is running, Fluid compute keeps it warm and serves many requests from it, rather than starting a fresh copy for each one. You get the responsiveness of a warm server and the bill of one that sleeps when idle.

Each container is a stateless process: it takes a request, returns a response, and keeps nothing in between. Persistent state lives in a backing service you attach, like a database or cache from the [Vercel Marketplace](https://vercel.com/marketplace). Because an instance holds nothing that has to survive, Vercel can add instances when traffic arrives and retire them when it stops. We're also working on shipping durable storage attached to containers soon.

### [Copy link to heading](#why-now)Why now?

Our [first platform](https://www.npmjs.com/package/now) let you deploy a Dockerfile with a single command. That was a decade ago, and the idea was right, but the infrastructure to make it great didn't exist yet.

We've spent the years since building the primitives to handle it well. They power everything you run on Vercel: Builds, Functions, Sandboxes, and now containers. It all scales with traffic, and you only pay for the CPU you use. A container is now a first-class citizen, running on the same system as everything else.

Framework detection is our front door. When we recognize your framework, we read your code and [derive the infrastructure your app needs](https://vercel.com/blog/framework-defined-infrastructure), because the code already describes what it should do. For most apps it's the fastest way to ship. A Dockerfile is for everything else: a service that needs a system library like FFmpeg or Chromium, a framework we do not auto-detect yet, or an app you want to bring exactly as it already runs. It is the universal way to say how a program should be built, so when there is no framework to read, we meet it directly.

Everything around your Dockerfile is zero configuration. You point at the image, and the build, the registry, the rollout, the scaling, and the URL all just happen.

### [Copy link to heading](#backends-are-back)Backends are back

Your backend now ships the way your frontend does: one push, one preview, one platform. We can't wait to see what you build.

[Read the docs](https://vercel.com/docs/functions/container-images) or [deploy an example](https://vercel.com/templates) to get started.

---

## Introducing Vercel for Slack

<https://vercel.com/blog/introducing-vercel-for-slack> · 2026-08-19 · 1438 words

[Vercel Agent](https://vercel.com/agent) now works in Slack. Mention it the way you'd pull a teammate into a thread, and it reads the discussion, answers with the context of the platform running your app, and turns the team's decisions into changes you approve. Vercel for Slack is available today in Public Beta for Pro and Enterprise teams.

[Work starts in conversation](https://slack.com/customer-stories/vercel-story). An alert gets noticed in a channel, a fix gets agreed on in a thread, and then someone leaves Slack to do the work. With Vercel Agent, you can tag it in for answers about your infrastructure or hand it the work, all without leaving the conversation.

### [Copy link to heading](#what-is-vercel-agent)What is Vercel Agent?

When we [introduced Vercel Agent](https://vercel.com/blog/introducing-vercel-agent), we called it an AI teammate for your development workflow. Today it's the [first responder for your production apps](https://vercel.com/blog/vercel-agent). When something changes, it investigates your logs, metrics, and deployments, finds the root cause, and proposes a fix, often before anyone's opened a laptop. Give it a PR and it flags the regressions and risky changes that a passing CI run won't show.

In Slack, that agent joins the conversation itself. It is a [core part of Vercel](https://vercel.com/blog/agentic-infrastructure), so your deployments, build statuses, logs, metrics, code reviews, and PRs are in front of it before you've typed anything. Mention `@Vercel` in a channel, a thread, or a DM, and it answers like a teammate with every tab already open. And answering is only half of it, because once you know what's wrong, the agent can go fix it:

-   **Diagnose issues**: Investigate incidents, trace errors to the deploy that caused them, explain a cost spike, and answer questions about your codebase.
    
-   **Code alongside your team**: Fix failing builds and CI, review PRs with knowledge of how the code runs in production, and turn a thread's decision into a tested pull request.
    
-   **Operate your projects**: Roll back deployments, update configuration, manage feature flags, and resolve unusual usage before it becomes a bill.
    

The agent is read-only by default, and anything that changes code or configuration goes through a plan that you approve. Vercel for Slack brings that whole loop into the threads where you and your team are already discussing work.

### [Copy link to heading](#accelerating-development-with-a-conversation)Accelerating development with a conversation

Teams form decisions through collaboration. Incidents get triaged in a channel, code reviews are hashed out in threads, and features get scoped between standups. But once a thread settles on what needs to be done, the actions still need to be translated into tickets, terminal commands, and PR descriptions. Every handoff drops context, and the conversation that held the full picture becomes the thing everyone summarizes from memory. Vercel for Slack gives the agent the full context of the original conversation for every turn.

#### [Copy link to heading](#answers-in-one-place-speed-up-the-whole-team)Answers in one place speed up the whole team

A deployment goes out at 1:42pm. By 1:51, checkout error rates are climbing and an alert lands in the platform engineering channel.

What used to happen next was a scatter. One responder opens logs to see how bad it is, another asks their coding agent to line up the anomaly up against the deploy timeline, a third starts reading the diff of the suspect PR. Each person investigates alone, in their own view of the same system, and the thread is where they reconcile by pasting screenshots, summarizing agent findings, and correcting each other as they establish the actual state of the situation. The minutes that matter get spent assembling the picture before anyone can act on it.

With Vercel for Slack, the first question goes to the agent, right in the thread.

**"@Vercel, checkout errors spiked after the 1:42 deploy. What's going on?"**

It sizes the blast radius, correlates the spike with the deployment, identifies the PR that shipped in it, and explains which change, in which file, caused which behavior. The answer arrives in the channel, where the whole team reads the same diagnosis at the same time.

Nobody has to re-run a teammate's investigation or wait for the recap, because everyone is looking at the same report. The engineer who knows the checkout code speaks to the change itself, the on-call weighs how many users are hit against how long a fix would take, and what's left for the thread is the decision, whether to roll back or fix forward.

#### [Copy link to heading](#vercel-agent-understands-how-your-team-already-talks)Vercel Agent understands how your team already talks

The thread, channel, or DM is the beginning of the prompt itself. You don't have to re-explain anything that was already said, or pass in any context from your app or codebase. Bring it into a conversation like any other team member and it reads the room, picks up what the team has been discussing, and can act on it when asked.

One example of this was our iteration on Vercel Agent's plan card, the message it posts in Slack to request approval for the work it wants to do. The first version we tested internally was a wall of text, but when one of our engineers noticed that people were often approving actions without reading all of the details, we had a redesign thread that ran 47 replies deep on what a person needs to see before confirming an action on the group's behalf. Tagging Vercel Agent in at the end of that thread is what resulted in the card you see today.

By the time a PR from a conversation like this lands in a thread, the tests have already run and the preview deployment is live, so the team can start reviewing it in the conversation that kicked off the feature in the first place.

#### [Copy link to heading](#vercel-agent-reviews-pull-requests-in-the-thread)Vercel Agent reviews pull requests in the thread

Ask Vercel Agent for a review in the thread where the PR is being discussed, and the conversation is passed along with the request. What your team has been raising becomes context for what Vercel Agent checks, and its findings land back in the same thread, so discussing them, deciding, and fixing them is one loop instead of a trip to another tool.

One example from one of our own PR discussions was a review someone requested mid-thread. The agent came back with a bug sitting just outside the diff, the same title rendered twice in the UI.

A finding doesn't have to end as a comment. If the team agrees it should be fixed, the agent can patch the PR itself, and that change arrives the same way everything else does, as a proposal waiting on an approval.

#### [Copy link to heading](#changes-always-go-through-a-plan-your-team-approves)Changes always go through a plan your team approves

When a thread lands on a change, Vercel Agent replies with a plan that says what will happen, in which project, and at what scope. Decisions in a channel form in fragments, across people and hours, and nobody types "DECISION:", so the plan is where all of that becomes one explicit thing to say yes to. Once approved, the agent does the work under its own identity, and the audit trail shows who asked, who approved, and what ran.

One example from our own threads was a cached page showing stale data after we shipped an update. Someone called for a cache purge scoped to just the specific pages, since it was peak hours, and asked the agent to set it up. The plan that came back matched the ask exactly, a purge of the specific path and its sub-paths with the rest of the site's cache left warm, and nothing ran until someone approved it.

Whether a thread ends in a diagnosis, a pull request, or a cache purge, the last step belongs to a person.

### [Copy link to heading](#getting-started)Getting started

The easiest way to get started is to simply ask Vercel Agent questions. Ask about the error you're chasing or the build that just failed, see what comes back, and let your team decide over time how much of the work the agent takes on. Until someone approves a plan, it's only ever reading.

Vercel for Slack is available in Public Beta for Pro and Enterprise teams. To start using Vercel Agent in Slack:

-   Open the [Slack app in the Vercel Marketplace](https://vercel.com/marketplace/slack) and click `Connect Account`.
    
-   Choose the Slack workspace to connect, then click `Allow`.
    
-   Mention `@Vercel` in a channel, a thread, or a DM.
    
-   Sign in to your Vercel account when it prompts you the first time.
    

See the [Vercel for Slack docs](https://vercel.com/docs/agent/chat/slack) for setup and permissions.

Vercel Agent can make mistakes. Review proposed changes before approving.

---

## Agentic Infrastructure - Vercel

<https://vercel.com/> · 99 words

### Build agents on infrastructure that thinks like them

Notion powers millions of agent conversations daily on Vercel.

-   Features
-   Durable Orchestration
-   Sandboxed Environments
-   AI Model Gateway
-   Fluid Compute

### Ship apps that scale from zero to millions instantly

Zapier serves over 100 million monthly website visits on Vercel.

-   Features
-   Global Delivery
-   Deployment Environments
-   Serverless Functions
-   Web Application Firewall

### Host platforms that serve every customer

Mintlify powers documentation for over 20,000 companies on Vercel.

-   Features
-   Tenant Isolation
-   Domain Management
-   Custom SSL Certificates
-   Preview URLs

---

## Firewall concepts

<https://vercel.com/docs/vercel-firewall/firewall-concepts> · 1561 words

To safeguard your application against malicious activity, Vercel's platform-wide firewall is the first line of defense, inspecting requests as they arrive at Vercel's CDN. Once a request passes this layer, [deployment protection](https://vercel.com/docs/deployment-protection) checks whether it can continue based on access rules set at the level of your project.

If allowed to go through, the request is subject to the rules that you configured with the [Web Application Firewall (WAF)](https://vercel.com/docs/vercel-firewall/vercel-waf) at the level of your project. If the request is not blocked by the WAF rules, your deployment can process and serve it.

If you [enabled a persistent action](https://vercel.com/docs/vercel-firewall/vercel-waf/custom-rules#persistent-actions) for a WAF rule and it blocks the request, the source IP address is stored in the platform firewall so that future requests from this source continue to be blocked for the specified time period. These future blocks happen at the level of the platform-wide firewall.

![How Vercel protects every incoming request with multiple layers](https://vercel.com/vc-ap-vercel-docs/_next/image?url=https%3A%2F%2F7nyt0uhk7sse4zvn.public.blob.vercel-storage.com%2Fdocs-assets%2Fstatic%2Fdocs%2Fsecurity%2Fvercel-firewall-protection-concept-light.png&w=1200&q=75)
*How Vercel protects every incoming request with multiple layers*

The Vercel Firewall allows several possible actions to be taken when traffic matches a rule. These actions, that can be taken by custom rules or system DDoS mitigations, apply when detecting malicious traffic. You can view the actions and their results in the [Firewall and Monitoring](https://vercel.com/docs/vercel-firewall#observability) tabs.

The log action allows you to monitor and record specific traffic patterns without affecting the request. When a request matches a rule with the log action:

-   The request is allowed to proceed normally.
-   Details about the request are logged and displayed in the Firewall and Monitoring tabs, and sent to log drains for analysis.
-   There is no impact on the visitor's experience.

This is useful for monitoring suspicious patterns or gathering data about specific types of traffic before implementing stricter actions.

The deny action blocks requests immediately when they match a rule. When a request is denied:

-   A `403 Forbidden` response is returned.
-   The request does not reach your application.
-   The request does not incur [Edge Requests](https://vercel.com/docs/manage-cdn-usage#edge-requests) or [Fast Data Transfer](https://vercel.com/docs/manage-cdn-usage#fast-data-transfer).

This is the most restrictive action and you should use it for known malicious traffic patterns or IP addresses.

A security challenge verifies that incoming traffic originates from a real web browser with JavaScript capabilities. Only human visitors using a web browser can pass the challenge and access protected resources, while non-browser clients (bots, scripts, etc.) cannot.

Use the challenge action when you want to block automated traffic while allowing legitimate users to access your content. It offers a middle ground between the log and deny actions, protecting against bots while maintaining accessibility for real visitors through a simple one-time verification.

When the challenge action is applied:

1.  During this process, visitors see a Vercel Security Checkpoint screen:
    
    ![Vercel challenge page](https://vercel.com/vc-ap-vercel-docs/_next/image?url=https%3A%2F%2F7nyt0uhk7sse4zvn.public.blob.vercel-storage.com%2Fdocs-assets%2Fstatic%2Fdocs%2Fsecurity%2Fchallenge-light.png&w=1920&q=75)
    *Vercel challenge page*
    
    -   The browser must execute JavaScript code to prove it's a real browser.
    -   The code computes and submits a challenge solution.
    -   The system validates browser characteristics to prevent automated tools from passing.
    -   If the challenge succeeds, the [WAF](https://vercel.com/docs/vercel-firewall/vercel-waf) validates the request as a legitimate browser client and continues processing the request, which includes evaluating any additional WAF rules.
    -   If the challenge fails, the request is blocked before reaching your application.
    
    The checkpoint page localizes to a language based on the visitor's browser settings and respects their preferred color scheme, ensuring a seamless experience for legitimate users.
    
2.  -   Upon successful verification, a challenge session is created in the browser.
    -   Sessions are valid for 1 hour.
    -   All subsequent requests within the session are allowed.
    -   Challenge sessions are tied to the browser that completed the challenge, ensuring secure session management.
    -   After session expiration, the client must re-solve the challenge.

If your application makes additional requests (e.g., API calls) during a valid session, they automatically succeed. This is particularly useful for server-side rendered applications where the server makes additional requests to APIs in the same application.

-   API routes that are protected by a challenge rule can only be accessed within a valid challenge session.
-   Direct API calls (e.g., from scripts, cURL, or Postman) will fail if they require challenge validation.
-   Direct API calls from outside a valid challenge session will not succeed.
-   If a user hasn't completed a challenge session through your website first, they cannot access challenged API routes.
-   Automated tools and scripts cannot establish challenge sessions. For legitimate automation needs, use [Bypass](#bypass) to allow specific trusted sources.

The bypass action allows specific traffic to skip any subsequent firewall rules. When a request matches a bypass rule:

-   For custom rule bypasses, the request is allowed through any custom or managed rules.
-   For system bypasses, the request is allowed through any system-level mitigations.
-   The request proceeds directly to your application.

This is useful for trusted traffic sources, internal tools, or critical services that should never be blocked.

A Denial of Service (DoS) attack happens when one device attempts to exhaust the resources of a system using methods such as sending a large amount of data to a server or network. These attacks can often be mitigated by finding and closing off the connection to the source of the attack.

A Distributed Denial of Service (DDoS) attack happens when multiple connected devices are used to simultaneously overwhelm a site with targeted, illegitimate traffic. The goal of DoS and DDoS attacks is to disrupt access to the servers hosting the site.

In addition to built-in systems like [rate limits](https://vercel.com/docs/limits#rate-limits), you can protect yourself against such attacks with [WAF custom rules](https://vercel.com/docs/vercel-firewall/vercel-waf/custom-rules), [WAF Rate Limiting](https://vercel.com/docs/vercel-firewall/vercel-waf/rate-limiting) and securing your backend with [Secure Compute](https://vercel.com/docs/networking/secure-compute) and [OIDC](https://vercel.com/docs/oidc).

The OSI model is a concept that outlines the different communication steps of a networking system. Different attack types can target different layers of the [OSI model](https://en.wikipedia.org/wiki/OSI_model).

DDoS attacks target either the [network](#layer-3-ddos) (layer 3), the [transport](#layer-4-ddos) (layer 4) or the [application](#layer-7-ddos) (layer 7) layer of the OSI model. Vercel mitigates against these attacks, and protects the entire platform and all customers from attacks that would otherwise affect reliability.

The goal of a layer 3 (L3) DDoS attack is to slow down and ultimately crash applications, servers, and entire networks. These attacks are often used to target specific IP addresses, but can also target entire networks.

The goal of a layer 4 (L4) DDoS attack is to crash and slow down applications. They target the 3-way-handshake used to establish a reliable connection between TCP connections. This is often called a SYN flood. Layer 4 DDoS attacks are used to target specific ports, but can also target entire protocols.

The goal of a Layer 7 (L7) DDoS attack is to crash and slow down software at the application layer by targeting protocols such as HTTP, which is often done with GET and POST requests. They are often silent and look to leverage vulnerabilities by sending many innocuous requests to a single page. Vercel provides sophisticated proprietary L7 mitigation and is constantly tuning and adjusting attack detection techniques.

Vercel Firewall leverages [JA3](#ja3) and [JA4](#ja4) TLS fingerprints to identify and restrict malicious traffic. TLS fingerprints allow the unique identification of user sessions inspecting details in the Transport Layer Security (TLS) protocol initiation process.

TLS fingerprinting is a process used to identify and categorize encrypted network traffic.

It creates a unique identifier from the details of a [TLS client hello packet](https://serializethoughts.com/2014/07/27/dissecting-tls-client-hello-message), such as the version of TLS, supported cipher suites, and included extensions.

-   TLS fingerprints allow the unique identification of user sessions
-   JA3 and JA4 transform the TLS handshake details into a hash
-   The hash is used as a fingerprint to monitor and restrict access
-   The hash can then be read from your Functions through the request headers

Controlling access by TLS fingerprint allows us to mitigate malicious actors that use sophisticated methods of attack. For example, a DDoS attack that is spread across multiple user agents, IPs, or geographic locations might share the same TLS fingerprint. With fingerprinting, the Vercel Firewall can block all of the traffic that matches that TLS fingerprint.

JA4 is part of the [JA4+ suite](https://github.com/FoxIO-LLC/ja4?tab=readme-ov-file#ja4-details). It offers a more granular and flexible approach to network fingerprinting, helping to mitigate malicious traffic and prevent bot traffic.

With JA4, it's possible to identify, track, and categorize server-side encrypted network traffic. This is crucial in detecting and mitigating potential security threats, as it provides a more comprehensive view of the network traffic when used in conjunction with other fields.

JA3 is a tool that uses TLS fingerprinting to track and identify potential security threats. It specifically focuses on the details of the TLS client hello packet, generating a unique hash from it. This [client hello packet](https://serializethoughts.com/2014/07/27/dissecting-tls-client-hello-message) contains specific information such as the TLS version, supported cipher suites, and any extensions used.

In the Allowed Requests view of the [Vercel WAF monitoring page](https://vercel.com/docs/vercel-firewall/vercel-waf#traffic-monitoring), you can group the web traffic by JA4 Digest to review the fingerprints of the live traffic or the past 24 hours.

The following headers are sent to each deployment and can be used to process the [request](https://developer.mozilla.org/en-US/docs/Web/API/Request) before sending back a response. These headers can be read from the [Request](https://nodejs.org/api/http.html#http_message_headers) object in your [Function](https://vercel.com/docs/functions/functions-api-reference#function-signature).

Unique client fingerprint hash generated by the JA4 algorithm. JA4 is preferred as it offers a more granular and flexible approach to network fingerprinting, which helps with mitigating malicious traffic.

Unique client fingerprint hash generated by the JA3 algorithm.

---

## March 2020

<https://vercel.com/blog/changelog-march-2020> · 2020-03-01 · 439 words

### [Copy link to heading](#dashboard)Dashboard

-   Deleted teams and personal accounts will now undergo a buffer period during which they may be recovered (7 days for teams and 48 hours for personal accounts). Only after this period, their usernames and slugs will be available.
    
-   The "need help?" link in the "Domains" settings of each project now opens the support form instead of a ZenDesk modal.
    
-   Using a team slug that used to be the a username of personal account is now possible, but requires the personal account that used to own the name to deploy to the team, in order to "unlock" the name.
    
-   The "Billing" page of Personal Accounts (Hobby) now properly mentions that Personal Accounts cannot be upgraded and remain free forever. However, creating a team is advised for professional use cases or collaborating with other people.
    
-   Personal accounts and teams now render a "Invite Team" button on the dashboard, which allows for creating a team and inviting members much more easily.
    
-   The "Tokens" page now shows a "Load More" button if more than 20 tokens are present.
    
-   Public Deployments now show Domains on their overview instead of `–`.
    
-   A "Preview Deployment Suffix" fieldset was added to the team settings, which let's you replace the `now.sh` suffix with a Custom Domain.
    

### [Copy link to heading](#git-integration)Git Integration

-   For the [GitHub integration](https://zeit.co/github), personal accounts on Vercel can only be connected to personal accounts on GitHub, not organizations.
    

### [Copy link to heading](#documentation)Documentation

-   Configuration and API References will now show up in the documentation search.
    
-   The information about how to retrieve data for a team has moved from the "Users and Teams" section in "Platform" to the [API reference](https://zeit.co/docs/api#api-basics/authentication/accessing-resources-owned-by-a-team).
    
-   The maximum payload for Serverless Functions is now [documented](https://zeit.co/docs/v2/platform/limits#serverless-function-payload-size-limit).
    
-   Now that Preview Deployments are responding with a `X-Robots-Tag` header set to `noindex`, a detailed section was added [here](https://zeit.co/docs/v2/platform/deployments#preview).
    
-   Detailed instructions about how to disconnect the GitHub, Bitbucket or GitLab integration were added to their respective documentation pages ([example at the bottom](https://zeit.co/docs/v2/git-integrations/zeit-now-for-github)).
    
-   The Developer Tools Console on the Documentation now prints a link to the respective Git commit.
    
-   [Removed](https://github.com/zeit/now/pull/3864) all examples for which no option is provided in the Project Settings.
    

### [Copy link to heading](#deployments)Deployments

-   Personal accounts that downgrade to the "Hobby" plan will not see their deployments get blocked anymore.
    
-   Updated Ruby to version [2.7.x](https://zeit.co/docs/runtimes#official-runtimes/ruby/ruby-version) for new deployments.
    

### [Copy link to heading](#domains)Domains

-   Moving a domain to a different personal account or team now works flawlessly again.
    
-   The `.yt` TLD is no longer available due to requiring a local address.

---

## Your guide to headless commerce

<https://vercel.com/blog/your-guide-to-headless-commerce> · 2023-02-27 · 2070 words

Learn how going headless enables digital experiences that convert.

[

**Already experienced with headless?**

Learn how to configure headless WordPress with your Next.js application.

Read more

](https://vercel.com/guides/wordpress-with-vercel)

1.  [What is a headless commerce architecture?](#what-is-a-headless-commerce-architecture)
    
2.  [Monolithic commerce vs. headless commerce](#monolithic-commerce-vs.-headless-commerce)
    
3.  [What are the benefits of headless commerce?](#what-are-the-benefits-of-headless-commerce)
    
4.  [How to adopt headless commerce](#how-to-adopt-headless-commerce-an-iterative-approach)
    
5.  [Headless commerce use cases](#headless-commerce-use-cases-what-to-do-once-you’ve-gone-headless)
    

### [Copy link to heading](#what-is-a-headless-commerce-architecture)What is a headless commerce architecture?

A headless commerce architecture is the decoupling of your backend and frontend as an ecommerce storefront. Rather than relying on a monolithic ecommerce platform with a built-in frontend, headless commerce gives you the ability to custom-build an application stack that best fits your needs.

![](https://vercel.com/vc-ap-vercel-marketing/_next/image?url=https%3A%2F%2Fassets.vercel.com%2Fimage%2Fupload%2Fcontentful%2Fimage%2Fe5382hct74si%2F3hLgKPky201oZ12G4Rm2kc%2F91d021ee09ea2bba718bfca778193847%2F1920x1004-Blog_Graphic_1_lightmode_2x.png&w=1920&q=95)![](https://vercel.com/vc-ap-vercel-marketing/_next/image?url=https%3A%2F%2Fassets.vercel.com%2Fimage%2Fupload%2Fcontentful%2Fimage%2Fe5382hct74si%2F2uciQwV0UTU9FE9Y0xywJJ%2F3c1a21669fece66242ed19b9728db93c%2F1920x1004-Blog_Graphic_1_2x.png&w=1920&q=95)

### [Copy link to heading](#how-does-headless-commerce-work)**How does headless commerce work?**

A headless commerce storefront relies on an API to work. The API connects the frontend and backend—sending information between the two in real time. The backend tool sends data like products, reviews, and pricing information to the storefront’s frontend that customers see. Meanwhile, the frontend shares customer touchpoints with the backend to enrich customer profiles for deeper personalization and targeting. Due to the block-by-block nature of headless commerce, you can build your own world-class tech stack using the best solutions that fit your needs.

### [Copy link to heading](#monolithic-commerce-vs.-headless-commerce)**Monolithic commerce vs. headless commerce**

Monolithic commerce has been the standard for years, and the monolithic applications that make it up can vary. Two of the more commonly used approaches in commerce include the _managed monolith_, encompassing popular ecommerce platforms like Shopify, BigCommerce, and Salesforce Commerce Cloud. The alternative is the _self-built monolith_: tightly coupled frontend and backend code bases, often with legacy languages.

While both approaches have unique limitations, neither provides the front and backend flexibility required to deliver the fast, personalized, omnichannel experiences powering the growth of leading commerce brands today.

![Headless architecture allows teams to work more independently of each other, which means faster iteration.](https://vercel.com/vc-ap-vercel-marketing/_next/image?url=https%3A%2F%2Fassets.vercel.com%2Fimage%2Fupload%2Fcontentful%2Fimage%2Fe5382hct74si%2F4cVjv6MR2ur9WjhkRvEBhf%2Fca052d1a2a37d96d91d4e6cdf732154c%2F1920x1004-Blog_Graphic_2_lightmode_2x.png&w=1920&q=95)![Headless architecture allows teams to work more independently of each other, which means faster iteration.](https://vercel.com/vc-ap-vercel-marketing/_next/image?url=https%3A%2F%2Fassets.vercel.com%2Fimage%2Fupload%2Fcontentful%2Fimage%2Fe5382hct74si%2F1dj2g9Wh77zKvUZwYbz00K%2F8e63b72cf5cd9241a9ccbcc5fbe5939a%2F1920x1004-Blog_Graphic_2_2x.png&w=1920&q=95)

Headless architecture allows teams to work more independently of each other, which means faster iteration.

[Headless commerce](https://vercel.com/resources/why-innovators-are-going-headless) has grown in popularity in the last few years to solve for the tradeoffs that come with monolithic commerce. A composable stack’s modularity allows for more flexibility and better performance. Rather than using one provider for both the frontend and backend, companies can use one company for their backend and another for their frontend. These pieces of the architecture are then combined using an API for a seamless experience that’s been customized for the organization.

### [Copy link to heading](#the-limitations-of-the-monolith)The limitations of the monolith

From vendor lock-in to a lackluster user experience, monolithic architectures come with numerous limitations that drive brands to go headless instead.

![](https://assets.vercel.com/image/upload/f_auto,c_fill,w_64,h_64,q_75/contentful/image/e5382hct74si/6XjBBMLe9CEDRZbbZOstzX/3a12b85a95574fa36cc492dccf640f58/Frame_2.png)

Legacy monolith applications

Teams using legacy monolithic applications are typically locked into technology that was brought in a while ago and is hard to replace. Tooling and infrastructure often get built around this, codifying it into place and slowing down the processes behind the application (and the application itself).

![](https://assets.vercel.com/image/upload/f_auto,c_fill,w_64,h_64,q_75/contentful/image/e5382hct74si/4Jf6WeQtzDcVzeVVYgSiSU/1380bc243297dbe2acfcb1db544292e4/Frame_3.png)

End-to-end tools

Custom design systems are hard to implement, and third-party tooling or scripts drag down performance. They can’t swap out one piece of the puzzle for another (i.e. if Marketing wants to use a different CMS).

![](https://assets.vercel.com/image/upload/f_auto,c_fill,w_64,h_64,q_75/contentful/image/e5382hct74si/4W2ksbBQR7BqQjDONP6mgf/bd0ec8025a0b9a60f57af1acb87410fe/Frame_1.png)

Performance

Users experience slow site performance/load times due to API performance, data transfer, and caching limitations of the legacy platform or homegrown system.

![](https://assets.vercel.com/image/upload/f_auto,c_fill,w_64,h_64,q_75/contentful/image/e5382hct74si/3VmlgMdcL6V16ThGao1hh4/bf0b620d9f8015c0926146b92b12b6de/Frame_4.png)

Availability

Downtime can be frequent from outages, impaired performance, and reliability issues due to tech debt, over-reliance on inconsistent platforms, or dependencies with increasingly large homegrown code bases.

![](https://assets.vercel.com/image/upload/f_auto,c_fill,w_64,h_64,q_75/contentful/image/e5382hct74si/IGVr22v9UNCmH97FfXE3w/865883bf6bf9fff5763849044698e60e/Frame_5.png)

SEO

Sites were not designed for today’s modern user experience, often measured by Google Core Web Vitals, and current performance is hindering SEO rankings.

![](https://assets.vercel.com/image/upload/f_auto,c_fill,w_64,h_64,q_75/contentful/image/e5382hct74si/1l97PNmiqDit0vSIu69nop/d4a16ea9d5fbef1217f1d8e5674b9045/Frame_6.png)

Developer talent and retention

It can be challenging to attract and retain talented developers due to the archaic, restrictive, and cumbersome nature of developing and shipping monolithic applications.

![](https://assets.vercel.com/image/upload/f_auto,c_fill,w_64,h_64,q_75/contentful/image/e5382hct74si/7wD6ajLf4TL5v7MR65Jogp/211371880c77590b9079f60fc27ef15d/Frame_7.png)

Tech debt

Growing tech debt leads to application outages, security vulnerabilities, and increased maintenance costs.

![](https://assets.vercel.com/image/upload/f_auto,c_fill,w_64,h_64,q_75/contentful/image/e5382hct74si/j7m1IkZrmnNxO47yBAWKa/a60fa6882474a6095bac75c827e041c2/Frame_8.png)

Technology limitations

Teams are unable to use modern, best-of-breed technologies and are beholden to the capabilities and limitations of their monolith.

![](https://assets.vercel.com/image/upload/f_auto,c_fill,w_64,h_64,q_75/contentful/image/e5382hct74si/39NZ2vMb20X8oM0MlW9oms/cd0c0b7eef907ab129f452be587f09fd/Frame_9.png)

Developer toil

Great developers are spending time configuring infrastructure, fixing bugs, and making small changes that marketers could make—instead of focusing on more impactful and inspiring development work to optimize the user experience.

### [Copy link to heading](#what-are-the-benefits-of-headless-commerce)**What are the benefits of headless commerce?**

By adopting a headless architecture, teams can break free from the limitations of monolithic platforms and build a more modern tech stack. This allows organizations to go to market faster, cut costs, and surpass customers’ expectations—ultimately boosting sales and revenue. 

**Improve developer velocity**

[**Sixty-eight percent of organizations**](https://assets.kpmg/content/dam/kpmg/be/pdf/2019/11/agile-transformation.pdf) **credit delivering products faster as one way they’re able to keep up with changing customer needs.** Headless commerce lets your frontend developers use modern languages and cloud-based tooling to expedite builds, automate tasks, and improve collaboration. Developer workflows optimized for iteration let commerce brands deliver the shopping experience customers want.

**Experience cost savings (operator leaner)**

Companies can spend up to 75% of their [total IT budget](https://www.wired.com/insights/2012/10/move-to-cloud-consider-saas/#:~:text=Resource%20costs%3A%20Gartner%20estimates%20that,run%20existing%20systems%20and%20infrastructure.) running and maintaining existing systems and infrastructure. Choosing a serverless frontend platform to deploy applications reduces DevOps overhead, increases infrastructure efficiency, and costs a fraction of most managed monolithic platform licenses.

**Use cutting-edge technologies**

[**Around 75% of consumers**](https://www.salesforce.com/form/pdf/state-of-the-connected-customer-3rd-edition/?d=7010M000000ujR9QAI&nc=7010M000000ujR4QAI) **expect brands to stay up-to-date with the technology used to create their shopping experience.** With the freedom of choice that comes through a composable stack, companies can easily adopt emerging tech like AI and machine learning to offer individualized, higher-converting shopping experiences. 

**Empower collaborators**

From updating blog posts to landing pages, developers are often responsible for making the frontend changes requested by content creators and marketers when using an all-in-one solution. These collaborators can make edits on their own with a headless solution.

> As our company grows, teams across Rippling are empowered to make the changes they need. Over 90% of site changes are deployed by stakeholders immediately, giving me the freedom to keep improving Rippling’s site performance and user experience." 
> 
> ![](https://assets.vercel.com/image/upload/f_auto,c_fill,w_32,h_32,q_75/contentful/image/e5382hct74si/5YhKHQuH2jZejbDdvVD04Q/7e090b010ca7ab6ea0ee9475b0d504a0/Frame_10.png)
> 
> Web Engineer at Rippling

**Increase site performance**

Monolithic solutions struggle to deliver on modern, SEO-impacting performance metrics like Core Web Vitals. By choosing a headless infrastructure, ecommerce stores increase the value of every user experience—directly impacting traffic and sales.

**Enable omnichannel experiences**

**A strong omnichannel strategy yields** [**56% higher customer retention**](https://www.forbes.com/sites/forbestechcouncil/2018/06/15/omnichannel-cx-how-to-overcome-technologys-artificial-divide-and-succeed-at-being-seamless/?sh=60d9c44b3205), so retailers are focusing on connecting customer engagement across all digital channels. Headless architecture lets commerce development teams deliver high-performing omnichannel experiences without re-architecting the design for every channel.

### [Copy link to heading](#how-to-adopt-headless-commerce:-an-iterative-approach)**How to adopt headless commerce: an iterative approach**

Despite the many benefits of headless commerce, migrating an entire application architecture can be daunting and expensive. That’s why companies typically take an incremental approach to migration, rather than moving everything all at once. This allows them to make sure they’re porting over what makes sense, and carefully deduce what is best left on their legacy platform. 

### [Copy link to heading](#headless-commerce-use-cases:-what-to-do-once-you’ve-gone-headless)Headless commerce use cases: what to do once you’ve gone headless

The ecommerce market share is growing fast. While only [17.8% of sales](https://www.insiderintelligence.com/content/worldwide-ecommerce-forecast-update-2022) were made online in 2020, 23% of consumers are expected to buy online by 2025. What’s driving this growth? Beyond the growing convenience of online shopping, brands are intent on delivering modern user experiences that grow sales and build loyalty. From adopting AI to creating content at scale, check out these headless commerce use cases to see how you can make the most out of your composable architecture.

#### [Copy link to heading](#prioritize-the-developer-experience-to-create-faster-)Prioritize the developer experience to create faster

A headless architecture empowers developers to create at the moment of inspiration. With a managed frontend, teams can instantly introduce flexibility, simplicity, and speed into the development workflow. This is where Vercel can help. 

Vercel is the platform leader, backed by a large developer community as the creators of [Next.js](https://nextjs.org/). With a fully-managed frontend like Vercel, your dev team can take advantage of git integrations, performance optimizations, and Vercel’s [Incremental Static Regeneration](https://vercel.com/docs/concepts/next.js/incremental-static-regeneration) (ISR) to create faster.

![Shorter build times with ISR vs. longer builds without ISR.](https://vercel.com/vc-ap-vercel-marketing/_next/image?url=https%3A%2F%2Fassets.vercel.com%2Fimage%2Fupload%2Fcontentful%2Fimage%2Fe5382hct74si%2FoJjM15mG4Wnl5eJApQGmV%2Ff5f904685e979523d7c5dd7db4184c91%2F1920x1004-Blog_Graphic_3a_Lightmode_2x.png&w=1920&q=95)![Shorter build times with ISR vs. longer builds without ISR.](https://vercel.com/vc-ap-vercel-marketing/_next/image?url=https%3A%2F%2Fassets.vercel.com%2Fimage%2Fupload%2Fcontentful%2Fimage%2Fe5382hct74si%2F5R0NjGkU14aCCRme1SgXOc%2F6fc6ee9b66725c04da8c23d6c50bfb4c%2F1920x1004-Blog_Graphic_3a_2x.png&w=1920&q=95)

Shorter build times with ISR vs. longer builds without ISR.

ISR improves site speed and SEO so that you can increase organic traffic with better Core Web Vitals. Now your team can balance site performance and data freshness—two key components for ecommerce sites. 

![](https://assets.vercel.com/image/upload/f_auto,c_fill,w_64,h_64,q_75/contentful/image/e5382hct74si/5MVnKveGCGl0TY1sp1LvTn/2c44f864e52589ee8edf69d1b7554ff8/desenio-square.png)

The world’s largest affordable art supplier [Desenio](https://vercel.com/customers/desenio) leverages ISR to shorten build times for their massive site, going from hours to minutes with Vercel.

To further improve the developer experience, teams can rely on Vercel’s serverless infrastructure for hosting, scaling, and security. By using a tool for hosting and infrastructure, you can remove the obstacles that stand in your developers’ way. Built-in features like headless commerce integrations, secure previews, and built-in performance optimizations help, too—allowing you to get to market that much faster.

#### [Copy link to heading](#personalize-through-experimentation)Personalize through experimentation

With a modern infrastructure, companies can provide the most relevant user experience without sacrificing performance. Methods like [A/B testing](https://vercel.com/templates/next.js/ab-testing-simple) and feature flags allow you to garner which products resonate most with your user through unique customer data. However, these tried-and-true methods can create latency or layout shifts—getting in the way of dynamic UX. With Vercel as part of your composable stack, you can experiment without relying on third-party scripts or client-side Javascript that hinder personalized user experiences.  

> We can show the control or experiment version of a page immediately instead of using third-party scripts. This results in better performance and removes the likelihood of flickering/layout shifts.
> 
> ![](https://assets.vercel.com/image/upload/f_auto,c_fill,w_32,h_32,q_75/contentful/image/e5382hct74si/7zh3cZHdFbtL4iPnKHXyMa/048d1df759b4cd5b159ba05fc4d11fc1/sumup-square.png)
> 
> Software Engineer at SumUp

[

**Explore the Edge**

Learn more about A/B testing and feature flags with Vercel Edge Middleware.

Learn more

](https://vercel.com/features/edge-functions)

#### [Copy link to heading](#invest-in-ai)Invest in AI

Leading commerce brands are [taking advantage of AI](https://vercel.com/blog/deploying-ai-applications) to boost customer retention using chatbots or virtual assistants, invest in real-time analytics to better predict demand, and adopt AI-powered auto-suggest tools to present results based on search intent. And that’s just the start of what AI-adoption can unlock for digital storefronts. By adopting a headless architecture, companies can easily expand their backend to include the latest AI tools, so they can keep up with the changing landscape and beat the competition.

#### [Copy link to heading](#surpass-the-new-performance-standards)Surpass the new performance standards

An online store that loads in just one second achieves a conversion rate that’s [2.5x higher](https://www.portent.com/blog/analytics/research-site-speed-hurting-everyones-revenue.htm) than an ecommerce site that loads in 5 seconds. As such, companies aiming to create the most performant site possible often measure their site’s performance using [Google Core Web Vitals](https://vercel.com/blog/core-web-vitals).

Introduced in 2021, Core Web Vitals are an array of metrics that tell Google how fast, stable, and performant your site is. Key metrics measured include LCP, CLS, and TTFB. A headless architecture allows organizations to build performant tech stacks featuring managed frontends that often have built-in analytics capabilities. Using [Vercel Analytics](https://vercel.com/analytics), developers can track key performance metrics, pinpoint bottlenecks, and identify trends to prioritize what to improve and optimize for an ideal user experience.

#### [Copy link to heading](#create-content-at-scale)**Create content at scale**

As your organization begins to grow, content creation becomes more important. Blog authors, stylists, merchandisers, marketers, etc. will all have their own content they’ll want to create and publish. Rather than having them rely on developers to publish content or make frontend changes, empower them with self-service headless CMS solutions. Contentful, Storyblok, and Sanity are a few solutions that, when paired with Vercel, ecommerce stores can count on.

When it comes to the content that requires a developer’s help to create, like new landing pages, [Vercel’s Deployment Previews](https://vercel.com/features/previews) can make a major impact on collaboration. Instead of sharing screenshots or dealing with a complex staging process, stakeholders can see a live preview of pages. You can even test changes within the browser and run automated tests for performance and reliability with one click. 

### [Copy link to heading](#taking-the-next-step)**Taking the next step**

By decoupling the frontend and backend, teams across your organization can be more independent, collaborate better, and create content quicker. To learn more about how you can create fast ecommerce sites at scale:

-   [Download our ecommerce ebook](https://vercel.com/try/ebook-ecomm) for ways to improve your storefront and bottom line 
    
-   [Read the guide](https://vercel.com/blog/using-the-latest-next-js-12-3-features-on-vercel) on how to use Deploy Hooks with Vercel and a headless CMS
    
-   Learn how to [use Headless WordPress](https://vercel.com/guides/wordpress-with-vercel) with Next.js and Vercel

---
