What Is Jamstack?
What Jamstack means and how it is built
Jamstack is a web architecture in which pages are built ahead of time as static files, while dynamic features are added with JavaScript and reusable APIs. The name stands for JavaScript, APIs and Markup, the three building blocks of a Jamstack site.
The idea is to move work from the server, which runs for every visit, to a build step, which runs once per change. A static site generator creates the pages, content is pulled from a headless CMS or other sources, and the finished files are published to a content delivery network (CDN) for fast delivery.
How the Jamstack workflow fits together
A typical Jamstack site has four parts. The content lives in a CMS or in files. A build tool, often a static site generator, combines that content with templates. The output is deployed to a host or CDN. Interactive features, such as search, forms or a shopping cart, run in the browser or call a third-party API.
When an editor publishes a change, the CMS can notify the build system, usually through a webhook, an automatic message sent between systems when an event occurs. That starts a new build, and visitors then receive updated files. Jamstack sites are often described as decoupled, because content, build and delivery are separate systems.
Benefits and trade-offs of the Jamstack approach
Pre-built pages load quickly, and there is no application server or database to attack on the public site. A CDN can serve many visitors without extra server capacity, which makes these sites simple to scale.
The approach has costs. Large sites can have long build times, and each content change may trigger a rebuild. Real-time content and personalization need client-side code or API calls. Unlike a flat-file CMS, which still assembles pages on the server, a Jamstack site needs a build pipeline. Relying on several third-party services also means managing more accounts and dependencies.
Example: a company blog on a Jamstack stack
A software company keeps its blog in a headless CMS, so the marketing team can write posts without developers. Each published post triggers a build that generates the blog pages as static HTML. Comments are handled by a third-party service, and the search box calls a search API from the browser.
Visitors get fast pages from a CDN, while the marketing team keeps a familiar editing experience. Developers manage the build pipeline and the external services, which is the main extra work this approach adds.
Frequently asked questions
Is Jamstack only for static websites?
Not entirely. The pages are static, but the site can include dynamic features through JavaScript in the browser and calls to external APIs. Many Jamstack sites handle forms, shopping carts and logins this way. The static part refers to how pages are built and delivered, not to a lack of interactivity.
Do I need a headless CMS to use Jamstack?
No. Content can be stored as Markdown files in a Git repository, which many developers prefer for technical documentation. A headless CMS is common when non-technical editors need a web interface. The right choice depends on who writes the content and how often it changes.